[java-opensaml] branch master updated: IDP-1047 Add @Parameter annotations as indicated by the logging
Rod Widdowson
rdw at steadingsoftware.com
Tue May 8 10:51:06 EDT 2018
This is an automated email from the git hooks/post-receive script.
rdw pushed a commit to branch master
in repository java-opensaml.
View the commit online:
http://git.shibboleth.net/view/?p=java-opensaml.git;a=commit;h=6882a7db161ad362a2425070e363eb7852e6d5d9
The following commit(s) were added to refs/heads/master by this push:
new 6882a7d IDP-1047 Add @Parameter annotations as indicated by the logging
6882a7d is described below
commit 6882a7db161ad362a2425070e363eb7852e6d5d9
Author: Rod Widdowson <rdw at steadingsoftware.com>
AuthorDate: Tue May 8 15:50:35 2018 +0100
IDP-1047 Add @Parameter annotations as indicated by the logging
https://issues.shibboleth.net/jira/browse/IDP-1047
---
.../context/navigate/ChildContextLookup.java | 10 +++---
.../messaging/context/navigate/MessageLookup.java | 7 ++--
.../RecursiveTypedParentContextLookup.java | 8 +++--
.../profile/logic/EntityAttributesPredicate.java | 41 +++++++++++++---------
.../profile/logic/EntityGroupNamePredicate.java | 22 ++++++------
.../common/profile/logic/EntityIdPredicate.java | 11 +++---
.../logic/RegistrationAuthorityPredicate.java | 11 +++---
.../profile/logic/RegistrationPolicyPredicate.java | 13 +++----
.../resolver/filter/impl/EntityRoleFilter.java | 11 +++---
.../filter/impl/SchemaValidationFilter.java | 24 ++++++-------
.../filter/impl/SignatureValidationFilter.java | 15 ++++----
.../impl/PredicateRoleDescriptorResolver.java | 24 +++++++------
.../impl/ResourceBackedMetadataResolver.java | 12 ++++---
.../security/x509/BasicX509Credential.java | 22 +++++++++---
.../credential/impl/StaticCredentialResolver.java | 6 ++--
.../security/trust/impl/ChainingTrustEngine.java | 16 +++++----
.../trust/impl/ExplicitKeyTrustEngine.java | 13 ++++---
.../impl/ExplicitX509CertificateTrustEngine.java | 14 +++++---
.../x509/impl/BasicPKIXValidationInformation.java | 8 +++--
.../x509/impl/CertPathPKIXTrustEvaluator.java | 10 ++++--
.../x509/impl/KeyStoreX509CredentialAdapter.java | 20 ++++++++---
.../x509/impl/PKIXX509CredentialTrustEngine.java | 26 ++++++++------
.../StaticPKIXValidationInformationResolver.java | 22 ++++++++----
.../impl/X509KeyManagerX509CredentialAdapter.java | 18 +++++++---
.../support/ChainingEncryptedKeyResolver.java | 25 +++++++------
.../BasicProviderKeyInfoCredentialResolver.java | 11 +++---
.../impl/ChainingKeyInfoCredentialResolver.java | 5 ++-
.../impl/CollectionKeyInfoCredentialResolver.java | 5 ++-
.../keyinfo/impl/KeyInfoCredentialContext.java | 4 ++-
.../keyinfo/impl/KeyInfoResolutionContext.java | 10 +++---
.../impl/LocalKeyInfoCredentialResolver.java | 15 ++++----
.../impl/StaticKeyInfoCredentialResolver.java | 8 +++--
.../keyinfo/impl/StaticKeyInfoGenerator.java | 8 +++--
33 files changed, 295 insertions(+), 180 deletions(-)
diff --git a/opensaml-messaging-api/src/main/java/org/opensaml/messaging/context/navigate/ChildContextLookup.java b/opensaml-messaging-api/src/main/java/org/opensaml/messaging/context/navigate/ChildContextLookup.java
index e1255cf..7e191d2 100644
--- a/opensaml-messaging-api/src/main/java/org/opensaml/messaging/context/navigate/ChildContextLookup.java
+++ b/opensaml-messaging-api/src/main/java/org/opensaml/messaging/context/navigate/ChildContextLookup.java
@@ -20,10 +20,11 @@ package org.opensaml.messaging.context.navigate;
import javax.annotation.Nonnull;
import javax.annotation.Nullable;
-import net.shibboleth.utilities.java.support.logic.Constraint;
-
import org.opensaml.messaging.context.BaseContext;
+import net.shibboleth.utilities.java.support.annotation.ParameterName;
+import net.shibboleth.utilities.java.support.logic.Constraint;
+
/**
* A {@link ContextDataLookupFunction} that gets the child context of a given parent context.
*
@@ -47,7 +48,7 @@ public class ChildContextLookup<ParentContext extends BaseContext, ChildContext
*
* @param type child context type to look up
*/
- public ChildContextLookup(@Nonnull final Class<ChildContext> type) {
+ public ChildContextLookup(@Nonnull @ParameterName(name="type") final Class<ChildContext> type) {
childType = Constraint.isNotNull(type, "Child context type cannot be null");
autocreate = false;
}
@@ -58,7 +59,8 @@ public class ChildContextLookup<ParentContext extends BaseContext, ChildContext
* @param type child context type to look up
* @param createContext whether to create the child context if it does not exist
*/
- public ChildContextLookup(@Nonnull final Class<ChildContext> type, final boolean createContext) {
+ public ChildContextLookup(@Nonnull @ParameterName(name="type") final Class<ChildContext> type,
+ @ParameterName(name="createContext") final boolean createContext) {
childType = Constraint.isNotNull(type, "Child context type cannot be null");
autocreate = createContext;
}
diff --git a/opensaml-messaging-api/src/main/java/org/opensaml/messaging/context/navigate/MessageLookup.java b/opensaml-messaging-api/src/main/java/org/opensaml/messaging/context/navigate/MessageLookup.java
index f092e75..a4fbc74 100644
--- a/opensaml-messaging-api/src/main/java/org/opensaml/messaging/context/navigate/MessageLookup.java
+++ b/opensaml-messaging-api/src/main/java/org/opensaml/messaging/context/navigate/MessageLookup.java
@@ -20,10 +20,11 @@ package org.opensaml.messaging.context.navigate;
import javax.annotation.Nonnull;
import javax.annotation.Nullable;
-import net.shibboleth.utilities.java.support.logic.Constraint;
-
import org.opensaml.messaging.context.MessageContext;
+import net.shibboleth.utilities.java.support.annotation.ParameterName;
+import net.shibboleth.utilities.java.support.logic.Constraint;
+
/**
* A {@link ContextDataLookupFunction} that returns the message from a {@link MessageContext}.
*
@@ -39,7 +40,7 @@ public class MessageLookup<T> implements ContextDataLookupFunction<MessageContex
*
* @param type message type to look up
*/
- public MessageLookup(@Nonnull final Class<T> type) {
+ public MessageLookup(@Nonnull @ParameterName(name="type") final Class<T> type) {
messageType = Constraint.isNotNull(type, "Message type cannot be null");
}
diff --git a/opensaml-messaging-api/src/main/java/org/opensaml/messaging/context/navigate/RecursiveTypedParentContextLookup.java b/opensaml-messaging-api/src/main/java/org/opensaml/messaging/context/navigate/RecursiveTypedParentContextLookup.java
index 8030846..89cc56e 100644
--- a/opensaml-messaging-api/src/main/java/org/opensaml/messaging/context/navigate/RecursiveTypedParentContextLookup.java
+++ b/opensaml-messaging-api/src/main/java/org/opensaml/messaging/context/navigate/RecursiveTypedParentContextLookup.java
@@ -20,10 +20,11 @@ package org.opensaml.messaging.context.navigate;
import javax.annotation.Nonnull;
import javax.annotation.Nullable;
-import net.shibboleth.utilities.java.support.logic.Constraint;
-
import org.opensaml.messaging.context.BaseContext;
+import net.shibboleth.utilities.java.support.annotation.ParameterName;
+import net.shibboleth.utilities.java.support.logic.Constraint;
+
/**
* A {@link ContextDataLookupFunction} that recurses up the parent chain of the input via
* {@link BaseContext#getParent()}, and returns the first parent context that is an instance
@@ -43,7 +44,8 @@ public class RecursiveTypedParentContextLookup<StartContext extends BaseContext,
*
* @param targetClass the target parent class
*/
- public RecursiveTypedParentContextLookup(@Nonnull final Class<ParentContext> targetClass) {
+ public RecursiveTypedParentContextLookup(
+ @Nonnull @ParameterName(name="targetClass") final Class<ParentContext> targetClass) {
parentClass = Constraint.isNotNull(targetClass, "Parent Class may not be null");
}
diff --git a/opensaml-saml-api/src/main/java/org/opensaml/saml/common/profile/logic/EntityAttributesPredicate.java b/opensaml-saml-api/src/main/java/org/opensaml/saml/common/profile/logic/EntityAttributesPredicate.java
index a6758b4..56dec4d 100644
--- a/opensaml-saml-api/src/main/java/org/opensaml/saml/common/profile/logic/EntityAttributesPredicate.java
+++ b/opensaml-saml-api/src/main/java/org/opensaml/saml/common/profile/logic/EntityAttributesPredicate.java
@@ -26,20 +26,8 @@ import java.util.regex.Pattern;
import javax.annotation.Nonnull;
import javax.annotation.Nullable;
-import net.shibboleth.utilities.java.support.annotation.constraint.NonnullElements;
-import net.shibboleth.utilities.java.support.annotation.constraint.NotEmpty;
-import net.shibboleth.utilities.java.support.annotation.constraint.NotLive;
-import net.shibboleth.utilities.java.support.annotation.constraint.Unmodifiable;
-import net.shibboleth.utilities.java.support.logic.Constraint;
-import net.shibboleth.utilities.java.support.primitive.StringSupport;
-
import org.joda.time.DateTime;
import org.opensaml.core.xml.XMLObject;
-import org.opensaml.saml.ext.saml2mdattr.EntityAttributes;
-import org.opensaml.saml.saml2.core.Attribute;
-import org.opensaml.saml.saml2.metadata.EntitiesDescriptor;
-import org.opensaml.saml.saml2.metadata.EntityDescriptor;
-import org.opensaml.saml.saml2.metadata.Extensions;
import org.opensaml.core.xml.schema.XSAny;
import org.opensaml.core.xml.schema.XSBase64Binary;
import org.opensaml.core.xml.schema.XSBoolean;
@@ -47,6 +35,11 @@ import org.opensaml.core.xml.schema.XSDateTime;
import org.opensaml.core.xml.schema.XSInteger;
import org.opensaml.core.xml.schema.XSString;
import org.opensaml.core.xml.schema.XSURI;
+import org.opensaml.saml.ext.saml2mdattr.EntityAttributes;
+import org.opensaml.saml.saml2.core.Attribute;
+import org.opensaml.saml.saml2.metadata.EntitiesDescriptor;
+import org.opensaml.saml.saml2.metadata.EntityDescriptor;
+import org.opensaml.saml.saml2.metadata.Extensions;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -56,6 +49,14 @@ import com.google.common.collect.Collections2;
import com.google.common.collect.ImmutableList;
import com.google.common.collect.Iterables;
+import net.shibboleth.utilities.java.support.annotation.ParameterName;
+import net.shibboleth.utilities.java.support.annotation.constraint.NonnullElements;
+import net.shibboleth.utilities.java.support.annotation.constraint.NotEmpty;
+import net.shibboleth.utilities.java.support.annotation.constraint.NotLive;
+import net.shibboleth.utilities.java.support.annotation.constraint.Unmodifiable;
+import net.shibboleth.utilities.java.support.logic.Constraint;
+import net.shibboleth.utilities.java.support.primitive.StringSupport;
+
/**
* Predicate to determine whether an {@link EntityDescriptor} or its parent groups contain an {@link EntityAttributes}
* extension {@link Attribute} that matches the predicate's criteria.
@@ -79,7 +80,8 @@ public class EntityAttributesPredicate implements Predicate<EntityDescriptor> {
*
* @param candidates the {@link Candidate} criteria to check for
*/
- public EntityAttributesPredicate(@Nonnull @NonnullElements final Collection<Candidate> candidates) {
+ public EntityAttributesPredicate(
+ @Nonnull @NonnullElements @ParameterName(name="candidates") final Collection<Candidate> candidates) {
Constraint.isNotNull(candidates, "Attribute collection cannot be null");
@@ -95,8 +97,9 @@ public class EntityAttributesPredicate implements Predicate<EntityDescriptor> {
* @param candidates the {@link Candidate} criteria to check for
* @param trim true iff the values found in the metadata should be trimmed before comparison
*/
- public EntityAttributesPredicate(@Nonnull @NonnullElements final Collection<Candidate> candidates,
- final boolean trim) {
+ public EntityAttributesPredicate(
+ @Nonnull @NonnullElements @ParameterName(name="candidates") final Collection<Candidate> candidates,
+ @ParameterName(name="trim") final boolean trim) {
Constraint.isNotNull(candidates, "Attribute collection cannot be null");
@@ -113,8 +116,10 @@ public class EntityAttributesPredicate implements Predicate<EntityDescriptor> {
* @param trim true iff the values found in the metadata should be trimmed before comparison
* @param all true iff all the criteria must match to be a successful test
*/
- public EntityAttributesPredicate(@Nonnull @NonnullElements final Collection<Candidate> candidates,
- final boolean trim, final boolean all) {
+ public EntityAttributesPredicate(
+ @Nonnull @NonnullElements @ParameterName(name="candidates") final Collection<Candidate> candidates,
+ @ParameterName(name="trim") final boolean trim,
+ @ParameterName(name="all") final boolean all) {
Constraint.isNotNull(candidates, "Attribute collection cannot be null");
@@ -144,6 +149,7 @@ public class EntityAttributesPredicate implements Predicate<EntityDescriptor> {
// Checkstyle: CyclomaticComplexity OFF
/** {@inheritDoc} */
+ @Override
public boolean apply(@Nullable final EntityDescriptor input) {
if (input == null) {
return false;
@@ -330,6 +336,7 @@ public class EntityAttributesPredicate implements Predicate<EntityDescriptor> {
}
/** {@inheritDoc} */
+ @Override
public boolean apply(@Nonnull final Candidate input) {
final List<String> tagvals = input.values;
final List<Pattern> tagexps = input.regexps;
diff --git a/opensaml-saml-api/src/main/java/org/opensaml/saml/common/profile/logic/EntityGroupNamePredicate.java b/opensaml-saml-api/src/main/java/org/opensaml/saml/common/profile/logic/EntityGroupNamePredicate.java
index e645172..e36da22 100644
--- a/opensaml-saml-api/src/main/java/org/opensaml/saml/common/profile/logic/EntityGroupNamePredicate.java
+++ b/opensaml-saml-api/src/main/java/org/opensaml/saml/common/profile/logic/EntityGroupNamePredicate.java
@@ -25,13 +25,6 @@ import java.util.Set;
import javax.annotation.Nonnull;
import javax.annotation.Nullable;
-import net.shibboleth.utilities.java.support.annotation.constraint.NonnullElements;
-import net.shibboleth.utilities.java.support.annotation.constraint.NotLive;
-import net.shibboleth.utilities.java.support.annotation.constraint.Unmodifiable;
-import net.shibboleth.utilities.java.support.primitive.StringSupport;
-import net.shibboleth.utilities.java.support.resolver.CriteriaSet;
-import net.shibboleth.utilities.java.support.resolver.ResolverException;
-
import org.opensaml.core.criterion.EntityIdCriterion;
import org.opensaml.saml.metadata.EntityGroupName;
import org.opensaml.saml.metadata.resolver.MetadataResolver;
@@ -44,6 +37,14 @@ import org.slf4j.LoggerFactory;
import com.google.common.base.Predicate;
import com.google.common.collect.ImmutableSet;
+import net.shibboleth.utilities.java.support.annotation.ParameterName;
+import net.shibboleth.utilities.java.support.annotation.constraint.NonnullElements;
+import net.shibboleth.utilities.java.support.annotation.constraint.NotLive;
+import net.shibboleth.utilities.java.support.annotation.constraint.Unmodifiable;
+import net.shibboleth.utilities.java.support.primitive.StringSupport;
+import net.shibboleth.utilities.java.support.resolver.CriteriaSet;
+import net.shibboleth.utilities.java.support.resolver.ResolverException;
+
/**
* Predicate to determine whether one of a set of names matches any of an entity's containing
* {@link org.opensaml.saml.saml2.metadata.EntitiesDescriptor} groups.
@@ -67,7 +68,7 @@ public class EntityGroupNamePredicate implements Predicate<EntityDescriptor> {
*
* @param names the group names to test for
*/
- public EntityGroupNamePredicate(@Nullable final Collection<String> names) {
+ public EntityGroupNamePredicate(@Nullable @ParameterName(name="names") final Collection<String> names) {
this(names, null);
}
@@ -79,8 +80,8 @@ public class EntityGroupNamePredicate implements Predicate<EntityDescriptor> {
*
* @since 3.4.0
*/
- public EntityGroupNamePredicate(@Nullable final Collection<String> names,
- @Nullable final MetadataResolver resolver) {
+ public EntityGroupNamePredicate(@Nullable @ParameterName(name="names") final Collection<String> names,
+ @Nullable @ParameterName(name="resolver") final MetadataResolver resolver) {
groupNames = new HashSet<>(StringSupport.normalizeStringCollection(names));
@@ -104,6 +105,7 @@ public class EntityGroupNamePredicate implements Predicate<EntityDescriptor> {
// Checkstyle: CyclomaticComplexity OFF
/** {@inheritDoc} */
+ @Override
public boolean apply(@Nullable final EntityDescriptor input) {
if (input == null) {
diff --git a/opensaml-saml-api/src/main/java/org/opensaml/saml/common/profile/logic/EntityIdPredicate.java b/opensaml-saml-api/src/main/java/org/opensaml/saml/common/profile/logic/EntityIdPredicate.java
index 09a4637..6ee9def 100644
--- a/opensaml-saml-api/src/main/java/org/opensaml/saml/common/profile/logic/EntityIdPredicate.java
+++ b/opensaml-saml-api/src/main/java/org/opensaml/saml/common/profile/logic/EntityIdPredicate.java
@@ -26,14 +26,15 @@ import javax.annotation.Nullable;
import org.opensaml.saml.saml2.metadata.EntityDescriptor;
+import com.google.common.base.Predicate;
+import com.google.common.collect.ImmutableSet;
+
+import net.shibboleth.utilities.java.support.annotation.ParameterName;
import net.shibboleth.utilities.java.support.annotation.constraint.NonnullElements;
import net.shibboleth.utilities.java.support.annotation.constraint.NotLive;
import net.shibboleth.utilities.java.support.annotation.constraint.Unmodifiable;
import net.shibboleth.utilities.java.support.primitive.StringSupport;
-import com.google.common.base.Predicate;
-import com.google.common.collect.ImmutableSet;
-
/**
* Predicate that matches an {@link EntityDescriptor} against a set of entityIDs.
*/
@@ -47,7 +48,7 @@ public class EntityIdPredicate implements Predicate<EntityDescriptor> {
*
* @param ids the entityIDs to check for
*/
- public EntityIdPredicate(@Nullable final Collection<String> ids) {
+ public EntityIdPredicate(@Nullable @ParameterName(name="ids") final Collection<String> ids) {
entityIds = new HashSet<>(StringSupport.normalizeStringCollection(ids));
}
@@ -61,7 +62,7 @@ public class EntityIdPredicate implements Predicate<EntityDescriptor> {
}
/** {@inheritDoc} */
- public boolean apply(@Nullable final EntityDescriptor input) {
+ @Override public boolean apply(@Nullable final EntityDescriptor input) {
if (input == null || input.getEntityID() == null) {
return false;
diff --git a/opensaml-saml-api/src/main/java/org/opensaml/saml/common/profile/logic/RegistrationAuthorityPredicate.java b/opensaml-saml-api/src/main/java/org/opensaml/saml/common/profile/logic/RegistrationAuthorityPredicate.java
index 264c59b..961c61e 100644
--- a/opensaml-saml-api/src/main/java/org/opensaml/saml/common/profile/logic/RegistrationAuthorityPredicate.java
+++ b/opensaml-saml-api/src/main/java/org/opensaml/saml/common/profile/logic/RegistrationAuthorityPredicate.java
@@ -24,15 +24,16 @@ import java.util.Set;
import javax.annotation.Nonnull;
import javax.annotation.Nullable;
+import org.opensaml.saml.ext.saml2mdrpi.RegistrationInfo;
+
+import com.google.common.collect.ImmutableSet;
+
+import net.shibboleth.utilities.java.support.annotation.ParameterName;
import net.shibboleth.utilities.java.support.annotation.constraint.NonnullElements;
import net.shibboleth.utilities.java.support.annotation.constraint.NotLive;
import net.shibboleth.utilities.java.support.annotation.constraint.Unmodifiable;
import net.shibboleth.utilities.java.support.primitive.StringSupport;
-import org.opensaml.saml.ext.saml2mdrpi.RegistrationInfo;
-
-import com.google.common.collect.ImmutableSet;
-
/**
* Predicate to determine whether one of a set of names matches an entity's
* {@link RegistrationInfo#getRegistrationAuthority()}.
@@ -47,7 +48,7 @@ public class RegistrationAuthorityPredicate extends AbstractRegistrationInfoPre
*
* @param names the authority names to test for
*/
- public RegistrationAuthorityPredicate(@Nullable final Collection<String> names) {
+ public RegistrationAuthorityPredicate(@Nullable at ParameterName(name="names") final Collection<String> names) {
authorities = new HashSet<>(StringSupport.normalizeStringCollection(names));
}
diff --git a/opensaml-saml-api/src/main/java/org/opensaml/saml/common/profile/logic/RegistrationPolicyPredicate.java b/opensaml-saml-api/src/main/java/org/opensaml/saml/common/profile/logic/RegistrationPolicyPredicate.java
index 6fdd3df..6648c41 100644
--- a/opensaml-saml-api/src/main/java/org/opensaml/saml/common/profile/logic/RegistrationPolicyPredicate.java
+++ b/opensaml-saml-api/src/main/java/org/opensaml/saml/common/profile/logic/RegistrationPolicyPredicate.java
@@ -24,16 +24,17 @@ import java.util.Set;
import javax.annotation.Nonnull;
import javax.annotation.Nullable;
-import net.shibboleth.utilities.java.support.annotation.constraint.NonnullElements;
-import net.shibboleth.utilities.java.support.annotation.constraint.NotLive;
-import net.shibboleth.utilities.java.support.annotation.constraint.Unmodifiable;
-import net.shibboleth.utilities.java.support.primitive.StringSupport;
-
import org.opensaml.saml.ext.saml2mdrpi.RegistrationInfo;
import org.opensaml.saml.ext.saml2mdrpi.RegistrationPolicy;
import com.google.common.collect.ImmutableSet;
+import net.shibboleth.utilities.java.support.annotation.ParameterName;
+import net.shibboleth.utilities.java.support.annotation.constraint.NonnullElements;
+import net.shibboleth.utilities.java.support.annotation.constraint.NotLive;
+import net.shibboleth.utilities.java.support.annotation.constraint.Unmodifiable;
+import net.shibboleth.utilities.java.support.primitive.StringSupport;
+
/**
* Predicate to determine whether one of a set of names matches an entity's
* {@link RegistrationPolicy}.
@@ -48,7 +49,7 @@ public class RegistrationPolicyPredicate extends AbstractRegistrationInfoPredic
*
* @param policies the policies to test for
*/
- public RegistrationPolicyPredicate(@Nullable final Collection<String> policies) {
+ public RegistrationPolicyPredicate(@Nullable @ParameterName(name="policies") final Collection<String> policies) {
policySet = new HashSet<>(StringSupport.normalizeStringCollection(policies));
}
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/filter/impl/EntityRoleFilter.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/filter/impl/EntityRoleFilter.java
index 122492c..72d6da3 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/filter/impl/EntityRoleFilter.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/filter/impl/EntityRoleFilter.java
@@ -26,10 +26,6 @@ import javax.annotation.Nonnull;
import javax.annotation.Nullable;
import javax.xml.namespace.QName;
-import net.shibboleth.utilities.java.support.annotation.constraint.NonnullElements;
-import net.shibboleth.utilities.java.support.annotation.constraint.NotLive;
-import net.shibboleth.utilities.java.support.annotation.constraint.Unmodifiable;
-
import org.opensaml.core.xml.XMLObject;
import org.opensaml.saml.common.xml.SAMLConstants;
import org.opensaml.saml.metadata.resolver.filter.FilterException;
@@ -40,6 +36,11 @@ import org.opensaml.saml.saml2.metadata.RoleDescriptor;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
+import net.shibboleth.utilities.java.support.annotation.ParameterName;
+import net.shibboleth.utilities.java.support.annotation.constraint.NonnullElements;
+import net.shibboleth.utilities.java.support.annotation.constraint.NotLive;
+import net.shibboleth.utilities.java.support.annotation.constraint.Unmodifiable;
+
/**
* A filter that removes roles from an entity descriptor. For those roles specified within the SAML metadata
* specification the role element QName is used to identify the role. For other roles, those that appear as
@@ -75,7 +76,7 @@ public class EntityRoleFilter implements MetadataFilter {
*
* @param keptRoles list of roles NOT removed by this filter
*/
- public EntityRoleFilter(@Nullable final List<QName> keptRoles) {
+ public EntityRoleFilter(@Nullable @ParameterName(name="keptRoles") final List<QName> keptRoles) {
roleWhiteList = new ArrayList<>();
if (keptRoles != null) {
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/filter/impl/SchemaValidationFilter.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/filter/impl/SchemaValidationFilter.java
index cd8c916..323c543 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/filter/impl/SchemaValidationFilter.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/filter/impl/SchemaValidationFilter.java
@@ -24,14 +24,6 @@ import javax.annotation.Nullable;
import javax.xml.transform.dom.DOMSource;
import javax.xml.validation.Validator;
-import net.shibboleth.utilities.java.support.annotation.constraint.NonnullElements;
-import net.shibboleth.utilities.java.support.logic.Constraint;
-import net.shibboleth.utilities.java.support.primitive.DeprecationSupport;
-import net.shibboleth.utilities.java.support.primitive.DeprecationSupport.ObjectType;
-import net.shibboleth.utilities.java.support.primitive.StringSupport;
-import net.shibboleth.utilities.java.support.xml.ClasspathResolver;
-import net.shibboleth.utilities.java.support.xml.SchemaBuilder;
-
import org.opensaml.core.xml.XMLObject;
import org.opensaml.saml.common.xml.SAMLSchemaBuilder;
import org.opensaml.saml.metadata.resolver.filter.FilterException;
@@ -40,6 +32,15 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.xml.sax.SAXException;
+import net.shibboleth.utilities.java.support.annotation.ParameterName;
+import net.shibboleth.utilities.java.support.annotation.constraint.NonnullElements;
+import net.shibboleth.utilities.java.support.logic.Constraint;
+import net.shibboleth.utilities.java.support.primitive.DeprecationSupport;
+import net.shibboleth.utilities.java.support.primitive.DeprecationSupport.ObjectType;
+import net.shibboleth.utilities.java.support.primitive.StringSupport;
+import net.shibboleth.utilities.java.support.xml.ClasspathResolver;
+import net.shibboleth.utilities.java.support.xml.SchemaBuilder;
+
/**
* A metadata filter that schema validates an incoming metadata file.
*/
@@ -59,7 +60,7 @@ public class SchemaValidationFilter implements MetadataFilter {
*
* @param builder SAML schema source to use
*/
- public SchemaValidationFilter(@Nonnull final SAMLSchemaBuilder builder) {
+ public SchemaValidationFilter(@Nonnull @ParameterName(name="builder") final SAMLSchemaBuilder builder) {
this(builder, null);
}
@@ -77,9 +78,8 @@ public class SchemaValidationFilter implements MetadataFilter {
* @param builder SAML schema source to use
* @param extensionSchemas classpath-based location of metadata extension schemas
*/
- @Deprecated
- public SchemaValidationFilter(@Nonnull final SAMLSchemaBuilder builder,
- @Nullable @NonnullElements final String[] extensionSchemas) {
+ @Deprecated public SchemaValidationFilter(@Nonnull @ParameterName(name="builder") final SAMLSchemaBuilder builder,
+ @Nullable @NonnullElements @ParameterName(name="extensionSchemas") final String[] extensionSchemas) {
samlSchemaBuilder = Constraint.isNotNull(builder, "SAMLSchemaBuilder cannot be null");
if (extensionSchemas != null) {
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/filter/impl/SignatureValidationFilter.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/filter/impl/SignatureValidationFilter.java
index 937c838..2b893e4 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/filter/impl/SignatureValidationFilter.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/filter/impl/SignatureValidationFilter.java
@@ -24,12 +24,6 @@ import java.util.Set;
import javax.annotation.Nonnull;
import javax.annotation.Nullable;
-import net.shibboleth.utilities.java.support.annotation.constraint.NotEmpty;
-import net.shibboleth.utilities.java.support.logic.Constraint;
-import net.shibboleth.utilities.java.support.primitive.DeprecationSupport;
-import net.shibboleth.utilities.java.support.primitive.DeprecationSupport.ObjectType;
-import net.shibboleth.utilities.java.support.resolver.CriteriaSet;
-
import org.opensaml.core.xml.XMLObject;
import org.opensaml.saml.metadata.resolver.filter.FilterException;
import org.opensaml.saml.metadata.resolver.filter.MetadataFilter;
@@ -52,6 +46,13 @@ import org.slf4j.LoggerFactory;
import com.google.common.base.Function;
+import net.shibboleth.utilities.java.support.annotation.ParameterName;
+import net.shibboleth.utilities.java.support.annotation.constraint.NotEmpty;
+import net.shibboleth.utilities.java.support.logic.Constraint;
+import net.shibboleth.utilities.java.support.primitive.DeprecationSupport;
+import net.shibboleth.utilities.java.support.primitive.DeprecationSupport.ObjectType;
+import net.shibboleth.utilities.java.support.resolver.CriteriaSet;
+
/**
* A metadata filter that validates XML signatures.
*/
@@ -88,7 +89,7 @@ public class SignatureValidationFilter implements MetadataFilter {
*
* @param engine the trust engine used to validate signatures on incoming metadata.
*/
- public SignatureValidationFilter(@Nonnull final SignatureTrustEngine engine) {
+ public SignatureValidationFilter(@Nonnull @ParameterName(name="engine") final SignatureTrustEngine engine) {
Constraint.isNotNull(engine, "SignatureTrustEngine cannot be null");
requireSignedRoot = true;
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/impl/PredicateRoleDescriptorResolver.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/impl/PredicateRoleDescriptorResolver.java
index 969841f..2873187 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/impl/PredicateRoleDescriptorResolver.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/impl/PredicateRoleDescriptorResolver.java
@@ -26,16 +26,6 @@ import java.util.UUID;
import javax.annotation.Nonnull;
import javax.annotation.Nullable;
-import net.shibboleth.utilities.java.support.annotation.constraint.NonnullAfterInit;
-import net.shibboleth.utilities.java.support.component.AbstractIdentifiedInitializableComponent;
-import net.shibboleth.utilities.java.support.component.ComponentInitializationException;
-import net.shibboleth.utilities.java.support.component.ComponentSupport;
-import net.shibboleth.utilities.java.support.logic.Constraint;
-import net.shibboleth.utilities.java.support.resolver.CriteriaSet;
-import net.shibboleth.utilities.java.support.resolver.CriterionPredicateRegistry;
-import net.shibboleth.utilities.java.support.resolver.ResolverException;
-import net.shibboleth.utilities.java.support.resolver.ResolverSupport;
-
import org.opensaml.core.criterion.SatisfyAnyCriterion;
import org.opensaml.core.xml.XMLObject;
import org.opensaml.saml.criterion.EntityRoleCriterion;
@@ -54,6 +44,17 @@ import com.google.common.base.Predicate;
import com.google.common.base.Predicates;
import com.google.common.collect.Iterables;
+import net.shibboleth.utilities.java.support.annotation.ParameterName;
+import net.shibboleth.utilities.java.support.annotation.constraint.NonnullAfterInit;
+import net.shibboleth.utilities.java.support.component.AbstractIdentifiedInitializableComponent;
+import net.shibboleth.utilities.java.support.component.ComponentInitializationException;
+import net.shibboleth.utilities.java.support.component.ComponentSupport;
+import net.shibboleth.utilities.java.support.logic.Constraint;
+import net.shibboleth.utilities.java.support.resolver.CriteriaSet;
+import net.shibboleth.utilities.java.support.resolver.CriterionPredicateRegistry;
+import net.shibboleth.utilities.java.support.resolver.ResolverException;
+import net.shibboleth.utilities.java.support.resolver.ResolverSupport;
+
/**
* Implementation of {@link RoleDescriptorResolver} which wraps an instance of {@link MetadataResolver} to
* support basic EntityDescriptor resolution, and then performs further role-related filtering over the
@@ -104,7 +105,8 @@ public class PredicateRoleDescriptorResolver extends AbstractIdentifiedInitializ
*
* @param mdResolver the resolver of EntityDescriptors
*/
- public PredicateRoleDescriptorResolver(@Nonnull final MetadataResolver mdResolver) {
+ public PredicateRoleDescriptorResolver(
+ @Nonnull @ParameterName(name="mdResolver") final MetadataResolver mdResolver) {
entityDescriptorResolver = Constraint.isNotNull(mdResolver, "Resolver for EntityDescriptors may not be null");
setId(UUID.randomUUID().toString());
requireValidMetadata = true;
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/impl/ResourceBackedMetadataResolver.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/impl/ResourceBackedMetadataResolver.java
index e9990b1..986f3fa 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/impl/ResourceBackedMetadataResolver.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/impl/ResourceBackedMetadataResolver.java
@@ -20,13 +20,14 @@ package org.opensaml.saml.metadata.resolver.impl;
import java.io.IOException;
import java.util.Timer;
-import net.shibboleth.utilities.java.support.resolver.ResolverException;
-import net.shibboleth.utilities.java.support.resource.Resource;
-
import org.joda.time.DateTime;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
+import net.shibboleth.utilities.java.support.annotation.ParameterName;
+import net.shibboleth.utilities.java.support.resolver.ResolverException;
+import net.shibboleth.utilities.java.support.resource.Resource;
+
/**
* A metadata provider that reads metadata from a {#link {@link Resource}.
*
@@ -48,7 +49,8 @@ public class ResourceBackedMetadataResolver extends AbstractReloadingMetadataRes
*
* @throws IOException thrown if there is a problem retrieving information about the resource
*/
- public ResourceBackedMetadataResolver(final Timer timer, final Resource resource) throws IOException {
+ public ResourceBackedMetadataResolver(@ParameterName(name="timer") final Timer timer,
+ @ParameterName(name="resource") final Resource resource) throws IOException {
super(timer);
if (!resource.exists()) {
@@ -64,7 +66,7 @@ public class ResourceBackedMetadataResolver extends AbstractReloadingMetadataRes
*
* @throws IOException thrown if there is a problem retrieving information about the resource
*/
- public ResourceBackedMetadataResolver(final Resource resource) throws IOException {
+ public ResourceBackedMetadataResolver(@ParameterName(name="resource") final Resource resource) throws IOException {
if (!resource.exists()) {
throw new IOException("Resource " + resource.getDescription() + " does not exist.");
diff --git a/opensaml-security-api/src/main/java/org/opensaml/security/x509/BasicX509Credential.java b/opensaml-security-api/src/main/java/org/opensaml/security/x509/BasicX509Credential.java
index 42c471b..510c702 100644
--- a/opensaml-security-api/src/main/java/org/opensaml/security/x509/BasicX509Credential.java
+++ b/opensaml-security-api/src/main/java/org/opensaml/security/x509/BasicX509Credential.java
@@ -28,12 +28,13 @@ import javax.annotation.Nonnull;
import javax.annotation.Nullable;
import javax.crypto.SecretKey;
-import net.shibboleth.utilities.java.support.collection.LazySet;
-import net.shibboleth.utilities.java.support.logic.Constraint;
-
import org.opensaml.security.credential.BasicCredential;
import org.opensaml.security.credential.Credential;
+import net.shibboleth.utilities.java.support.annotation.ParameterName;
+import net.shibboleth.utilities.java.support.collection.LazySet;
+import net.shibboleth.utilities.java.support.logic.Constraint;
+
/**
* A basic implementation of {@link X509Credential}.
*/
@@ -53,7 +54,8 @@ public class BasicX509Credential extends BasicCredential implements X509Credenti
*
* @param entityCertificate the credential entity certificate
*/
- public BasicX509Credential(@Nonnull final X509Certificate entityCertificate) {
+ public BasicX509Credential(
+ @Nonnull @ParameterName(name="entityCertificate") final X509Certificate entityCertificate) {
super();
setEntityCertificate(entityCertificate);
}
@@ -64,18 +66,22 @@ public class BasicX509Credential extends BasicCredential implements X509Credenti
* @param entityCertificate the credential entity certificate
* @param privateKey the credential private key
*/
- public BasicX509Credential(@Nonnull final X509Certificate entityCertificate, @Nonnull final PrivateKey privateKey) {
+ public BasicX509Credential(
+ @Nonnull @ParameterName(name="entityCertificate") final X509Certificate entityCertificate,
+ @ParameterName(name="privateKey") @Nonnull final PrivateKey privateKey) {
super();
setEntityCertificate(entityCertificate);
setPrivateKey(privateKey);
}
/** {@inheritDoc} */
+ @Override
@Nonnull public Class<? extends Credential> getCredentialType() {
return X509Credential.class;
}
/** {@inheritDoc} */
+ @Override
@Nullable public Collection<X509CRL> getCRLs() {
return crls;
}
@@ -90,6 +96,7 @@ public class BasicX509Credential extends BasicCredential implements X509Credenti
}
/** {@inheritDoc} */
+ @Override
@Nonnull public X509Certificate getEntityCertificate() {
return entityCert;
}
@@ -105,6 +112,7 @@ public class BasicX509Credential extends BasicCredential implements X509Credenti
}
/** {@inheritDoc} */
+ @Override
@Nonnull public PublicKey getPublicKey() {
return getEntityCertificate().getPublicKey();
}
@@ -115,11 +123,13 @@ public class BasicX509Credential extends BasicCredential implements X509Credenti
*
* @param newPublicKey not supported
*/
+ @Override
public void setPublicKey(final PublicKey newPublicKey) {
throw new UnsupportedOperationException("Public key may not be set explicitly on an X509 credential");
}
/** {@inheritDoc} */
+ @Override
@Nonnull public Collection<X509Certificate> getEntityCertificateChain() {
if (entityCertChain == null) {
final LazySet<X509Certificate> constructedChain = new LazySet<>();
@@ -147,6 +157,7 @@ public class BasicX509Credential extends BasicCredential implements X509Credenti
*
* @return null
*/
+ @Override
@Nullable public SecretKey getSecretKey() {
return null;
}
@@ -156,6 +167,7 @@ public class BasicX509Credential extends BasicCredential implements X509Credenti
*
* @param newSecretKey unsupported
*/
+ @Override
public void setSecretKey(final SecretKey newSecretKey) {
throw new UnsupportedOperationException("An X509Credential may not contain a secret key");
}
diff --git a/opensaml-security-impl/src/main/java/org/opensaml/security/credential/impl/StaticCredentialResolver.java b/opensaml-security-impl/src/main/java/org/opensaml/security/credential/impl/StaticCredentialResolver.java
index 6b76e23..46d8ce8 100644
--- a/opensaml-security-impl/src/main/java/org/opensaml/security/credential/impl/StaticCredentialResolver.java
+++ b/opensaml-security-impl/src/main/java/org/opensaml/security/credential/impl/StaticCredentialResolver.java
@@ -25,6 +25,7 @@ import javax.annotation.Nullable;
import org.opensaml.security.credential.Credential;
+import net.shibboleth.utilities.java.support.annotation.ParameterName;
import net.shibboleth.utilities.java.support.logic.Constraint;
import net.shibboleth.utilities.java.support.resolver.CriteriaSet;
import net.shibboleth.utilities.java.support.resolver.ResolverException;
@@ -49,7 +50,7 @@ public class StaticCredentialResolver extends AbstractCredentialResolver {
*
* @param credentials collection of credentials to be held by this resolver
*/
- public StaticCredentialResolver(@Nonnull final List<Credential> credentials) {
+ public StaticCredentialResolver(@Nonnull @ParameterName(name="credentials") final List<Credential> credentials) {
Constraint.isNotNull(credentials, "Input credentials list cannot be null");
creds = new ArrayList<>(credentials);
@@ -60,7 +61,7 @@ public class StaticCredentialResolver extends AbstractCredentialResolver {
*
* @param credential a single credential to be held by this resolver
*/
- public StaticCredentialResolver(@Nonnull final Credential credential) {
+ public StaticCredentialResolver(@Nonnull @ParameterName(name="credential") final Credential credential) {
Constraint.isNotNull(credential, "Input credential cannot be null");
creds = new ArrayList<>();
@@ -68,6 +69,7 @@ public class StaticCredentialResolver extends AbstractCredentialResolver {
}
/** {@inheritDoc} */
+ @Override
@Nonnull public Iterable<Credential> resolve(@Nullable final CriteriaSet criteria) throws ResolverException {
return creds;
}
diff --git a/opensaml-security-impl/src/main/java/org/opensaml/security/trust/impl/ChainingTrustEngine.java b/opensaml-security-impl/src/main/java/org/opensaml/security/trust/impl/ChainingTrustEngine.java
index c763e2e..ce0fa80 100644
--- a/opensaml-security-impl/src/main/java/org/opensaml/security/trust/impl/ChainingTrustEngine.java
+++ b/opensaml-security-impl/src/main/java/org/opensaml/security/trust/impl/ChainingTrustEngine.java
@@ -23,12 +23,6 @@ import java.util.List;
import javax.annotation.Nonnull;
import javax.annotation.Nullable;
-import net.shibboleth.utilities.java.support.annotation.constraint.NonnullElements;
-import net.shibboleth.utilities.java.support.annotation.constraint.NotLive;
-import net.shibboleth.utilities.java.support.annotation.constraint.Unmodifiable;
-import net.shibboleth.utilities.java.support.logic.Constraint;
-import net.shibboleth.utilities.java.support.resolver.CriteriaSet;
-
import org.opensaml.security.SecurityException;
import org.opensaml.security.trust.TrustEngine;
import org.slf4j.Logger;
@@ -38,6 +32,13 @@ import com.google.common.base.Predicates;
import com.google.common.collect.Collections2;
import com.google.common.collect.ImmutableList;
+import net.shibboleth.utilities.java.support.annotation.ParameterName;
+import net.shibboleth.utilities.java.support.annotation.constraint.NonnullElements;
+import net.shibboleth.utilities.java.support.annotation.constraint.NotLive;
+import net.shibboleth.utilities.java.support.annotation.constraint.Unmodifiable;
+import net.shibboleth.utilities.java.support.logic.Constraint;
+import net.shibboleth.utilities.java.support.resolver.CriteriaSet;
+
/**
* Evaluate a token in sequence using a chain of subordinate trust engines. If the token may be established as trusted
* by any of the subordinate engines, the token is considered trusted. Otherwise it is considered untrusted.
@@ -57,7 +58,7 @@ public class ChainingTrustEngine<TokenType> implements TrustEngine<TokenType> {
*
* @param chain the list of trust engines in the chain
*/
- public ChainingTrustEngine(@Nonnull final List<TrustEngine<? super TokenType>> chain) {
+ public ChainingTrustEngine(@Nonnull @ParameterName(name="chain") final List<TrustEngine<? super TokenType>> chain) {
Constraint.isNotNull(chain, "TrustEngine list cannot be null");
engines = new ArrayList<>(Collections2.filter(chain, Predicates.notNull()));
}
@@ -72,6 +73,7 @@ public class ChainingTrustEngine<TokenType> implements TrustEngine<TokenType> {
}
/** {@inheritDoc} */
+ @Override
public boolean validate(@Nonnull final TokenType token, @Nullable final CriteriaSet trustBasisCriteria)
throws SecurityException {
for (final TrustEngine<? super TokenType> engine : engines) {
diff --git a/opensaml-security-impl/src/main/java/org/opensaml/security/trust/impl/ExplicitKeyTrustEngine.java b/opensaml-security-impl/src/main/java/org/opensaml/security/trust/impl/ExplicitKeyTrustEngine.java
index c200aee..9aabc82 100644
--- a/opensaml-security-impl/src/main/java/org/opensaml/security/trust/impl/ExplicitKeyTrustEngine.java
+++ b/opensaml-security-impl/src/main/java/org/opensaml/security/trust/impl/ExplicitKeyTrustEngine.java
@@ -20,10 +20,6 @@ package org.opensaml.security.trust.impl;
import javax.annotation.Nonnull;
import javax.annotation.Nullable;
-import net.shibboleth.utilities.java.support.logic.Constraint;
-import net.shibboleth.utilities.java.support.resolver.CriteriaSet;
-import net.shibboleth.utilities.java.support.resolver.ResolverException;
-
import org.opensaml.security.SecurityException;
import org.opensaml.security.credential.Credential;
import org.opensaml.security.credential.CredentialResolver;
@@ -31,6 +27,11 @@ import org.opensaml.security.trust.TrustedCredentialTrustEngine;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
+import net.shibboleth.utilities.java.support.annotation.ParameterName;
+import net.shibboleth.utilities.java.support.logic.Constraint;
+import net.shibboleth.utilities.java.support.resolver.CriteriaSet;
+import net.shibboleth.utilities.java.support.resolver.ResolverException;
+
/**
* Trust engine that evaluates a credential's key against key(s) expressed within a set of trusted credentials obtained
* from a trusted credential resolver.
@@ -54,18 +55,20 @@ public class ExplicitKeyTrustEngine implements TrustedCredentialTrustEngine<Cred
*
* @param resolver credential resolver which is used to resolve trusted credentials
*/
- public ExplicitKeyTrustEngine(@Nonnull final CredentialResolver resolver) {
+ public ExplicitKeyTrustEngine(@Nonnull @ParameterName(name="resolver") final CredentialResolver resolver) {
credentialResolver = Constraint.isNotNull(resolver, "Credential resolver cannot be null");
trustEvaluator = new ExplicitKeyTrustEvaluator();
}
/** {@inheritDoc} */
+ @Override
@Nonnull public CredentialResolver getCredentialResolver() {
return credentialResolver;
}
/** {@inheritDoc} */
+ @Override
public boolean validate(@Nonnull final Credential untrustedCredential,
@Nullable final CriteriaSet trustBasisCriteria) throws SecurityException {
diff --git a/opensaml-security-impl/src/main/java/org/opensaml/security/trust/impl/ExplicitX509CertificateTrustEngine.java b/opensaml-security-impl/src/main/java/org/opensaml/security/trust/impl/ExplicitX509CertificateTrustEngine.java
index 0e9a017..462bffb 100644
--- a/opensaml-security-impl/src/main/java/org/opensaml/security/trust/impl/ExplicitX509CertificateTrustEngine.java
+++ b/opensaml-security-impl/src/main/java/org/opensaml/security/trust/impl/ExplicitX509CertificateTrustEngine.java
@@ -20,10 +20,6 @@ package org.opensaml.security.trust.impl;
import javax.annotation.Nonnull;
import javax.annotation.Nullable;
-import net.shibboleth.utilities.java.support.logic.Constraint;
-import net.shibboleth.utilities.java.support.resolver.CriteriaSet;
-import net.shibboleth.utilities.java.support.resolver.ResolverException;
-
import org.opensaml.security.SecurityException;
import org.opensaml.security.credential.Credential;
import org.opensaml.security.credential.CredentialResolver;
@@ -32,6 +28,11 @@ import org.opensaml.security.x509.X509Credential;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
+import net.shibboleth.utilities.java.support.annotation.ParameterName;
+import net.shibboleth.utilities.java.support.logic.Constraint;
+import net.shibboleth.utilities.java.support.resolver.CriteriaSet;
+import net.shibboleth.utilities.java.support.resolver.ResolverException;
+
/**
* Trust engine that evaluates a credential's X.509 certificate against certificates expressed within a set of trusted
* credentials obtained from a credential resolver.
@@ -56,18 +57,21 @@ public class ExplicitX509CertificateTrustEngine implements TrustedCredentialTrus
*
* @param resolver credential resolver which is used to resolve trusted credentials
*/
- public ExplicitX509CertificateTrustEngine(@Nonnull final CredentialResolver resolver) {
+ public ExplicitX509CertificateTrustEngine(
+ @Nonnull @ParameterName(name="resolver") final CredentialResolver resolver) {
credentialResolver = Constraint.isNotNull(resolver, "Credential resolver cannot be null");
trustEvaluator = new ExplicitX509CertificateTrustEvaluator();
}
/** {@inheritDoc} */
+ @Override
@Nonnull public CredentialResolver getCredentialResolver() {
return credentialResolver;
}
/** {@inheritDoc} */
+ @Override
public boolean validate(@Nonnull final X509Credential untrustedCredential,
@Nullable final CriteriaSet trustBasisCriteria) throws SecurityException {
diff --git a/opensaml-security-impl/src/main/java/org/opensaml/security/x509/impl/BasicPKIXValidationInformation.java b/opensaml-security-impl/src/main/java/org/opensaml/security/x509/impl/BasicPKIXValidationInformation.java
index 11267f9..961d254 100644
--- a/opensaml-security-impl/src/main/java/org/opensaml/security/x509/impl/BasicPKIXValidationInformation.java
+++ b/opensaml-security-impl/src/main/java/org/opensaml/security/x509/impl/BasicPKIXValidationInformation.java
@@ -25,6 +25,8 @@ import javax.annotation.Nullable;
import org.opensaml.security.x509.PKIXValidationInformation;
+import net.shibboleth.utilities.java.support.annotation.ParameterName;
+
/**
* Basic implementation of {@link PKIXValidationInformation}.
*/
@@ -46,8 +48,10 @@ public class BasicPKIXValidationInformation implements PKIXValidationInformation
* @param crls CRLs used during validation
* @param depth max verification path depth
*/
- public BasicPKIXValidationInformation(@Nullable final Collection<X509Certificate> anchors,
- @Nullable final Collection<X509CRL> crls, @Nullable final Integer depth) {
+ public BasicPKIXValidationInformation(
+ @Nullable @ParameterName(name="anchors") final Collection<X509Certificate> anchors,
+ @Nullable @ParameterName(name="crls") final Collection<X509CRL> crls,
+ @Nullable @ParameterName(name="depth") final Integer depth) {
verificationDepth = depth;
trustAnchors = anchors;
diff --git a/opensaml-security-impl/src/main/java/org/opensaml/security/x509/impl/CertPathPKIXTrustEvaluator.java b/opensaml-security-impl/src/main/java/org/opensaml/security/x509/impl/CertPathPKIXTrustEvaluator.java
index 45d121b..d242237 100644
--- a/opensaml-security-impl/src/main/java/org/opensaml/security/x509/impl/CertPathPKIXTrustEvaluator.java
+++ b/opensaml-security-impl/src/main/java/org/opensaml/security/x509/impl/CertPathPKIXTrustEvaluator.java
@@ -41,8 +41,6 @@ import java.util.Set;
import javax.annotation.Nonnull;
import javax.annotation.Nullable;
-import net.shibboleth.utilities.java.support.logic.Constraint;
-
import org.opensaml.security.SecurityException;
import org.opensaml.security.x509.InternalX500DNHandler;
import org.opensaml.security.x509.PKIXTrustEvaluator;
@@ -54,6 +52,9 @@ import org.opensaml.security.x509.X509Support;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
+import net.shibboleth.utilities.java.support.annotation.ParameterName;
+import net.shibboleth.utilities.java.support.logic.Constraint;
+
/**
* An implementation of {@link PKIXTrustEvaluator} that is based on the Java CertPath API.
*/
@@ -82,12 +83,14 @@ public class CertPathPKIXTrustEvaluator implements PKIXTrustEvaluator {
*
* @param newOptions PKIX validation options
*/
- public CertPathPKIXTrustEvaluator(@Nonnull final PKIXValidationOptions newOptions) {
+ public CertPathPKIXTrustEvaluator(
+ @Nonnull final @ParameterName(name="newOptions") PKIXValidationOptions newOptions) {
options = Constraint.isNotNull(newOptions, "PKIXValidationOptions cannot be null");
x500DNHandler = new InternalX500DNHandler();
}
/** {@inheritDoc} */
+ @Override
@Nonnull public PKIXValidationOptions getPKIXValidationOptions() {
return options;
}
@@ -124,6 +127,7 @@ public class CertPathPKIXTrustEvaluator implements PKIXTrustEvaluator {
}
/** {@inheritDoc} */
+ @Override
public boolean validate(@Nonnull final PKIXValidationInformation validationInfo,
@Nonnull final X509Credential untrustedCredential) throws SecurityException {
diff --git a/opensaml-security-impl/src/main/java/org/opensaml/security/x509/impl/KeyStoreX509CredentialAdapter.java b/opensaml-security-impl/src/main/java/org/opensaml/security/x509/impl/KeyStoreX509CredentialAdapter.java
index a99764a..e420dbf 100644
--- a/opensaml-security-impl/src/main/java/org/opensaml/security/x509/impl/KeyStoreX509CredentialAdapter.java
+++ b/opensaml-security-impl/src/main/java/org/opensaml/security/x509/impl/KeyStoreX509CredentialAdapter.java
@@ -34,9 +34,6 @@ import java.util.List;
import javax.annotation.Nonnull;
import javax.annotation.Nullable;
-import net.shibboleth.utilities.java.support.logic.Constraint;
-import net.shibboleth.utilities.java.support.primitive.StringSupport;
-
import org.opensaml.security.credential.AbstractCredential;
import org.opensaml.security.credential.Credential;
import org.opensaml.security.credential.UsageType;
@@ -44,6 +41,10 @@ import org.opensaml.security.x509.X509Credential;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
+import net.shibboleth.utilities.java.support.annotation.ParameterName;
+import net.shibboleth.utilities.java.support.logic.Constraint;
+import net.shibboleth.utilities.java.support.primitive.StringSupport;
+
/** A wrapper that changes a {@link KeyStore} in to a {@link X509Credential}. */
public class KeyStoreX509CredentialAdapter extends AbstractCredential implements X509Credential {
@@ -66,8 +67,9 @@ public class KeyStoreX509CredentialAdapter extends AbstractCredential implements
* @param alias alias to the credential to be exposed
* @param password password to the key to be exposed
*/
- public KeyStoreX509CredentialAdapter(@Nonnull final KeyStore store, @Nonnull final String alias,
- @Nullable final char[] password) {
+ public KeyStoreX509CredentialAdapter(@Nonnull @ParameterName(name="store") final KeyStore store,
+ @Nonnull @ParameterName(name="alias") final String alias,
+ @Nullable @ParameterName(name="password") final char[] password) {
keyStore = Constraint.isNotNull(store, "Keystore cannot be null");
credentialAlias = Constraint.isNotNull(StringSupport.trimOrNull(alias),
"Keystore alias cannot be null or empty");
@@ -75,11 +77,13 @@ public class KeyStoreX509CredentialAdapter extends AbstractCredential implements
}
/** {@inheritDoc} */
+ @Override
@Nullable public Collection<X509CRL> getCRLs() {
return Collections.EMPTY_LIST;
}
/** {@inheritDoc} */
+ @Override
@Nonnull public X509Certificate getEntityCertificate() {
try {
return (X509Certificate) keyStore.getCertificate(credentialAlias);
@@ -90,6 +94,7 @@ public class KeyStoreX509CredentialAdapter extends AbstractCredential implements
}
/** {@inheritDoc} */
+ @Override
@Nonnull public Collection<X509Certificate> getEntityCertificateChain() {
List<X509Certificate> certsCollection = Collections.EMPTY_LIST;
@@ -108,6 +113,7 @@ public class KeyStoreX509CredentialAdapter extends AbstractCredential implements
}
/** {@inheritDoc} */
+ @Override
@Nullable public PrivateKey getPrivateKey() {
try {
return (PrivateKey) keyStore.getKey(credentialAlias, keyPassword);
@@ -118,21 +124,25 @@ public class KeyStoreX509CredentialAdapter extends AbstractCredential implements
}
/** {@inheritDoc} */
+ @Override
@Nullable public PublicKey getPublicKey() {
return getEntityCertificate().getPublicKey();
}
/** {@inheritDoc} */
+ @Override
@Nonnull public Class<? extends Credential> getCredentialType() {
return X509Credential.class;
}
/** {@inheritDoc} */
+ @Override
public void setEntityId(@Nullable final String newEntityID) {
super.setEntityId(newEntityID);
}
/** {@inheritDoc} */
+ @Override
public void setUsageType(@Nonnull final UsageType newUsageType) {
super.setUsageType(newUsageType);
}
diff --git a/opensaml-security-impl/src/main/java/org/opensaml/security/x509/impl/PKIXX509CredentialTrustEngine.java b/opensaml-security-impl/src/main/java/org/opensaml/security/x509/impl/PKIXX509CredentialTrustEngine.java
index a22dafc..e4406fa 100644
--- a/opensaml-security-impl/src/main/java/org/opensaml/security/x509/impl/PKIXX509CredentialTrustEngine.java
+++ b/opensaml-security-impl/src/main/java/org/opensaml/security/x509/impl/PKIXX509CredentialTrustEngine.java
@@ -22,10 +22,6 @@ import java.util.Set;
import javax.annotation.Nonnull;
import javax.annotation.Nullable;
-import net.shibboleth.utilities.java.support.logic.Constraint;
-import net.shibboleth.utilities.java.support.resolver.CriteriaSet;
-import net.shibboleth.utilities.java.support.resolver.ResolverException;
-
import org.opensaml.security.SecurityException;
import org.opensaml.security.x509.PKIXTrustEngine;
import org.opensaml.security.x509.PKIXTrustEvaluator;
@@ -35,6 +31,11 @@ import org.opensaml.security.x509.X509Credential;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
+import net.shibboleth.utilities.java.support.annotation.ParameterName;
+import net.shibboleth.utilities.java.support.logic.Constraint;
+import net.shibboleth.utilities.java.support.resolver.CriteriaSet;
+import net.shibboleth.utilities.java.support.resolver.ResolverException;
+
/**
* Trust engine implementation which evaluates an {@link X509Credential} token based on PKIX validation processing using
* validation information from a trusted source.
@@ -62,7 +63,8 @@ public class PKIXX509CredentialTrustEngine implements PKIXTrustEngine<X509Creden
*
* @param resolver credential resolver used to resolve trusted credentials
*/
- public PKIXX509CredentialTrustEngine(@Nonnull final PKIXValidationInformationResolver resolver) {
+ public PKIXX509CredentialTrustEngine(
+ @Nonnull @ParameterName(name="resolver") final PKIXValidationInformationResolver resolver) {
this(resolver, new CertPathPKIXTrustEvaluator(), new BasicX509CredentialNameEvaluator());
}
@@ -72,8 +74,9 @@ public class PKIXX509CredentialTrustEngine implements PKIXTrustEngine<X509Creden
* @param resolver credential resolver used to resolve trusted credentials
* @param nameEvaluator the X.509 credential name evaluator to use (may be null)
*/
- public PKIXX509CredentialTrustEngine(@Nonnull final PKIXValidationInformationResolver resolver,
- @Nullable final X509CredentialNameEvaluator nameEvaluator) {
+ public PKIXX509CredentialTrustEngine(
+ @Nonnull @ParameterName(name="resolver") final PKIXValidationInformationResolver resolver,
+ @Nullable @ParameterName(name="nameEvaluator") final X509CredentialNameEvaluator nameEvaluator) {
this(resolver, new CertPathPKIXTrustEvaluator(), null);
}
@@ -84,9 +87,10 @@ public class PKIXX509CredentialTrustEngine implements PKIXTrustEngine<X509Creden
* @param pkixEvaluator the PKIX trust evaluator to use
* @param nameEvaluator the X.509 credential name evaluator to use (may be null)
*/
- public PKIXX509CredentialTrustEngine(@Nonnull final PKIXValidationInformationResolver resolver,
- @Nonnull final PKIXTrustEvaluator pkixEvaluator,
- @Nullable final X509CredentialNameEvaluator nameEvaluator) {
+ public PKIXX509CredentialTrustEngine(
+ @Nonnull @ParameterName(name="resolver") final PKIXValidationInformationResolver resolver,
+ @Nonnull @ParameterName(name="pkixEvaluator") final PKIXTrustEvaluator pkixEvaluator,
+ @Nullable @ParameterName(name="nameEvaluator") final X509CredentialNameEvaluator nameEvaluator) {
pkixResolver = Constraint.isNotNull(resolver, "PKIX trust information resolver cannot be null");
pkixTrustEvaluator = Constraint.isNotNull(pkixEvaluator, "PKIX trust evaluator may not be null");
@@ -94,6 +98,7 @@ public class PKIXX509CredentialTrustEngine implements PKIXTrustEngine<X509Creden
}
/** {@inheritDoc} */
+ @Override
@Nonnull public PKIXValidationInformationResolver getPKIXResolver() {
return pkixResolver;
}
@@ -124,6 +129,7 @@ public class PKIXX509CredentialTrustEngine implements PKIXTrustEngine<X509Creden
}
/** {@inheritDoc} */
+ @Override
public boolean validate(@Nonnull final X509Credential untrustedCredential,
@Nullable final CriteriaSet trustBasisCriteria)
throws SecurityException {
diff --git a/opensaml-security-impl/src/main/java/org/opensaml/security/x509/impl/StaticPKIXValidationInformationResolver.java b/opensaml-security-impl/src/main/java/org/opensaml/security/x509/impl/StaticPKIXValidationInformationResolver.java
index 348acfc..539a99a 100644
--- a/opensaml-security-impl/src/main/java/org/opensaml/security/x509/impl/StaticPKIXValidationInformationResolver.java
+++ b/opensaml-security-impl/src/main/java/org/opensaml/security/x509/impl/StaticPKIXValidationInformationResolver.java
@@ -26,9 +26,6 @@ import java.util.Set;
import javax.annotation.Nonnull;
import javax.annotation.Nullable;
-import net.shibboleth.utilities.java.support.resolver.CriteriaSet;
-import net.shibboleth.utilities.java.support.resolver.ResolverException;
-
import org.opensaml.core.criterion.EntityIdCriterion;
import org.opensaml.security.x509.PKIXValidationInformation;
import org.opensaml.security.x509.PKIXValidationInformationResolver;
@@ -36,6 +33,10 @@ import org.opensaml.security.x509.TrustedNamesCriterion;
import com.google.common.collect.ImmutableSet;
+import net.shibboleth.utilities.java.support.annotation.ParameterName;
+import net.shibboleth.utilities.java.support.resolver.CriteriaSet;
+import net.shibboleth.utilities.java.support.resolver.ResolverException;
+
/**
* An implementation of {@link PKIXValidationInformationResolver} which always returns a static, fixed set of
* information.
@@ -59,8 +60,9 @@ public class StaticPKIXValidationInformationResolver implements PKIXValidationIn
* @param info list of PKIX validation information to return
* @param names set of trusted names to return
*/
- public StaticPKIXValidationInformationResolver(@Nullable final List<PKIXValidationInformation> info,
- @Nullable final Set<String> names) {
+ public StaticPKIXValidationInformationResolver(
+ @Nullable @ParameterName(name="info") final List<PKIXValidationInformation> info,
+ @Nullable @ParameterName(name="names") final Set<String> names) {
this(info, names, false);
}
@@ -72,8 +74,10 @@ public class StaticPKIXValidationInformationResolver implements PKIXValidationIn
* @param supportDynamicNames whether resolver should support dynamic extraction of trusted names
* from an instance of {@link TrustedNamesCriterion} in the criteria set
*/
- public StaticPKIXValidationInformationResolver(@Nullable final List<PKIXValidationInformation> info,
- @Nullable final Set<String> names, final boolean supportDynamicNames) {
+ public StaticPKIXValidationInformationResolver(
+ @Nullable @ParameterName(name="info") final List<PKIXValidationInformation> info,
+ @Nullable @ParameterName(name="names") final Set<String> names,
+ @ParameterName(name="supportDynamicNames") final boolean supportDynamicNames) {
if (info != null) {
pkixInfo = new ArrayList<>(info);
} else {
@@ -90,6 +94,7 @@ public class StaticPKIXValidationInformationResolver implements PKIXValidationIn
}
/** {@inheritDoc} */
+ @Override
@Nonnull public Set<String> resolveTrustedNames(@Nullable final CriteriaSet criteriaSet) throws ResolverException {
if (criteriaSet == null) {
return ImmutableSet.copyOf(trustedNames);
@@ -112,17 +117,20 @@ public class StaticPKIXValidationInformationResolver implements PKIXValidationIn
}
/** {@inheritDoc} */
+ @Override
public boolean supportsTrustedNameResolution() {
return true;
}
/** {@inheritDoc} */
+ @Override
@Nonnull public Iterable<PKIXValidationInformation> resolve(@Nullable final CriteriaSet criteria)
throws ResolverException {
return pkixInfo;
}
/** {@inheritDoc} */
+ @Override
@Nullable public PKIXValidationInformation resolveSingle(@Nullable final CriteriaSet criteria)
throws ResolverException {
if (!pkixInfo.isEmpty()) {
diff --git a/opensaml-security-impl/src/main/java/org/opensaml/security/x509/impl/X509KeyManagerX509CredentialAdapter.java b/opensaml-security-impl/src/main/java/org/opensaml/security/x509/impl/X509KeyManagerX509CredentialAdapter.java
index caa09a4..3cbb8a4 100644
--- a/opensaml-security-impl/src/main/java/org/opensaml/security/x509/impl/X509KeyManagerX509CredentialAdapter.java
+++ b/opensaml-security-impl/src/main/java/org/opensaml/security/x509/impl/X509KeyManagerX509CredentialAdapter.java
@@ -29,14 +29,15 @@ import javax.annotation.Nonnull;
import javax.annotation.Nullable;
import javax.net.ssl.X509KeyManager;
-import net.shibboleth.utilities.java.support.logic.Constraint;
-import net.shibboleth.utilities.java.support.primitive.StringSupport;
-
import org.opensaml.security.credential.AbstractCredential;
import org.opensaml.security.credential.Credential;
import org.opensaml.security.credential.UsageType;
import org.opensaml.security.x509.X509Credential;
+import net.shibboleth.utilities.java.support.annotation.ParameterName;
+import net.shibboleth.utilities.java.support.logic.Constraint;
+import net.shibboleth.utilities.java.support.primitive.StringSupport;
+
/** A class that wraps a {@link X509KeyManager} and exposes it as an {@link X509Credential}. */
public class X509KeyManagerX509CredentialAdapter extends AbstractCredential implements X509Credential {
@@ -52,17 +53,20 @@ public class X509KeyManagerX509CredentialAdapter extends AbstractCredential impl
* @param manager wrapped key manager
* @param alias alias used to reference the credential in the key manager
*/
- public X509KeyManagerX509CredentialAdapter(@Nonnull final X509KeyManager manager, @Nonnull final String alias) {
+ public X509KeyManagerX509CredentialAdapter(@Nonnull @ParameterName(name="manager") final X509KeyManager manager,
+ @Nonnull @ParameterName(name="alias") final String alias) {
keyManager = Constraint.isNotNull(manager, "Key manager cannot be null");
credentialAlias = Constraint.isNotNull(StringSupport.trimOrNull(alias), "Entity alias cannot be null");
}
/** {@inheritDoc} */
+ @Override
@Nullable public Collection<X509CRL> getCRLs() {
return Collections.EMPTY_LIST;
}
/** {@inheritDoc} */
+ @Override
@Nonnull public X509Certificate getEntityCertificate() {
final X509Certificate[] certs = keyManager.getCertificateChain(credentialAlias);
if (certs != null && certs.length > 0) {
@@ -73,6 +77,7 @@ public class X509KeyManagerX509CredentialAdapter extends AbstractCredential impl
}
/** {@inheritDoc} */
+ @Override
@Nonnull public Collection<X509Certificate> getEntityCertificateChain() {
final X509Certificate[] certs = keyManager.getCertificateChain(credentialAlias);
if (certs != null && certs.length > 0) {
@@ -83,26 +88,31 @@ public class X509KeyManagerX509CredentialAdapter extends AbstractCredential impl
}
/** {@inheritDoc} */
+ @Override
@Nullable public PrivateKey getPrivateKey() {
return keyManager.getPrivateKey(credentialAlias);
}
/** {@inheritDoc} */
+ @Override
@Nullable public PublicKey getPublicKey() {
return getEntityCertificate().getPublicKey();
}
/** {@inheritDoc} */
+ @Override
@Nonnull public Class<? extends Credential> getCredentialType() {
return X509Credential.class;
}
/** {@inheritDoc} */
+ @Override
public void setEntityId(@Nullable final String newEntityID) {
super.setEntityId(newEntityID);
}
/** {@inheritDoc} */
+ @Override
public void setUsageType(@Nonnull final UsageType newUsageType) {
super.setUsageType(newUsageType);
}
diff --git a/opensaml-xmlsec-api/src/main/java/org/opensaml/xmlsec/encryption/support/ChainingEncryptedKeyResolver.java b/opensaml-xmlsec-api/src/main/java/org/opensaml/xmlsec/encryption/support/ChainingEncryptedKeyResolver.java
index fd20f9c..22ca491 100644
--- a/opensaml-xmlsec-api/src/main/java/org/opensaml/xmlsec/encryption/support/ChainingEncryptedKeyResolver.java
+++ b/opensaml-xmlsec-api/src/main/java/org/opensaml/xmlsec/encryption/support/ChainingEncryptedKeyResolver.java
@@ -27,11 +27,6 @@ import java.util.Set;
import javax.annotation.Nonnull;
import javax.annotation.Nullable;
-import net.shibboleth.utilities.java.support.annotation.constraint.NonnullElements;
-import net.shibboleth.utilities.java.support.annotation.constraint.NotLive;
-import net.shibboleth.utilities.java.support.annotation.constraint.Unmodifiable;
-import net.shibboleth.utilities.java.support.logic.Constraint;
-
import org.opensaml.xmlsec.encryption.EncryptedData;
import org.opensaml.xmlsec.encryption.EncryptedKey;
import org.slf4j.Logger;
@@ -41,6 +36,12 @@ import com.google.common.base.Predicates;
import com.google.common.collect.Collections2;
import com.google.common.collect.ImmutableList;
+import net.shibboleth.utilities.java.support.annotation.ParameterName;
+import net.shibboleth.utilities.java.support.annotation.constraint.NonnullElements;
+import net.shibboleth.utilities.java.support.annotation.constraint.NotLive;
+import net.shibboleth.utilities.java.support.annotation.constraint.Unmodifiable;
+import net.shibboleth.utilities.java.support.logic.Constraint;
+
/**
* An implementation of {@link EncryptedKeyResolver} which chains multiple other resolver implementations together,
* calling them in the order specified in the resolver list.
@@ -58,7 +59,8 @@ public class ChainingEncryptedKeyResolver extends AbstractEncryptedKeyResolver {
*
* @param encKeyResolvers the chain of encrypted key resolvers
*/
- public ChainingEncryptedKeyResolver(@Nonnull final List<EncryptedKeyResolver> encKeyResolvers) {
+ public ChainingEncryptedKeyResolver(
+ @Nonnull @ParameterName(name="encKeyResolvers") final List<EncryptedKeyResolver> encKeyResolvers) {
Constraint.isNotNull(encKeyResolvers, "List of EncryptedKeyResolvers cannot be null");
resolvers = new ArrayList<>(Collections2.filter(encKeyResolvers, Predicates.notNull()));
}
@@ -69,8 +71,9 @@ public class ChainingEncryptedKeyResolver extends AbstractEncryptedKeyResolver {
* @param encKeyResolvers the chain of encrypted key resolvers
* @param recipients the set of recipients
*/
- public ChainingEncryptedKeyResolver(@Nonnull final List<EncryptedKeyResolver> encKeyResolvers,
- @Nullable final Set<String> recipients) {
+ public ChainingEncryptedKeyResolver(
+ @Nonnull @ParameterName(name="encKeyResolvers") final List<EncryptedKeyResolver> encKeyResolvers,
+ @Nullable @ParameterName(name="recipients") final Set<String> recipients) {
super(recipients);
Constraint.isNotNull(encKeyResolvers, "List of EncryptedKeyResolvers cannot be null");
resolvers = new ArrayList<>(Collections2.filter(encKeyResolvers, Predicates.notNull()));
@@ -82,8 +85,9 @@ public class ChainingEncryptedKeyResolver extends AbstractEncryptedKeyResolver {
* @param encKeyResolvers the chain of encrypted key resolvers
* @param recipient the recipient
*/
- public ChainingEncryptedKeyResolver(@Nonnull final List<EncryptedKeyResolver> encKeyResolvers,
- @Nullable final String recipient) {
+ public ChainingEncryptedKeyResolver(
+ @Nonnull @ParameterName(name="encKeyResolvers") final List<EncryptedKeyResolver> encKeyResolvers,
+ @Nullable @ParameterName(name="recipient") final String recipient) {
this(encKeyResolvers, Collections.singleton(recipient));
}
@@ -130,6 +134,7 @@ public class ChainingEncryptedKeyResolver extends AbstractEncryptedKeyResolver {
}
/** {@inheritDoc} */
+ @Override
@Nonnull public Iterator<EncryptedKey> iterator() {
return new ChainingIterator(parent, encryptedData);
}
diff --git a/opensaml-xmlsec-impl/src/main/java/org/opensaml/xmlsec/keyinfo/impl/BasicProviderKeyInfoCredentialResolver.java b/opensaml-xmlsec-impl/src/main/java/org/opensaml/xmlsec/keyinfo/impl/BasicProviderKeyInfoCredentialResolver.java
index acafe87..e3d61c3 100644
--- a/opensaml-xmlsec-impl/src/main/java/org/opensaml/xmlsec/keyinfo/impl/BasicProviderKeyInfoCredentialResolver.java
+++ b/opensaml-xmlsec-impl/src/main/java/org/opensaml/xmlsec/keyinfo/impl/BasicProviderKeyInfoCredentialResolver.java
@@ -31,9 +31,6 @@ import javax.annotation.Nonnull;
import javax.annotation.Nullable;
import javax.crypto.SecretKey;
-import net.shibboleth.utilities.java.support.resolver.CriteriaSet;
-import net.shibboleth.utilities.java.support.resolver.ResolverException;
-
import org.opensaml.core.xml.XMLObject;
import org.opensaml.security.SecurityException;
import org.opensaml.security.credential.BasicCredential;
@@ -50,6 +47,10 @@ import org.opensaml.xmlsec.signature.KeyValue;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
+import net.shibboleth.utilities.java.support.annotation.ParameterName;
+import net.shibboleth.utilities.java.support.resolver.CriteriaSet;
+import net.shibboleth.utilities.java.support.resolver.ResolverException;
+
/**
* Implementation of {@link KeyInfoCredentialResolver} which resolves credentials based on a {@link KeyInfo} element
* using a configured list of {@link KeyInfoProvider}s and optional post-processing hooks.
@@ -119,7 +120,8 @@ public class BasicProviderKeyInfoCredentialResolver extends AbstractCriteriaFilt
*
* @param keyInfoProviders the list of KeyInfoProvider's to use in this resolver
*/
- public BasicProviderKeyInfoCredentialResolver(@Nonnull final List<KeyInfoProvider> keyInfoProviders) {
+ public BasicProviderKeyInfoCredentialResolver(
+ @Nonnull @ParameterName(name="keyInfoProviders") final List<KeyInfoProvider> keyInfoProviders) {
super();
providers = new ArrayList<>();
@@ -136,6 +138,7 @@ public class BasicProviderKeyInfoCredentialResolver extends AbstractCriteriaFilt
}
/** {@inheritDoc} */
+ @Override
@Nonnull protected Iterable<Credential> resolveFromSource(@Nullable final CriteriaSet criteriaSet)
throws ResolverException {
diff --git a/opensaml-xmlsec-impl/src/main/java/org/opensaml/xmlsec/keyinfo/impl/ChainingKeyInfoCredentialResolver.java b/opensaml-xmlsec-impl/src/main/java/org/opensaml/xmlsec/keyinfo/impl/ChainingKeyInfoCredentialResolver.java
index 361fda4..b9c68d3 100644
--- a/opensaml-xmlsec-impl/src/main/java/org/opensaml/xmlsec/keyinfo/impl/ChainingKeyInfoCredentialResolver.java
+++ b/opensaml-xmlsec-impl/src/main/java/org/opensaml/xmlsec/keyinfo/impl/ChainingKeyInfoCredentialResolver.java
@@ -24,6 +24,8 @@ import javax.annotation.Nonnull;
import org.opensaml.security.credential.impl.AbstractChainingCredentialResolver;
import org.opensaml.xmlsec.keyinfo.KeyInfoCredentialResolver;
+import net.shibboleth.utilities.java.support.annotation.ParameterName;
+
/**
* A concrete implementation of {@link AbstractChainingCredentialResolver} which is scoped to
* the {@link KeyInfoCredentialResolver} type.
@@ -36,7 +38,8 @@ public class ChainingKeyInfoCredentialResolver extends AbstractChainingCredentia
*
* @param resolverChain the chain of KeyInfo credential resolvers
*/
- public ChainingKeyInfoCredentialResolver(@Nonnull final List<KeyInfoCredentialResolver> resolverChain) {
+ public ChainingKeyInfoCredentialResolver(
+ @Nonnull @ParameterName(name="resolverChain") final List<KeyInfoCredentialResolver> resolverChain) {
super(resolverChain);
}
diff --git a/opensaml-xmlsec-impl/src/main/java/org/opensaml/xmlsec/keyinfo/impl/CollectionKeyInfoCredentialResolver.java b/opensaml-xmlsec-impl/src/main/java/org/opensaml/xmlsec/keyinfo/impl/CollectionKeyInfoCredentialResolver.java
index 49104a9..13e6017 100644
--- a/opensaml-xmlsec-impl/src/main/java/org/opensaml/xmlsec/keyinfo/impl/CollectionKeyInfoCredentialResolver.java
+++ b/opensaml-xmlsec-impl/src/main/java/org/opensaml/xmlsec/keyinfo/impl/CollectionKeyInfoCredentialResolver.java
@@ -26,6 +26,8 @@ import org.opensaml.security.credential.Credential;
import org.opensaml.security.credential.impl.CollectionCredentialResolver;
import org.opensaml.xmlsec.keyinfo.KeyInfoCredentialResolver;
+import net.shibboleth.utilities.java.support.annotation.ParameterName;
+
/**
* An implementation of {@link KeyInfoCredentialResolver} which uses a {@link Collection} as the
* underlying credential source.
@@ -86,7 +88,8 @@ public class CollectionKeyInfoCredentialResolver extends CollectionCredentialRes
*
* @param credentials the credential collection which is the backing store for the resolver
*/
- public CollectionKeyInfoCredentialResolver(@Nonnull final Collection<Credential> credentials) {
+ public CollectionKeyInfoCredentialResolver(
+ @Nonnull @ParameterName(name="credentials") final Collection<Credential> credentials) {
super(credentials);
}
diff --git a/opensaml-xmlsec-impl/src/main/java/org/opensaml/xmlsec/keyinfo/impl/KeyInfoCredentialContext.java b/opensaml-xmlsec-impl/src/main/java/org/opensaml/xmlsec/keyinfo/impl/KeyInfoCredentialContext.java
index a1bae8e..111d8b2 100644
--- a/opensaml-xmlsec-impl/src/main/java/org/opensaml/xmlsec/keyinfo/impl/KeyInfoCredentialContext.java
+++ b/opensaml-xmlsec-impl/src/main/java/org/opensaml/xmlsec/keyinfo/impl/KeyInfoCredentialContext.java
@@ -22,6 +22,8 @@ import javax.annotation.Nonnull;
import org.opensaml.security.credential.CredentialContext;
import org.opensaml.xmlsec.signature.KeyInfo;
+import net.shibboleth.utilities.java.support.annotation.ParameterName;
+
/**
* Context for credentials resolved from a {@link KeyInfo} element.
*/
@@ -35,7 +37,7 @@ public class KeyInfoCredentialContext implements CredentialContext {
*
* @param ki the KeyInfo context
*/
- public KeyInfoCredentialContext(@Nonnull final KeyInfo ki) {
+ public KeyInfoCredentialContext(@Nonnull @ParameterName(name="ki") final KeyInfo ki) {
keyInfo = ki;
}
diff --git a/opensaml-xmlsec-impl/src/main/java/org/opensaml/xmlsec/keyinfo/impl/KeyInfoResolutionContext.java b/opensaml-xmlsec-impl/src/main/java/org/opensaml/xmlsec/keyinfo/impl/KeyInfoResolutionContext.java
index c71777b..d0af740 100644
--- a/opensaml-xmlsec-impl/src/main/java/org/opensaml/xmlsec/keyinfo/impl/KeyInfoResolutionContext.java
+++ b/opensaml-xmlsec-impl/src/main/java/org/opensaml/xmlsec/keyinfo/impl/KeyInfoResolutionContext.java
@@ -26,12 +26,13 @@ import java.util.Set;
import javax.annotation.Nonnull;
import javax.annotation.Nullable;
-import net.shibboleth.utilities.java.support.collection.LazyMap;
-import net.shibboleth.utilities.java.support.collection.LazySet;
-
import org.opensaml.security.credential.Credential;
import org.opensaml.xmlsec.signature.KeyInfo;
+import net.shibboleth.utilities.java.support.annotation.ParameterName;
+import net.shibboleth.utilities.java.support.collection.LazyMap;
+import net.shibboleth.utilities.java.support.collection.LazySet;
+
/**
* Resolution context class that is used to supply state information to, and to share information
@@ -73,7 +74,8 @@ public class KeyInfoResolutionContext {
* @param credentials a reference to the collection in which credentials previously
* resolved in a processing flow are being stored
*/
- public KeyInfoResolutionContext(@Nonnull final Collection<Credential> credentials) {
+ public KeyInfoResolutionContext(
+ @Nonnull @ParameterName(name="credentials") final Collection<Credential> credentials) {
resolvedCredentials = Collections.unmodifiableCollection(credentials);
properties = new LazyMap<>();
keyNames = new LazySet<>();
diff --git a/opensaml-xmlsec-impl/src/main/java/org/opensaml/xmlsec/keyinfo/impl/LocalKeyInfoCredentialResolver.java b/opensaml-xmlsec-impl/src/main/java/org/opensaml/xmlsec/keyinfo/impl/LocalKeyInfoCredentialResolver.java
index b104198..cebba36 100644
--- a/opensaml-xmlsec-impl/src/main/java/org/opensaml/xmlsec/keyinfo/impl/LocalKeyInfoCredentialResolver.java
+++ b/opensaml-xmlsec-impl/src/main/java/org/opensaml/xmlsec/keyinfo/impl/LocalKeyInfoCredentialResolver.java
@@ -25,15 +25,16 @@ import java.util.List;
import javax.annotation.Nonnull;
import javax.annotation.Nullable;
-import net.shibboleth.utilities.java.support.logic.Constraint;
-import net.shibboleth.utilities.java.support.resolver.CriteriaSet;
-import net.shibboleth.utilities.java.support.resolver.ResolverException;
-
import org.opensaml.security.credential.Credential;
import org.opensaml.security.credential.CredentialResolver;
import org.opensaml.security.criteria.KeyNameCriterion;
import org.opensaml.security.criteria.PublicKeyCriterion;
+import net.shibboleth.utilities.java.support.annotation.ParameterName;
+import net.shibboleth.utilities.java.support.logic.Constraint;
+import net.shibboleth.utilities.java.support.resolver.CriteriaSet;
+import net.shibboleth.utilities.java.support.resolver.ResolverException;
+
/**
* A simple specialization of {@link BasicProviderKeyInfoCredentialResolver}
* which is capable of using information from a {@link org.opensaml.xmlsec.signature.KeyInfo} to resolve
@@ -78,8 +79,9 @@ public class LocalKeyInfoCredentialResolver extends BasicProviderKeyInfoCredenti
* @param keyInfoProviders the list of {@link KeyInfoProvider}s to use in this resolver
* @param localCredentialResolver resolver of local credentials
*/
- public LocalKeyInfoCredentialResolver(@Nonnull final List<KeyInfoProvider> keyInfoProviders,
- @Nonnull final CredentialResolver localCredentialResolver) {
+ public LocalKeyInfoCredentialResolver(
+ @Nonnull @ParameterName(name="keyInfoProviders") final List<KeyInfoProvider> keyInfoProviders,
+ @Nonnull @ParameterName(name="localCredentialResolver") final CredentialResolver localCredentialResolver) {
super(keyInfoProviders);
localCredResolver = Constraint.isNotNull(localCredentialResolver, "Local credential resolver cannot be null");
@@ -98,6 +100,7 @@ public class LocalKeyInfoCredentialResolver extends BasicProviderKeyInfoCredenti
}
/** {@inheritDoc} */
+ @Override
protected void postProcess(@Nonnull final KeyInfoResolutionContext kiContext,
@Nullable final CriteriaSet criteriaSet, @Nonnull final List<Credential> credentials)
throws ResolverException {
diff --git a/opensaml-xmlsec-impl/src/main/java/org/opensaml/xmlsec/keyinfo/impl/StaticKeyInfoCredentialResolver.java b/opensaml-xmlsec-impl/src/main/java/org/opensaml/xmlsec/keyinfo/impl/StaticKeyInfoCredentialResolver.java
index 21185fb..c84deb8 100644
--- a/opensaml-xmlsec-impl/src/main/java/org/opensaml/xmlsec/keyinfo/impl/StaticKeyInfoCredentialResolver.java
+++ b/opensaml-xmlsec-impl/src/main/java/org/opensaml/xmlsec/keyinfo/impl/StaticKeyInfoCredentialResolver.java
@@ -25,6 +25,8 @@ import org.opensaml.security.credential.Credential;
import org.opensaml.security.credential.impl.StaticCredentialResolver;
import org.opensaml.xmlsec.keyinfo.KeyInfoCredentialResolver;
+import net.shibboleth.utilities.java.support.annotation.ParameterName;
+
/**
* Simple implementation of {@link KeyInfoCredentialResolver} which just stores and returns a static set of credentials.
*
@@ -46,7 +48,8 @@ public class StaticKeyInfoCredentialResolver extends StaticCredentialResolver im
*
* @param credentials collection of credentials to be held by this resolver
*/
- public StaticKeyInfoCredentialResolver(@Nonnull final List<Credential> credentials) {
+ public StaticKeyInfoCredentialResolver(
+ @Nonnull @ParameterName(name="credentials") final List<Credential> credentials) {
super(credentials);
}
@@ -55,7 +58,8 @@ public class StaticKeyInfoCredentialResolver extends StaticCredentialResolver im
*
* @param credential a single credential to be held by this resolver
*/
- public StaticKeyInfoCredentialResolver(@Nonnull final Credential credential) {
+ public StaticKeyInfoCredentialResolver(
+ @Nonnull @ParameterName(name="credential") final Credential credential) {
super(credential);
}
diff --git a/opensaml-xmlsec-impl/src/main/java/org/opensaml/xmlsec/keyinfo/impl/StaticKeyInfoGenerator.java b/opensaml-xmlsec-impl/src/main/java/org/opensaml/xmlsec/keyinfo/impl/StaticKeyInfoGenerator.java
index 2df126d..aa0d778 100644
--- a/opensaml-xmlsec-impl/src/main/java/org/opensaml/xmlsec/keyinfo/impl/StaticKeyInfoGenerator.java
+++ b/opensaml-xmlsec-impl/src/main/java/org/opensaml/xmlsec/keyinfo/impl/StaticKeyInfoGenerator.java
@@ -20,8 +20,6 @@ package org.opensaml.xmlsec.keyinfo.impl;
import javax.annotation.Nonnull;
import javax.annotation.Nullable;
-import net.shibboleth.utilities.java.support.logic.Constraint;
-
import org.opensaml.core.xml.config.XMLObjectProviderRegistrySupport;
import org.opensaml.core.xml.io.Marshaller;
import org.opensaml.core.xml.io.MarshallingException;
@@ -33,6 +31,9 @@ import org.opensaml.xmlsec.keyinfo.KeyInfoGenerator;
import org.opensaml.xmlsec.signature.KeyInfo;
import org.w3c.dom.Element;
+import net.shibboleth.utilities.java.support.annotation.ParameterName;
+import net.shibboleth.utilities.java.support.logic.Constraint;
+
/**
* Implementation of {@link KeyInfoGenerator} which always returns static {@link KeyInfo} data.
*
@@ -61,11 +62,12 @@ public class StaticKeyInfoGenerator implements KeyInfoGenerator {
*
* @param newKeyInfo the KeyInfo used as the basis to return new KeyInfo objects from this generator
*/
- public StaticKeyInfoGenerator(@Nonnull final KeyInfo newKeyInfo) {
+ public StaticKeyInfoGenerator(@Nonnull @ParameterName(name="newKeyInfo") final KeyInfo newKeyInfo) {
setKeyInfo(newKeyInfo);
}
/** {@inheritDoc} */
+ @Override
@Nonnull public KeyInfo generate(@Nullable final Credential credential) throws SecurityException {
if (keyInfo.getParent() == null) {
return keyInfo;
--
To stop receiving notification emails like this one, please contact
the administrator of this repository.
More information about the commits
mailing list