[java-shib-attribute] branch main updated: Javadoc warnings
Rod Widdowson
rdw at steadingsoftware.com
Sat Oct 1 14:15:26 UTC 2022
This is an automated email from the git hooks/post-receive script.
rdw pushed a commit to branch main
in repository java-shib-attribute.
View the commit online:
http://git.shibboleth.net/view/?p=java-shib-attribute.git;a=commit;h=507c99187338ee3a03b6e5e45b5c98b5e7e6b5f7
The following commit(s) were added to refs/heads/main by this push:
new 507c99187 Javadoc warnings
507c99187 is described below
commit 507c99187338ee3a03b6e5e45b5c98b5e7e6b5f7
Author: Rod Widdowson <rdw at steadingsoftware.com>
AuthorDate: Sat Oct 1 15:15:20 2022 +0100
Javadoc warnings
---
.../idp/attribute/impl/JDBCPairwiseIdStore.java | 7 ++--
.../ad/impl/DateTimeAttributeDefinition.java | 15 +++-----
.../dc/storage/impl/TemplatedSearchBuilder.java | 6 ++++
.../idp/attribute/filter/testing/MockMatcher.java | 14 +++-----
.../filter/testing/MockPolicyRequirementRule.java | 26 +++-----------
.../resolver/testing/MockDataConnector.java | 10 +++++-
.../resolver/testing/ResolverTestSupport.java | 41 ++++++++++++++++++----
.../attribute/resolver/testing/TestSources.java | 37 +++++++++++++++++--
8 files changed, 100 insertions(+), 56 deletions(-)
diff --git a/shib-attribute-impl/src/main/java/net/shibboleth/idp/attribute/impl/JDBCPairwiseIdStore.java b/shib-attribute-impl/src/main/java/net/shibboleth/idp/attribute/impl/JDBCPairwiseIdStore.java
index 518c52598..db030febe 100644
--- a/shib-attribute-impl/src/main/java/net/shibboleth/idp/attribute/impl/JDBCPairwiseIdStore.java
+++ b/shib-attribute-impl/src/main/java/net/shibboleth/idp/attribute/impl/JDBCPairwiseIdStore.java
@@ -931,9 +931,10 @@ public class JDBCPairwiseIdStore extends AbstractInitializableComponent implemen
@Nullable private final Lock threadLock;
/** Constructor.
- * @param autoCommit
- * @param writeLock
- * @throws SQLException
+ * @param autoCommit what to set {@link Connection#setAutoCommit(boolean)} ti
+ * @param writeLock if we are also arbitrating table access (as per {@link JDBCPairwiseIdStore#setLocalLocking(boolean)})
+ * is this a shared or exclusive lock
+ * @throws SQLException if the underlying JDBC driver throws one
*/
public ConnectionWithLock(final boolean autoCommit, final boolean writeLock) throws SQLException {
connection = dataSource.getConnection();
diff --git a/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/ad/impl/DateTimeAttributeDefinition.java b/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/ad/impl/DateTimeAttributeDefinition.java
index 36f005388..7fe0165ae 100644
--- a/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/ad/impl/DateTimeAttributeDefinition.java
+++ b/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/ad/impl/DateTimeAttributeDefinition.java
@@ -43,7 +43,6 @@ import net.shibboleth.idp.attribute.resolver.ResolutionException;
import net.shibboleth.idp.attribute.resolver.context.AttributeResolutionContext;
import net.shibboleth.idp.attribute.resolver.context.AttributeResolverWorkContext;
import net.shibboleth.shared.component.ComponentInitializationException;
-import net.shibboleth.shared.component.ComponentSupport;
import net.shibboleth.shared.logic.Constraint;
/**
@@ -80,12 +79,10 @@ public class DateTimeAttributeDefinition extends AbstractAttributeDefinition {
*
* <p>Defaults to true.</p>
*
- * @param flag
+ * @param flag true if the epoch is in seconds.
*/
public void setEpochInSeconds(final boolean flag) {
- ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
- ComponentSupport.ifDestroyedThrowDestroyedComponentException(this);
-
+ checkSetterPreconditions();
epochInSeconds = flag;
}
@@ -104,9 +101,7 @@ public class DateTimeAttributeDefinition extends AbstractAttributeDefinition {
* @param flag flag to set
*/
public void setIgnoreConversionErrors(final boolean flag) {
- ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
- ComponentSupport.ifDestroyedThrowDestroyedComponentException(this);
-
+ checkSetterPreconditions();
ignoreConversionErrors = flag;
}
@@ -125,9 +120,7 @@ public class DateTimeAttributeDefinition extends AbstractAttributeDefinition {
* @param f formatter
*/
public void setDateTimeFormatter(@Nullable final DateTimeFormatter f) {
- ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
- ComponentSupport.ifDestroyedThrowDestroyedComponentException(this);
-
+ checkSetterPreconditions();
formatter = f;
}
diff --git a/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/dc/storage/impl/TemplatedSearchBuilder.java b/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/dc/storage/impl/TemplatedSearchBuilder.java
index d424bd58e..16c2fa82c 100644
--- a/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/dc/storage/impl/TemplatedSearchBuilder.java
+++ b/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/dc/storage/impl/TemplatedSearchBuilder.java
@@ -201,6 +201,12 @@ public class TemplatedSearchBuilder extends AbstractInitializableComponent
};
}
+ /** Helper method to extract the parameters needed for the {@link StorageServiceSearch}
+ * @param resolutionContext the context of the resolution
+ * @param dependencyAttributes the attributes we depend upon
+ * @return the derived {@link StorageService} context and context
+ * @throws ResolutionException if the velocity operations failed resolution failed.
+ */
@Nonnull private Pair<String,String> getContextAndKey(@Nonnull final AttributeResolutionContext resolutionContext,
@Nonnull final Map<String, List<IdPAttributeValue>> dependencyAttributes) throws ResolutionException {
diff --git a/shib-attribute-testing/src/main/java/net/shibboleth/idp/attribute/filter/testing/MockMatcher.java b/shib-attribute-testing/src/main/java/net/shibboleth/idp/attribute/filter/testing/MockMatcher.java
index a3491fe03..790c31e27 100644
--- a/shib-attribute-testing/src/main/java/net/shibboleth/idp/attribute/filter/testing/MockMatcher.java
+++ b/shib-attribute-testing/src/main/java/net/shibboleth/idp/attribute/filter/testing/MockMatcher.java
@@ -32,7 +32,6 @@ import net.shibboleth.shared.logic.Constraint;
import net.shibboleth.shared.primitive.StringSupport;
/** A simple, mock implementation of {@link Matcher}. */
- at SuppressWarnings("javadoc")
public class MockMatcher extends AbstractIdentifiedInitializableComponent implements Matcher {
/** ID of the attribute to which this matcher applies. */
@@ -48,9 +47,7 @@ public class MockMatcher extends AbstractIdentifiedInitializableComponent implem
/** do we fail when validate is called? do we fail when we are called?*/
private boolean fails;
- /** what was passed to getMatchingValues(). */
- private AttributeFilterContext contextUsed;
-
+ /** Constructor. */
public MockMatcher() {
setId("Mock");
}
@@ -115,12 +112,9 @@ public class MockMatcher extends AbstractIdentifiedInitializableComponent implem
}
- public AttributeFilterContext getContextUsedAndReset() {
- AttributeFilterContext value = contextUsed;
- contextUsed = null;
- return value;
- }
-
+ /** set whether we are going to fail {{@link #getMatchingValues(IdPAttribute, AttributeFilterContext)}.
+ * @param doFail whether we are going to fail.
+ */
public void setFailValidate(boolean doFail) {
fails = doFail;
}
diff --git a/shib-attribute-testing/src/main/java/net/shibboleth/idp/attribute/filter/testing/MockPolicyRequirementRule.java b/shib-attribute-testing/src/main/java/net/shibboleth/idp/attribute/filter/testing/MockPolicyRequirementRule.java
index f10571bd3..b5a4abe75 100644
--- a/shib-attribute-testing/src/main/java/net/shibboleth/idp/attribute/filter/testing/MockPolicyRequirementRule.java
+++ b/shib-attribute-testing/src/main/java/net/shibboleth/idp/attribute/filter/testing/MockPolicyRequirementRule.java
@@ -25,7 +25,6 @@ import net.shibboleth.idp.attribute.filter.context.AttributeFilterContext;
import net.shibboleth.shared.component.AbstractIdentifiedInitializableComponent;
/** A simple, mock implementation of {@link Matcher}. */
- at SuppressWarnings("javadoc")
public class MockPolicyRequirementRule extends AbstractIdentifiedInitializableComponent implements
PolicyRequirementRule {
@@ -35,17 +34,11 @@ public class MockPolicyRequirementRule extends AbstractIdentifiedInitializableCo
/** to return from matcher(). */
private Tristate retVal;
- /** do we fail when validate is called? do we fail when we are called? */
- private boolean fails;
-
- /** what was passed to getMatchingValues(). */
- private AttributeFilterContext contextUsed;
-
+ /** Constructor. */
public MockPolicyRequirementRule() {
setId("Mock");
}
-
/** {@inheritDoc} */
@Override
public boolean isInitialized() {
@@ -58,27 +51,16 @@ public class MockPolicyRequirementRule extends AbstractIdentifiedInitializableCo
initialized = true;
}
+ /** Set what to return
+ * @param what what to return
+ */
public void setRetVal(Tristate what) {
retVal = what;
}
- public AttributeFilterContext getContextUsedAndReset() {
- AttributeFilterContext value = contextUsed;
- contextUsed = null;
- return value;
- }
-
- public void setFailValidate(boolean doFail) {
- fails = doFail;
- }
-
/** {@inheritDoc} */
@Override
public Tristate matches(@Nonnull AttributeFilterContext filterContext) {
- if (fails) {
- return Tristate.FAIL;
- }
- contextUsed = filterContext;
return retVal;
}
}
\ No newline at end of file
diff --git a/shib-attribute-testing/src/main/java/net/shibboleth/idp/attribute/resolver/testing/MockDataConnector.java b/shib-attribute-testing/src/main/java/net/shibboleth/idp/attribute/resolver/testing/MockDataConnector.java
index bc2c8ae32..6756f5ea4 100644
--- a/shib-attribute-testing/src/main/java/net/shibboleth/idp/attribute/resolver/testing/MockDataConnector.java
+++ b/shib-attribute-testing/src/main/java/net/shibboleth/idp/attribute/resolver/testing/MockDataConnector.java
@@ -35,7 +35,6 @@ import net.shibboleth.idp.attribute.resolver.context.AttributeResolverWorkContex
import net.shibboleth.shared.component.ComponentInitializationException;
/** A data connector that just returns a static collection of attributes. */
- at SuppressWarnings("javadoc")
@ThreadSafe
public class MockDataConnector extends AbstractDataConnector {
@@ -64,6 +63,15 @@ public class MockDataConnector extends AbstractDataConnector {
values = connectorValues;
}
+ /**
+ * Constructor.
+ *
+ * @param id unique ID for this data connector
+ * @param connectorValues static collection of values returned by this connector
+ * @param attrDepends The AD dependencies
+ * @param dcDepends The DC dependencies
+ * @throws ComponentInitializationException if initialization failed
+ */
public MockDataConnector(String id,
Map<String, IdPAttribute> connectorValues,
Set<ResolverAttributeDefinitionDependency> attrDepends,
diff --git a/shib-attribute-testing/src/main/java/net/shibboleth/idp/attribute/resolver/testing/ResolverTestSupport.java b/shib-attribute-testing/src/main/java/net/shibboleth/idp/attribute/resolver/testing/ResolverTestSupport.java
index 7c94d62e1..6dbdd789e 100644
--- a/shib-attribute-testing/src/main/java/net/shibboleth/idp/attribute/resolver/testing/ResolverTestSupport.java
+++ b/shib-attribute-testing/src/main/java/net/shibboleth/idp/attribute/resolver/testing/ResolverTestSupport.java
@@ -24,33 +24,47 @@ import java.util.List;
import net.shibboleth.idp.attribute.IdPAttribute;
import net.shibboleth.idp.attribute.IdPAttributeValue;
import net.shibboleth.idp.attribute.StringAttributeValue;
+import net.shibboleth.idp.attribute.resolver.AttributeDefinition;
+import net.shibboleth.idp.attribute.resolver.DataConnector;
import net.shibboleth.idp.attribute.resolver.ResolutionException;
import net.shibboleth.idp.attribute.resolver.ResolverPlugin;
import net.shibboleth.idp.attribute.resolver.context.AttributeResolutionContext;
import net.shibboleth.idp.attribute.resolver.context.AttributeResolverWorkContext;
import net.shibboleth.shared.component.ComponentInitializationException;
- at SuppressWarnings("javadoc")
+/** Support class for attribute resolvers testing. */
public class ResolverTestSupport {
+ /** eduPersonAfiliation. */
public static final String EPA_ATTRIB_ID = "urn:oid:1.3.6.1.4.1.5923.1.1.1.1";
+ /** Two affiliations. */
public static final String[] EPA1_VALUES = new String[] {"student", "member"};
+ /** Another two affiliations. */
public static final String[] EPA2_VALUES = new String[] {"staff", "member"};
+ /** Three affiliations. */
public static final String[] EPA3_VALUES = new String[] {"student", "part-time-student", "library-walk-in"};
+ /** eduPersonEntitlement. */
public static final String EPE_ATTRIB_ID = "urn:oid:1.3.6.1.4.1.5923.1.1.1.7";
+ /** Two entitlement URIs. */
public static final String[] EPE1_VALUES = new String[] {"http://example.org/entitlement1",
"http://example.org/entitlement2"};
+ /** An entitlement URN. */
public static final String[] EPE2_VALUES = new String[] {"urn:example.org:entitlement1"};
+ /** A different entitlement URN. */
public static final String[] EPE3_VALUES = new String[] {"urn:example.org:entitlement2"};
- public static AttributeResolutionContext buildResolutionContext(ResolverPlugin<?>... plugins) {
+ /** work method to build a {@link AttributeResolutionContext}
+ * @param plugins what to pupulate
+ * @return the context
+ */
+ public static AttributeResolutionContext buildResolutionContext(final ResolverPlugin<?>... plugins) {
final AttributeResolutionContext resolutionContext = new AttributeResolutionContext();
final AttributeResolverWorkContext workContext =
resolutionContext.getSubcontext(AttributeResolverWorkContext.class, true);
@@ -78,11 +92,16 @@ public class ResolverTestSupport {
return resolutionContext;
}
- public static IdPAttribute buildAttribute(String attributeId, String... values) {
+ /** Construct a test {@link IdPAttribute}
+ * @param attributeId its name
+ * @param values its values (as strings)
+ * @return the Attribute
+ */
+ public static IdPAttribute buildAttribute(final String attributeId, final String... values) {
final IdPAttribute attribute = new IdPAttribute(attributeId);
List<IdPAttributeValue> valueList = new ArrayList<>();
- for (String value : values) {
+ for (final String value : values) {
valueList.add(StringAttributeValue.valueOf(value));
}
attribute.setValues(valueList);
@@ -90,7 +109,12 @@ public class ResolverTestSupport {
return attribute;
}
- public static MockStaticAttributeDefinition buildAttributeDefinition(String attributeId, String... values) {
+ /** Construct a test {@link AttributeDefinition}
+ * @param attributeId the name
+ * @param values the values
+ * @return the definition
+ */
+ public static MockStaticAttributeDefinition buildAttributeDefinition(final String attributeId, final String... values) {
final IdPAttribute attribute = buildAttribute(attributeId, values);
try {
@@ -106,7 +130,12 @@ public class ResolverTestSupport {
}
}
- public static MockStaticDataConnector buildDataConnector(String connectorId, IdPAttribute... attributes) {
+ /** Construct a test {@link DataConnector}
+ * @param connectorId the name
+ * @param attributes what to return
+ * @return the definition
+ */
+ public static MockStaticDataConnector buildDataConnector(final String connectorId, final IdPAttribute... attributes) {
try {
final MockStaticDataConnector connector = new MockStaticDataConnector();
diff --git a/shib-attribute-testing/src/main/java/net/shibboleth/idp/attribute/resolver/testing/TestSources.java b/shib-attribute-testing/src/main/java/net/shibboleth/idp/attribute/resolver/testing/TestSources.java
index 10f0236dd..323c391df 100644
--- a/shib-attribute-testing/src/main/java/net/shibboleth/idp/attribute/resolver/testing/TestSources.java
+++ b/shib-attribute-testing/src/main/java/net/shibboleth/idp/attribute/resolver/testing/TestSources.java
@@ -52,10 +52,10 @@ public final class TestSources {
/** The name we use in this test for the static connector. */
public static final String STATIC_CONNECTOR_NAME = "staticCon";
-
/** The name of the attribute we use as source. */
public static final String DEPENDS_ON_ATTRIBUTE_NAME_ATTR = "at1";
+ /** The name of the connector we use as source. */
public static final String DEPENDS_ON_ATTRIBUTE_NAME_CONNECTOR = "ac1";
/** The name of another attribute we use as source. */
@@ -64,6 +64,7 @@ public final class TestSources {
/** Another attributes values. */
public static final String[] SECOND_ATTRIBUTE_VALUE_STRINGS = {"at2-Val1", "at2-Val2"};
+ /** Some test attributes. */
public static final StringAttributeValue[] SECOND_ATTRIBUTE_VALUE_RESULTS = {
new StringAttributeValue(SECOND_ATTRIBUTE_VALUE_STRINGS[0]),
new StringAttributeValue(SECOND_ATTRIBUTE_VALUE_STRINGS[0]),};
@@ -71,28 +72,32 @@ public final class TestSources {
/** A value from both providers. */
public static final String COMMON_ATTRIBUTE_VALUE_STRING = "at1-Data";
+ /** A test attribute value. */
public static final StringAttributeValue COMMON_ATTRIBUTE_VALUE_RESULT = new StringAttributeValue(
COMMON_ATTRIBUTE_VALUE_STRING);
/** A value from the connector. */
public static final String CONNECTOR_ATTRIBUTE_VALUE_STRING = "at1-Connector";
+ /** A test attribute value. */
public static final StringAttributeValue CONNECTOR_ATTRIBUTE_VALUE_RESULT = new StringAttributeValue(
CONNECTOR_ATTRIBUTE_VALUE_STRING);
/** A value from the attribute. */
public static final String ATTRIBUTE_ATTRIBUTE_VALUE_STRING = "at1-Attribute";
+ /** A test attribute value. */
public static final StringAttributeValue ATTRIBUTE_ATTRIBUTE_VALUE_RESULT = new StringAttributeValue(
ATTRIBUTE_ATTRIBUTE_VALUE_STRING);
- /** Regexp. for CONNECTOR_ATTRIBUTE_VALUE (for map and regexp testing). */
-
+ /** Regexp (as string). for CONNECTOR_ATTRIBUTE_VALUE (for map and regexp testing). */
public static final String CONNECTOR_ATTRIBUTE_VALUE_REGEXP = "at1-(.+)or";
+ /** Regexp. for CONNECTOR_ATTRIBUTE_VALUE (for map and regexp testing). */
public static final Pattern CONNECTOR_ATTRIBUTE_VALUE_REGEXP_PATTERN = Pattern
.compile(CONNECTOR_ATTRIBUTE_VALUE_REGEXP);
+ /** Result from a regexp. */
public static final StringAttributeValue CONNECTOR_ATTRIBUTE_VALUE_REGEXP_RESULT = new StringAttributeValue(
"Connect");
@@ -105,10 +110,13 @@ public final class TestSources {
/** Authentication method for Principal method tests */
public static final String TEST_AUTHN_METHOD = "AuthNmEthod";
+ /** A standard IdP EntityID */
public static final String IDP_ENTITY_ID = "https://idp.example.org/idp";
+ /** A standard Principal Name*/
public static final String PRINCIPAL_ID = "PETER_THE_PRINCIPAL";
+ /** A standard SP EntityID */
public static final String SP_ENTITY_ID = "https://sp.example.org/sp";
/** Constructor. */
@@ -165,6 +173,12 @@ public final class TestSources {
return populatedStaticAttribute(DEPENDS_ON_ATTRIBUTE_NAME_ATTR, 2);
}
+ /** return an {@link AttributeDefinition} with static contents
+ * @param attributeName the name
+ * @param attributeValuesCount how many (of the fix values) to add
+ * @return the definition
+ * @throws ComponentInitializationException if intialization fails
+ */
public static AttributeDefinition populatedStaticAttribute(String attributeName,
int attributeValuesCount) throws ComponentInitializationException {
@@ -202,6 +216,12 @@ public final class TestSources {
return definition;
}
+ /** Build an appropriate {@link AttributeResolutionContext}.
+ * @param principal the Principal
+ * @param issuerID the issues
+ * @param recipientId the recipient
+ * @return the context
+ */
public static AttributeResolutionContext createResolutionContext(String principal, String issuerID,
String recipientId) {
ProfileRequestContext parent = new ProfileRequestContext();
@@ -215,11 +235,20 @@ public final class TestSources {
return retVal;
}
+ /** Summon up appropriate {@link ResolverAttributeDefinitionDependency}.
+ * @param attributeId what to depend on
+ * @return the dependency
+ */
public static ResolverAttributeDefinitionDependency makeAttributeDefinitionDependency(String attributeId) {
ResolverAttributeDefinitionDependency retVal = new ResolverAttributeDefinitionDependency(attributeId);
return retVal;
}
+ /** Summon up appropriate {@link ResolverDataConnectorDependency}.
+ * @param connectorId connector to depend on
+ * @param attributeId attribute to depend on
+ * @return the dependency
+ */
public static ResolverDataConnectorDependency makeDataConnectorDependency(@Nonnull String connectorId, @Nullable String attributeId) {
ResolverDataConnectorDependency retVal = new ResolverDataConnectorDependency(connectorId);
if (null == attributeId) {
@@ -230,6 +259,7 @@ public final class TestSources {
return retVal;
}
+ /** Helper class. We cannot use the definition in the resolver-impl package because of dependency circularity. */
private static class StaticAttributeDefinition extends AbstractAttributeDefinition {
/** Static value returned by this definition. */
@@ -271,6 +301,7 @@ public final class TestSources {
}
}
+ /** Helper class. We cannot use the definition in the resolver-impl package because of dependency circularity. */
private static class StaticDataConnector extends AbstractDataConnector {
/** Static collection of values returned by this connector. */
--
To stop receiving notification emails like this one, please contact
the administrator of this repository.
More information about the commits
mailing list