[java-oidfed-common] 01/02: Add missing null-checks in init for @NonnullAfterInit variables

Codeberg noreply at shibboleth.net
Wed Sep 30 17:33:08 UTC 2026


This is an automated email from the git hooks/post-receive script.

codeberg pushed a commit to branch main
in repository java-oidfed-common.

View the commit online:
https://codeberg.org/Shibboleth/java-oidfed-common/commit/fed9b94e1d619af7a965fa97dba67fa31a99fe69

commit fed9b94e1d619af7a965fa97dba67fa31a99fe69
Author: Henri Mikkonen <henri.mikkonen at iki.fi>
AuthorDate: Wed Sep 30 15:29:35 2026 +0300

    Add missing null-checks in init for @NonnullAfterInit variables
---
 .../DefaultPrivateKeyJwtClientAuthenticationFunction.java    |  7 +++++--
 .../policy/impl/DefaultFederationMetadataPolicyEnforcer.java | 10 ++++++++++
 .../impl/DefaultFederationMetadataPolicyMergingStrategy.java | 12 +++++++++++-
 .../impl/ValidateResolveEntityProfileConfiguration.java      | 10 ++++++++++
 4 files changed, 36 insertions(+), 3 deletions(-)

diff --git a/oidfed-common-impl/src/main/java/net/shibboleth/oidfed/metadata/cache/DefaultPrivateKeyJwtClientAuthenticationFunction.java b/oidfed-common-impl/src/main/java/net/shibboleth/oidfed/metadata/cache/DefaultPrivateKeyJwtClientAuthenticationFunction.java
index 8f3e70c..d30921d 100644
--- a/oidfed-common-impl/src/main/java/net/shibboleth/oidfed/metadata/cache/DefaultPrivateKeyJwtClientAuthenticationFunction.java
+++ b/oidfed-common-impl/src/main/java/net/shibboleth/oidfed/metadata/cache/DefaultPrivateKeyJwtClientAuthenticationFunction.java
@@ -203,10 +203,13 @@ public class DefaultPrivateKeyJwtClientAuthenticationFunction extends AbstractId
             throw new ComponentInitializationException("The type header lookup strategy cannot be null");
         }
         if (audienceLookupStrategy == null) {
-            throw new ComponentInitializationException("The audience lookup strategy cannot be null)");
+            throw new ComponentInitializationException("The audience lookup strategy cannot be null");
         }
         if (issuerLookupStrategy == null) {
-            throw new ComponentInitializationException("The issuer lookup strategy cannot be null)");
+            throw new ComponentInitializationException("The issuer lookup strategy cannot be null");
+        }
+        if (resolver == null) {
+            throw new ComponentInitializationException("SignatureSigningParametersResolver cannot be null");
         }
         if (objectMapper == null) {
             throw new ComponentInitializationException("Object mapper cannot be null");
diff --git a/oidfed-common-impl/src/main/java/net/shibboleth/oidfed/metadata/policy/impl/DefaultFederationMetadataPolicyEnforcer.java b/oidfed-common-impl/src/main/java/net/shibboleth/oidfed/metadata/policy/impl/DefaultFederationMetadataPolicyEnforcer.java
index b5df4a4..82fd9d0 100644
--- a/oidfed-common-impl/src/main/java/net/shibboleth/oidfed/metadata/policy/impl/DefaultFederationMetadataPolicyEnforcer.java
+++ b/oidfed-common-impl/src/main/java/net/shibboleth/oidfed/metadata/policy/impl/DefaultFederationMetadataPolicyEnforcer.java
@@ -28,6 +28,7 @@ import net.shibboleth.oidfed.metadata.policy.FederationMetadataPolicyOperator;
 import net.shibboleth.shared.annotation.constraint.NonnullAfterInit;
 import net.shibboleth.shared.collection.Pair;
 import net.shibboleth.shared.component.AbstractIdentifiableInitializableComponent;
+import net.shibboleth.shared.component.ComponentInitializationException;
 import net.shibboleth.shared.logic.Constraint;
 import net.shibboleth.shared.logic.ConstraintViolationException;
 import net.shibboleth.shared.primitive.LoggerFactory;
@@ -62,6 +63,15 @@ public class DefaultFederationMetadataPolicyEnforcer extends AbstractIdentifiabl
         operators = Constraint.isNotNull(policyOperators, "List of metadata policy operators cannot be null");
     }
 
+    /** {@inheritDoc} */
+    protected void doInitialize() throws ComponentInitializationException {
+        super.doInitialize();
+
+        if (operators == null) {
+            throw new ComponentInitializationException("List of metadata policy operators cannot be null");
+        }
+    }
+
     /** {@inheritDoc} */
     @Override @Nullable public Pair<Object, Boolean> apply(@Nullable final Object candidate, 
             @Nullable final MetadataPolicy policy) {
diff --git a/oidfed-common-impl/src/main/java/net/shibboleth/oidfed/metadata/policy/impl/DefaultFederationMetadataPolicyMergingStrategy.java b/oidfed-common-impl/src/main/java/net/shibboleth/oidfed/metadata/policy/impl/DefaultFederationMetadataPolicyMergingStrategy.java
index 6f2c80d..670fbc0 100644
--- a/oidfed-common-impl/src/main/java/net/shibboleth/oidfed/metadata/policy/impl/DefaultFederationMetadataPolicyMergingStrategy.java
+++ b/oidfed-common-impl/src/main/java/net/shibboleth/oidfed/metadata/policy/impl/DefaultFederationMetadataPolicyMergingStrategy.java
@@ -34,6 +34,7 @@ import net.shibboleth.oidfed.metadata.policy.FederationMetadataPolicyOperator;
 import net.shibboleth.shared.annotation.constraint.NonnullAfterInit;
 import net.shibboleth.shared.collection.Pair;
 import net.shibboleth.shared.component.AbstractIdentifiableInitializableComponent;
+import net.shibboleth.shared.component.ComponentInitializationException;
 import net.shibboleth.shared.logic.Constraint;
 import net.shibboleth.shared.logic.ConstraintViolationException;
 import net.shibboleth.shared.primitive.LoggerFactory;
@@ -54,7 +55,7 @@ public class DefaultFederationMetadataPolicyMergingStrategy extends AbstractIden
     @NonnullAfterInit List<FederationMetadataPolicyOperator> operators;
 
     /**
-     * Set the list of metadata policy operators used for enforcing the metadata policy.
+     * Set the list of metadata policy operators used for merging the metadata policy.
      * 
      * @param policyOperators What to set
      */
@@ -63,6 +64,15 @@ public class DefaultFederationMetadataPolicyMergingStrategy extends AbstractIden
         operators = Constraint.isNotNull(policyOperators, "List of metadata policy operators cannot be null");
     }
 
+    /** {@inheritDoc} */
+    protected void doInitialize() throws ComponentInitializationException {
+        super.doInitialize();
+
+        if (operators == null) {
+            throw new ComponentInitializationException("List of metadata policy operators cannot be null");
+        }
+    }
+
     /** {@inheritDoc} */
     @Nonnull
     public Pair<Map<String, MetadataPolicy>, Boolean> apply(@Nullable final Map<String,MetadataPolicy> first,
diff --git a/oidfed-common-impl/src/main/java/net/shibboleth/oidfed/profile/impl/ValidateResolveEntityProfileConfiguration.java b/oidfed-common-impl/src/main/java/net/shibboleth/oidfed/profile/impl/ValidateResolveEntityProfileConfiguration.java
index 335e9a7..3b9cea2 100644
--- a/oidfed-common-impl/src/main/java/net/shibboleth/oidfed/profile/impl/ValidateResolveEntityProfileConfiguration.java
+++ b/oidfed-common-impl/src/main/java/net/shibboleth/oidfed/profile/impl/ValidateResolveEntityProfileConfiguration.java
@@ -37,6 +37,7 @@ import net.shibboleth.shared.annotation.constraint.NonnullAfterInit;
 import net.shibboleth.shared.annotation.constraint.NonnullBeforeExec;
 import net.shibboleth.shared.annotation.constraint.NotEmpty;
 import net.shibboleth.shared.collection.CollectionSupport;
+import net.shibboleth.shared.component.ComponentInitializationException;
 import net.shibboleth.shared.logic.Constraint;
 import net.shibboleth.shared.primitive.LoggerFactory;
 import net.shibboleth.shared.primitive.StringSupport;
@@ -124,6 +125,15 @@ public class ValidateResolveEntityProfileConfiguration extends AbstractProfileAc
                 "Subject entity ID lookup strategy cannot be null");
     }
 
+    /** {@inheritDoc} */
+    protected void doInitialize() throws ComponentInitializationException {
+        super.doInitialize();
+
+        if (subjectEntityIdLookupStrategy == null) {
+            throw new ComponentInitializationException("Subject entity ID lookup strategy cannot be null");
+        }
+    }
+
     /** {@inheritDoc} */
     @Override
     protected boolean doPreExecute(@Nonnull final ProfileRequestContext profileRequestContext) {

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.


More information about the commits mailing list