You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cxf.apache.org by se...@apache.org on 2014/10/22 20:34:44 UTC
git commit: Minor optimization to JwsJsonConsumer
Repository: cxf
Updated Branches:
refs/heads/master 29789aac5 -> 5e2b1fa9d
Minor optimization to JwsJsonConsumer
Project: http://git-wip-us.apache.org/repos/asf/cxf/repo
Commit: http://git-wip-us.apache.org/repos/asf/cxf/commit/5e2b1fa9
Tree: http://git-wip-us.apache.org/repos/asf/cxf/tree/5e2b1fa9
Diff: http://git-wip-us.apache.org/repos/asf/cxf/diff/5e2b1fa9
Branch: refs/heads/master
Commit: 5e2b1fa9d60ca00133a0f49a9ee3935793bc7c24
Parents: 29789aa
Author: Sergey Beryozkin <sb...@talend.com>
Authored: Wed Oct 22 19:34:24 2014 +0100
Committer: Sergey Beryozkin <sb...@talend.com>
Committed: Wed Oct 22 19:34:24 2014 +0100
----------------------------------------------------------------------
.../rs/security/jose/jws/JwsJsonConsumer.java | 24 +++++++++++++-------
1 file changed, 16 insertions(+), 8 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cxf/blob/5e2b1fa9/rt/rs/security/jose/src/main/java/org/apache/cxf/rs/security/jose/jws/JwsJsonConsumer.java
----------------------------------------------------------------------
diff --git a/rt/rs/security/jose/src/main/java/org/apache/cxf/rs/security/jose/jws/JwsJsonConsumer.java b/rt/rs/security/jose/src/main/java/org/apache/cxf/rs/security/jose/jws/JwsJsonConsumer.java
index b44ecc8..b1d2663 100644
--- a/rt/rs/security/jose/src/main/java/org/apache/cxf/rs/security/jose/jws/JwsJsonConsumer.java
+++ b/rt/rs/security/jose/src/main/java/org/apache/cxf/rs/security/jose/jws/JwsJsonConsumer.java
@@ -94,9 +94,13 @@ public class JwsJsonConsumer {
return JwsUtils.getJwsJsonSignatureMap(signatureEntries);
}
public boolean verifySignatureWith(JwsSignatureVerifier validator) {
- for (JwsJsonSignatureEntry signatureEntry : signatureEntries) {
- if (signatureEntry.verifySignatureWith(validator)) {
- return true;
+ List<JwsJsonSignatureEntry> theSignatureEntries =
+ getSignatureEntryMap().get(validator.getAlgorithm());
+ if (theSignatureEntries != null) {
+ for (JwsJsonSignatureEntry signatureEntry : theSignatureEntries) {
+ if (signatureEntry.verifySignatureWith(validator)) {
+ return true;
+ }
}
}
return false;
@@ -117,11 +121,15 @@ public class JwsJsonConsumer {
List<JwsJsonSignatureEntry> validatedSignatures = new LinkedList<JwsJsonSignatureEntry>();
for (JwsSignatureVerifier validator : validators) {
boolean validated = false;
- for (JwsJsonSignatureEntry sigEntry : signatureEntries) {
- if (sigEntry.verifySignatureWith(validator)) {
- validatedSignatures.add(sigEntry);
- validated = true;
- break;
+ List<JwsJsonSignatureEntry> theSignatureEntries =
+ getSignatureEntryMap().get(validator.getAlgorithm());
+ if (theSignatureEntries != null) {
+ for (JwsJsonSignatureEntry sigEntry : theSignatureEntries) {
+ if (sigEntry.verifySignatureWith(validator)) {
+ validatedSignatures.add(sigEntry);
+ validated = true;
+ break;
+ }
}
}
if (!validated) {