[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