[java-idp-plugin-oidc-rp] branch main updated: JOIDCRP-41 - Upgrade for IdP V5 compatibility

Phil Smart philip.smart at jisc.ac.uk
Mon Jul 17 14:01:57 UTC 2023


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

philsmart pushed a commit to branch main
in repository java-idp-plugin-oidc-rp.

View the commit online:
http://git.shibboleth.net/view/?p=java-idp-plugin-oidc-rp.git;a=commit;h=e8a5dd1e810a3c0534c1a3c8a1a3598d82f3e736

The following commit(s) were added to refs/heads/main by this push:
     new e8a5dd1  JOIDCRP-41 - Upgrade for IdP V5 compatibility
e8a5dd1 is described below

commit e8a5dd1e810a3c0534c1a3c8a1a3598d82f3e736
Author: Phil Smart <philip.smart at jisc.ac.uk>
AuthorDate: Mon Jul 17 15:01:54 2023 +0100

    JOIDCRP-41 - Upgrade for IdP V5 compatibility
    
     - Remove calls to ComponentSupport.
     - Replace with checkSetterPreconditions or similar where appropriate
    
    https://shibboleth.atlassian.net/browse/JOIDCRP-41
---
 .../impl/AbstractJSONResponseDecoderFunction.java      |  3 +--
 .../encoding/impl/AbstractRequestEncoderFunction.java  |  5 ++---
 .../encoding/impl/DefaultUserInfoRequestEncoder.java   |  6 ++----
 .../rp/impl/AbstractHttpOIDCAuthenticationAction.java  | 12 ++++--------
 .../impl/AbstractOIDCAuthenticationResponseAction.java |  2 +-
 .../authn/oidc/rp/impl/AuthorizationController.java    |  9 +++------
 .../plugin/authn/oidc/rp/impl/BuildRequestObject.java  | 14 ++++++--------
 .../rp/impl/DefaultRedirectUriCreationFunction.java    |  9 +++------
 .../authn/oidc/rp/impl/ExchangeCodeForAccessToken.java |  2 +-
 .../oidc/rp/impl/InitializeAuthorizationRequest.java   |  3 +--
 .../InitializeOAuth2ClientAuthenticationContext.java   |  3 +--
 ...tializeOAuth2ClientAuthenticationMethodHandler.java | 15 +++++----------
 .../oidc/rp/impl/InitializeOAuth2ClientContext.java    |  5 ++---
 ...lizeOutboundAuthorizationRequestMessageContext.java |  4 ++--
 .../oidc/rp/impl/InitializeRelyingPartyContext.java    |  6 +++---
 .../impl/InitializeUnverifiedRelyingPartyContext.java  |  2 +-
 .../oidc/rp/impl/PrepareOIDCInboundMessageContext.java |  6 +++---
 .../authn/oidc/rp/impl/ProcessEndUserClaims.java       | 15 +++++----------
 .../authn/oidc/rp/impl/UserInfoEndpointLookup.java     |  2 +-
 .../oidc/rp/impl/ValidateOAuthAccessTokenResponse.java |  2 +-
 .../authn/oidc/rp/impl/ValidateOIDCAuthentication.java | 18 ++++++------------
 .../plugin/authn/oidc/rp/impl/ValidateTokenClaims.java |  9 +++------
 .../oidc/rp/impl/ValidateUserInfoJSONObjectClaims.java |  4 ++--
 ...tOIDCAuthenticationRequestActionMessageHandler.java |  6 +++---
 ...bstractOIDCAuthenticationRequestMessageHandler.java |  4 ++--
 .../authn/oidc/rp/messaging/impl/AddNonceHandler.java  |  3 +--
 .../oidc/rp/messaging/impl/AddRedirectURIHandler.java  |  3 +--
 .../rp/messaging/impl/AddRequestedClaimsHandler.java   |  3 +--
 .../authn/oidc/rp/messaging/impl/AddStateHandler.java  |  3 +--
 .../impl/OIDCProviderMetadataLookupHandler.java        | 10 ++++------
 30 files changed, 72 insertions(+), 116 deletions(-)

diff --git a/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/decoding/impl/AbstractJSONResponseDecoderFunction.java b/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/decoding/impl/AbstractJSONResponseDecoderFunction.java
index 2dc0dfb..c761b6e 100644
--- a/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/decoding/impl/AbstractJSONResponseDecoderFunction.java
+++ b/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/decoding/impl/AbstractJSONResponseDecoderFunction.java
@@ -48,8 +48,7 @@ public abstract class AbstractJSONResponseDecoderFunction<T> extends AbstractIni
      * @param mapper the object mapper.
      */
     public void setObjectMapper(@Nonnull final ObjectMapper mapper) {
-        ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
-        ComponentSupport.ifDestroyedThrowDestroyedComponentException(this);
+    	checkSetterPreconditions();
 
         objectMapper = Constraint.isNotNull(mapper, "ObjectMapper cannot be null");
     }
diff --git a/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/encoding/impl/AbstractRequestEncoderFunction.java b/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/encoding/impl/AbstractRequestEncoderFunction.java
index ecff570..24efdbf 100644
--- a/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/encoding/impl/AbstractRequestEncoderFunction.java
+++ b/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/encoding/impl/AbstractRequestEncoderFunction.java
@@ -89,8 +89,7 @@ public abstract class AbstractRequestEncoderFunction extends AbstractInitializab
      */
     public void setOIDCClientAuthenticationContextContextLookupStrategy(
             @Nonnull final Function<ProfileRequestContext, OAuth2ClientAuthenticationContext> strgy) {
-        ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
-        ComponentSupport.ifDestroyedThrowDestroyedComponentException(this);
+    	checkSetterPreconditions();
 
         oauth2ClientAuthenticationContextLookupStrategy = Constraint.isNotNull(strgy, 
                 "OAuth2 client context lookup strategy cannot be null");
@@ -103,7 +102,7 @@ public abstract class AbstractRequestEncoderFunction extends AbstractInitializab
      */
     public void setProviderMetadataLookupStrategy(
             @Nonnull final Function<ProfileRequestContext, OIDCProviderMetadataContext> strategy) {
-        ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
+    	checkSetterPreconditions();
         
         providerMetadataLookupStrategy = 
                 Constraint.isNotNull(strategy,"Provider metadata lookup strategy can not be null");
diff --git a/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/encoding/impl/DefaultUserInfoRequestEncoder.java b/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/encoding/impl/DefaultUserInfoRequestEncoder.java
index 3da1521..2878718 100644
--- a/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/encoding/impl/DefaultUserInfoRequestEncoder.java
+++ b/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/encoding/impl/DefaultUserInfoRequestEncoder.java
@@ -80,8 +80,7 @@ public class DefaultUserInfoRequestEncoder extends AbstractRequestEncoderFunctio
      */
     public void setTokenResponseContextLookupStrategy(
             final Function<ProfileRequestContext, AccessTokenResponseContext> strategy) {
-        ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
-        ComponentSupport.ifDestroyedThrowDestroyedComponentException(this);
+    	checkSetterPreconditions();
 
         tokenResponseContextLookupStrategy = Constraint.isNotNull(strategy,
                 "tokenResponseContextLookupStrategy can not be null");
@@ -93,8 +92,7 @@ public class DefaultUserInfoRequestEncoder extends AbstractRequestEncoderFunctio
      * @param strategy the strategy
      */
     public void setHttpMethodLookupStrategy(final Function<ProfileRequestContext, HttpRequestMethod> strategy) {
-        ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
-        ComponentSupport.ifDestroyedThrowDestroyedComponentException(this);
+    	checkSetterPreconditions();
 
         httpMethodLookupStrategy = Constraint.isNotNull(strategy,
                 "httpMethodLookupStrategy can not be null");
diff --git a/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/impl/AbstractHttpOIDCAuthenticationAction.java b/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/impl/AbstractHttpOIDCAuthenticationAction.java
index 2ba9c5d..3eefa12 100644
--- a/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/impl/AbstractHttpOIDCAuthenticationAction.java
+++ b/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/impl/AbstractHttpOIDCAuthenticationAction.java
@@ -110,8 +110,7 @@ public abstract class AbstractHttpOIDCAuthenticationAction<T extends Response>
      * @param strategy the strategy
      */
     public void setHttpResponseDecoderStrategy(@Nonnull final Function<ClassicHttpResponse, T> strategy) {
-        ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
-        ComponentSupport.ifDestroyedThrowDestroyedComponentException(this);
+    	checkSetterPreconditions();
         
         httpResponseDecoderStrategy = Constraint.isNotNull(strategy, "Http decoder strategy can not be null");
     }
@@ -123,8 +122,7 @@ public abstract class AbstractHttpOIDCAuthenticationAction<T extends Response>
      */
     public void setHttpRequestEncoderStrategy(
             @Nonnull final Function<ProfileRequestContext, ClassicHttpRequest> strategy) {
-        ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
-        ComponentSupport.ifDestroyedThrowDestroyedComponentException(this);
+    	checkSetterPreconditions();
         
         httpRequestEncoderStrategy = Constraint.isNotNull(strategy, "Http encoder strategy can not be null");
     }
@@ -135,8 +133,7 @@ public abstract class AbstractHttpOIDCAuthenticationAction<T extends Response>
      * @param client client to use
      */
     public void setHttpClient(@Nonnull final HttpClient client) {
-        ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
-        ComponentSupport.ifDestroyedThrowDestroyedComponentException(this);
+    	checkSetterPreconditions();
 
         httpClient = Constraint.isNotNull(client, "HttpClient cannot be null");
     }
@@ -147,8 +144,7 @@ public abstract class AbstractHttpOIDCAuthenticationAction<T extends Response>
      * @param params the new client security parameters
      */
     public void setHttpClientSecurityParameters(@Nullable final HttpClientSecurityParameters params) {
-        ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
-        ComponentSupport.ifDestroyedThrowDestroyedComponentException(this);
+    	checkSetterPreconditions();
 
         httpClientSecurityParameters = params;
     }
diff --git a/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/impl/AbstractOIDCAuthenticationResponseAction.java b/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/impl/AbstractOIDCAuthenticationResponseAction.java
index ac2380e..f13b193 100644
--- a/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/impl/AbstractOIDCAuthenticationResponseAction.java
+++ b/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/impl/AbstractOIDCAuthenticationResponseAction.java
@@ -81,7 +81,7 @@ public abstract class AbstractOIDCAuthenticationResponseAction extends AbstractA
      */
     public void setProviderMetadataLookupStrategy(
             @Nonnull final Function<ProfileRequestContext, OIDCProviderMetadataContext> strategy) {
-        ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
+    	checkSetterPreconditions();
         
         providerMetadataLookupStrategy = 
                 Constraint.isNotNull(strategy,"Provider metadata lookup strategy can not be null");
diff --git a/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/impl/AuthorizationController.java b/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/impl/AuthorizationController.java
index 2fd70b0..c48963b 100644
--- a/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/impl/AuthorizationController.java
+++ b/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/impl/AuthorizationController.java
@@ -118,8 +118,7 @@ public class AuthorizationController extends AbstractInitializableComponent {
      */
     public void setOAuth2ClientContextLookupStrategy(
             @Nonnull final Function<ProfileRequestContext, OAuth2ClientContext> strgy) {
-        ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
-        ComponentSupport.ifDestroyedThrowDestroyedComponentException(this);
+    	checkSetterPreconditions();        
 
         oauth2ClientContextLookupStrategy = Constraint.isNotNull(strgy, 
                 "OAuth2 client context lookup strategy cannot be null");
@@ -132,8 +131,7 @@ public class AuthorizationController extends AbstractInitializableComponent {
      */
     public void setProfileRequestContextLookupStrategy(
             @Nonnull final Function<ProfileRequestContext,ProfileRequestContext> strategy) {
-        ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
-        ComponentSupport.ifDestroyedThrowDestroyedComponentException(this);
+    	checkSetterPreconditions();
         
         profileRequestContextLookupStrategy = Constraint.isNotNull(strategy,
                 "ProfileRequestContext lookup strategy cannot be null");
@@ -146,8 +144,7 @@ public class AuthorizationController extends AbstractInitializableComponent {
      */
     public void setOidcAuthnContextLookupStrategy(
             @Nonnull final Function<ProfileRequestContext,OIDCAuthnContext> strategy) {
-        ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
-        ComponentSupport.ifDestroyedThrowDestroyedComponentException(this);
+    	checkSetterPreconditions();
         
         oidcContextLookupStrategy = Constraint.isNotNull(strategy, "OIDCAuthnContext lookup strategy cannot be null");
     }    
diff --git a/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/impl/BuildRequestObject.java b/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/impl/BuildRequestObject.java
index c686989..193d858 100644
--- a/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/impl/BuildRequestObject.java
+++ b/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/impl/BuildRequestObject.java
@@ -118,7 +118,7 @@ public class BuildRequestObject extends AbstractAuthenticationAction {
      */
     public void setRelyingPartyContextLookupStrategy(
             @Nonnull final Function<ProfileRequestContext,RelyingPartyContext> strategy) {
-        ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
+    	checkSetterPreconditions();
         
         relyingPartyContextLookupStrategy =
                 Constraint.isNotNull(strategy, "RelyingPartyContext lookup strategy cannot be null");
@@ -131,7 +131,7 @@ public class BuildRequestObject extends AbstractAuthenticationAction {
      */
     public void setProviderMetadataLookupStrategy(
             @Nonnull final Function<ProfileRequestContext, OIDCProviderMetadataContext> strategy) {
-        ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
+    	checkSetterPreconditions();
         
         providerMetadataLookupStrategy = 
                 Constraint.isNotNull(strategy,"Provider metadata lookup strategy can not be null");
@@ -145,8 +145,7 @@ public class BuildRequestObject extends AbstractAuthenticationAction {
      * @param predicate the hook to run
      */
     public void setClaimsSetIsValidPredicate(@Nullable final Predicate<ClaimsSet> predicate) {
-        ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
-        ComponentSupport.ifDestroyedThrowDestroyedComponentException(this);
+    	checkSetterPreconditions();
         
         if (predicate != null) {
             claimsSetIsValidPredicate = predicate;
@@ -160,8 +159,7 @@ public class BuildRequestObject extends AbstractAuthenticationAction {
      * @param predicate the predicate
      */
     public void setRequestObjectToBeSignedPredicate(@Nullable final Predicate<ProfileRequestContext> predicate) {
-        ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
-        ComponentSupport.ifDestroyedThrowDestroyedComponentException(this);
+    	checkSetterPreconditions();
         
         if (predicate != null) {
             requestObjectToBeSignedPredicate = predicate;
@@ -286,9 +284,9 @@ public class BuildRequestObject extends AbstractAuthenticationAction {
      */
     private void setClaimIfPresent(
             @Nonnull final ClaimsSet claims, @Nonnull final String claimName, @Nullable final Object claim) {
-        if (claim instanceof Duration) {
+        if (claim instanceof Duration duration) {
             // Convert to seconds
-            claims.setClaim(claimName, ((Duration)claim).toSeconds());
+            claims.setClaim(claimName, duration.toSeconds());
         } else if (claim != null) {
             claims.setClaim(claimName, claim.toString());
         }
diff --git a/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/impl/DefaultRedirectUriCreationFunction.java b/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/impl/DefaultRedirectUriCreationFunction.java
index 5c2b4aa..36d17df 100644
--- a/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/impl/DefaultRedirectUriCreationFunction.java
+++ b/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/impl/DefaultRedirectUriCreationFunction.java
@@ -106,8 +106,7 @@ public class DefaultRedirectUriCreationFunction extends AbstractIdentifiableInit
      * @param path the callback servlet path
      */
     public void setCallbackServletPath(@Nonnull @NotEmpty final String path) {
-        ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
-        ComponentSupport.ifDestroyedThrowDestroyedComponentException(this);
+    	checkSetterPreconditions();
 
         callbackServletPath = Constraint.isNotEmpty(path, "callbackServletPath can not be null");
     }
@@ -118,8 +117,7 @@ public class DefaultRedirectUriCreationFunction extends AbstractIdentifiableInit
      * @param origins the origins
      */
     public void setAllowedOrigins(@Nullable final Set<String> origins) {
-        ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
-        ComponentSupport.ifDestroyedThrowDestroyedComponentException(this);
+    	checkSetterPreconditions();
         
         if (origins == null) {
             allowedOrigins = Collections.emptySet();
@@ -136,8 +134,7 @@ public class DefaultRedirectUriCreationFunction extends AbstractIdentifiableInit
      */
     public void setOAuth2ClientContextLookupStrategy(
             @Nonnull final Function<ProfileRequestContext, OAuth2ClientContext> strgy) {        
-        ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
-        ComponentSupport.ifDestroyedThrowDestroyedComponentException(this);
+    	checkSetterPreconditions();
 
         oauth2ClientContextLookupStrategy = Constraint.isNotNull(strgy, 
                 "OAuth2 client context lookup strategy cannot be null");
diff --git a/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/impl/ExchangeCodeForAccessToken.java b/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/impl/ExchangeCodeForAccessToken.java
index 61980b0..b79bcf9 100644
--- a/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/impl/ExchangeCodeForAccessToken.java
+++ b/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/impl/ExchangeCodeForAccessToken.java
@@ -75,7 +75,7 @@ public class ExchangeCodeForAccessToken extends AbstractHttpOIDCAuthenticationAc
      */
     public void setTokenResponseContextLookupStrategy(
             @Nonnull final Function<ProfileRequestContext, AccessTokenResponseContext> strategy) {
-        ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
+    	checkSetterPreconditions();
         
         tokenResponseContextLookupStrategy = Constraint.isNotNull(strategy,
                 "TokenResponseContext lookup strategy cannot be null");
diff --git a/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/impl/InitializeAuthorizationRequest.java b/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/impl/InitializeAuthorizationRequest.java
index a2a1994..bb6ef4d 100644
--- a/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/impl/InitializeAuthorizationRequest.java
+++ b/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/impl/InitializeAuthorizationRequest.java
@@ -75,8 +75,7 @@ public class InitializeAuthorizationRequest extends AbstractProfileAction {
      */
     public void setOAuth2ClientContextLookupStrategy(
             @Nonnull final Function<ProfileRequestContext, OAuth2ClientContext> strgy) {
-        ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
-        ComponentSupport.ifDestroyedThrowDestroyedComponentException(this);
+    	checkSetterPreconditions();
 
         oauth2ClientContextLookupStrategy = Constraint.isNotNull(strgy, 
                 "OAuth2 client context lookup strategy cannot be null");
diff --git a/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/impl/InitializeOAuth2ClientAuthenticationContext.java b/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/impl/InitializeOAuth2ClientAuthenticationContext.java
index a22dabe..b4bbd4e 100644
--- a/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/impl/InitializeOAuth2ClientAuthenticationContext.java
+++ b/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/impl/InitializeOAuth2ClientAuthenticationContext.java
@@ -73,8 +73,7 @@ public class InitializeOAuth2ClientAuthenticationContext extends AbstractMessage
      */
     public void setOAuth2ClientAuthenticationContextLookupStrategy(
             @Nonnull final Function<MessageContext, OAuth2ClientAuthenticationContext> strgy) {
-        ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
-        ComponentSupport.ifDestroyedThrowDestroyedComponentException(this);
+    	checkSetterPreconditions();
 
         oauth2ClientAuthenticationContextLookupStrategy = Constraint.isNotNull(strgy, 
                 "OAuth2 client authentication context lookup strategy cannot be null");
diff --git a/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/impl/InitializeOAuth2ClientAuthenticationMethodHandler.java b/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/impl/InitializeOAuth2ClientAuthenticationMethodHandler.java
index d6d6c15..ca2f966 100644
--- a/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/impl/InitializeOAuth2ClientAuthenticationMethodHandler.java
+++ b/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/impl/InitializeOAuth2ClientAuthenticationMethodHandler.java
@@ -162,8 +162,7 @@ public class InitializeOAuth2ClientAuthenticationMethodHandler extends AbstractM
      * @param expiry the JWT 'exp' claim offset
      */
     public void setJwtBearerExpiryOffset(@Nonnull final Duration expiry) {
-        ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
-        ComponentSupport.ifDestroyedThrowDestroyedComponentException(this);
+    	checkSetterPreconditions();
 
         jwtBearerExpiryOffset = Constraint.isNotNull(expiry, "jwtBearerExpiryOffset can not be null");
     }
@@ -175,8 +174,7 @@ public class InitializeOAuth2ClientAuthenticationMethodHandler extends AbstractM
      */
     public void setProviderMetadataLookupStrategy(
             @Nonnull final Function<MessageContext, OIDCProviderMetadataContext> strategy) {
-        ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
-        ComponentSupport.ifDestroyedThrowDestroyedComponentException(this);
+    	checkSetterPreconditions();
         
         providerMetadataLookupStrategy = 
                 Constraint.isNotNull(strategy,"Provider metadata lookup strategy can not be null");
@@ -189,8 +187,7 @@ public class InitializeOAuth2ClientAuthenticationMethodHandler extends AbstractM
      */
     public void setSecurityParametersContextLookupStrategy(
             @Nonnull final Function<MessageContext, SecurityParametersContext> strategy) {
-        ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
-        ComponentSupport.ifDestroyedThrowDestroyedComponentException(this);
+    	checkSetterPreconditions();
 
         securityParametersContextLookupStrategy =
                 Constraint.isNotNull(strategy, "JWTSecurityParametersContext lookup strategy cannot be null");
@@ -203,8 +200,7 @@ public class InitializeOAuth2ClientAuthenticationMethodHandler extends AbstractM
      */
     public void setRelyingPartyContextLookupStrategy(
             @Nonnull final Function<ProfileRequestContext,RelyingPartyContext> strategy) {
-        ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
-        ComponentSupport.ifDestroyedThrowDestroyedComponentException(this);
+    	checkSetterPreconditions();
         
         relyingPartyContextLookupStrategy =
                 Constraint.isNotNull(strategy, "RelyingPartyContext lookup strategy cannot be null");
@@ -219,8 +215,7 @@ public class InitializeOAuth2ClientAuthenticationMethodHandler extends AbstractM
      */
     public void setOAuth2ClientAuthenticationContextLookupStrategy(
             @Nonnull final Function<MessageContext, OAuth2ClientAuthenticationContext> strgy) {
-        ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
-        ComponentSupport.ifDestroyedThrowDestroyedComponentException(this);
+    	checkSetterPreconditions();
 
         oauth2ClientAuthenticationContextLookupStrategy = Constraint.isNotNull(strgy, 
                 "OAuth2 client authentication context lookup strategy cannot be null");
diff --git a/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/impl/InitializeOAuth2ClientContext.java b/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/impl/InitializeOAuth2ClientContext.java
index d44175f..ab62230 100644
--- a/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/impl/InitializeOAuth2ClientContext.java
+++ b/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/impl/InitializeOAuth2ClientContext.java
@@ -104,7 +104,7 @@ public class InitializeOAuth2ClientContext extends AbstractProfileAction {
      */
     public void setRedirectUriOverrideLookupStrategy(
             @Nonnull final Function<ProfileRequestContext, URI> strategy) {
-        ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
+    	checkSetterPreconditions();
         
         redirectUriOverrideLookupStrategy = 
                 Constraint.isNotNull(strategy, "Redirect URI lookup strategy can not be null");
@@ -118,8 +118,7 @@ public class InitializeOAuth2ClientContext extends AbstractProfileAction {
      */
     public void setOAuth2ClientContextLookupStrategy(
             @Nonnull final Function<ProfileRequestContext, OAuth2ClientContext> strgy) {
-        ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
-        ComponentSupport.ifDestroyedThrowDestroyedComponentException(this);
+    	checkSetterPreconditions();
 
         oauth2ClientContextLookupStrategy = Constraint.isNotNull(strgy, 
                 "OAuth2 client context lookup strategy cannot be null");
diff --git a/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/impl/InitializeOutboundAuthorizationRequestMessageContext.java b/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/impl/InitializeOutboundAuthorizationRequestMessageContext.java
index 8c21859..31fbe84 100644
--- a/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/impl/InitializeOutboundAuthorizationRequestMessageContext.java
+++ b/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/impl/InitializeOutboundAuthorizationRequestMessageContext.java
@@ -86,7 +86,7 @@ public class InitializeOutboundAuthorizationRequestMessageContext extends Abstra
      */
     public void setOIDCClientMetadataContextLookupStrategy(
             @Nonnull final Function<ProfileRequestContext, OIDCMetadataContext> strgy) {
-        ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
+    	checkSetterPreconditions();
 
         oidcClientMetadataCtxLookupStrategy = Constraint.isNotNull(strgy, "Injected Metadata Strategy cannot be null");
     }
@@ -100,7 +100,7 @@ public class InitializeOutboundAuthorizationRequestMessageContext extends Abstra
      */
     public void setRelyingPartyContextLookupStrategy(
             @Nonnull final Function<ProfileRequestContext, RelyingPartyContext> strategy) {
-        ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
+    	checkSetterPreconditions();
 
         relyingPartyCtxLookupStrategy =
                 Constraint.isNotNull(strategy, "RelyingPartyContext lookup strategy cannot be null");
diff --git a/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/impl/InitializeRelyingPartyContext.java b/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/impl/InitializeRelyingPartyContext.java
index 4f9f203..e9b9f6a 100644
--- a/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/impl/InitializeRelyingPartyContext.java
+++ b/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/impl/InitializeRelyingPartyContext.java
@@ -87,7 +87,7 @@ public class InitializeRelyingPartyContext extends AbstractProfileAction {
      */
     public void setPeerEntityContextLookupStrategy(
             @Nonnull final Function<ProfileRequestContext,OIDCPeerEntityContext> strategy) {
-        ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
+    	checkSetterPreconditions();
 
         peerEntityContextLookupStrategy =
                 Constraint.isNotNull(strategy, "OIDCPeerEntityContext lookup strategy cannot be null");
@@ -100,7 +100,7 @@ public class InitializeRelyingPartyContext extends AbstractProfileAction {
      */
     public void setRelyingPartyContextCreationStrategy(
             @Nonnull final Function<ProfileRequestContext, RelyingPartyContext> strategy) {
-        ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
+    	checkSetterPreconditions();
 
         relyingPartyContextCreationStrategy =
                 Constraint.isNotNull(strategy, "RelyingPartyContext creation strategy cannot be null");
@@ -113,7 +113,7 @@ public class InitializeRelyingPartyContext extends AbstractProfileAction {
      */
     public void setOidcProviderMetadataContextLookupStrategy(
             @Nonnull final Function<ProfileRequestContext, OIDCProviderMetadataContext> strategy) {
-        ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
+    	checkSetterPreconditions();
 
         oidcProviderMetadataContextLookupStrategy =
                 Constraint.isNotNull(strategy, "OIDCMetadataContext lookup strategy cannot be null");
diff --git a/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/impl/InitializeUnverifiedRelyingPartyContext.java b/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/impl/InitializeUnverifiedRelyingPartyContext.java
index 38478fb..42830dd 100644
--- a/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/impl/InitializeUnverifiedRelyingPartyContext.java
+++ b/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/impl/InitializeUnverifiedRelyingPartyContext.java
@@ -62,7 +62,7 @@ public class InitializeUnverifiedRelyingPartyContext extends AbstractProfileActi
      */
     public void setRelyingPartyContextCreationStrategy(
             @Nonnull final Function<ProfileRequestContext, RelyingPartyContext> strategy) {
-        ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
+    	checkSetterPreconditions();
 
         relyingPartyContextCreationStrategy = Constraint.isNotNull(strategy,
                 "RelyingPartyContext creation strategy cannot be null");
diff --git a/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/impl/PrepareOIDCInboundMessageContext.java b/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/impl/PrepareOIDCInboundMessageContext.java
index f84380b..ba249ac 100644
--- a/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/impl/PrepareOIDCInboundMessageContext.java
+++ b/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/impl/PrepareOIDCInboundMessageContext.java
@@ -90,7 +90,7 @@ public class PrepareOIDCInboundMessageContext extends AbstractProfileAction {
      * @param flag the flag to set.
      */
     public void setAddToExistingInboundMessageContext(final boolean flag) {
-        ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
+    	checkSetterPreconditions();
         
         addToExistingInboundMessageContextPredicate = flag ? Predicates.alwaysTrue() : Predicates.alwaysFalse();
     }
@@ -103,7 +103,7 @@ public class PrepareOIDCInboundMessageContext extends AbstractProfileAction {
      */
     public void setAddToExistingInboundMessageContextPredicate(
             @Nonnull final Predicate<ProfileRequestContext> predicate) {
-        ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
+    	checkSetterPreconditions();
         
         addToExistingInboundMessageContextPredicate = Constraint.isNotNull(predicate, "The predicate can not be null");
     }
@@ -114,7 +114,7 @@ public class PrepareOIDCInboundMessageContext extends AbstractProfileAction {
      * @param strategy lookup strategy
      */
     public void setIdentiferLookupStrategy(@Nonnull final Function<ProfileRequestContext,String> strategy) {
-        ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
+    	checkSetterPreconditions();
         
         identifierLookupStrategy = Constraint.isNotNull(strategy, "Identifier lookup strategy can not be null");
     }
diff --git a/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/impl/ProcessEndUserClaims.java b/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/impl/ProcessEndUserClaims.java
index cd9e93a..bd3afa2 100644
--- a/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/impl/ProcessEndUserClaims.java
+++ b/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/impl/ProcessEndUserClaims.java
@@ -121,8 +121,7 @@ public class ProcessEndUserClaims extends AbstractAuthenticationAction {
      * @param strategy the strategy to use.
      */
     public void setClaimMergingStrategy(@Nonnull final BinaryOperator<ClaimsSet> strategy) {
-        ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
-        ComponentSupport.ifDestroyedThrowDestroyedComponentException(this);
+    	checkSetterPreconditions();
         
         claimMergingStrategy =  Constraint.isNotNull(strategy,
                 "ClaimMergingStrategy cannot be null");
@@ -135,8 +134,7 @@ public class ProcessEndUserClaims extends AbstractAuthenticationAction {
      * @param strategy the strategy to use.
      */
     public void setClaimSanitizationStrategy(@Nonnull final UnaryOperator<ClaimsSet> strategy) {
-        ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
-        ComponentSupport.ifDestroyedThrowDestroyedComponentException(this);
+    	checkSetterPreconditions();;
         
         claimSanitizationStrategy = Constraint.isNotNull(strategy,
                 "ClaimSanatizationStrategy cannot be null");
@@ -167,8 +165,7 @@ public class ProcessEndUserClaims extends AbstractAuthenticationAction {
      */
     public void setEndUserClaimsContextLookupStrategy(
             @Nonnull final Function<ProfileRequestContext, EndUserClaimsContext> strategy) {
-        ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
-        ComponentSupport.ifDestroyedThrowDestroyedComponentException(this);
+    	checkSetterPreconditions();
         
         endUserClaimsContextLookupStrategy = Constraint.isNotNull(strategy,
                 "EndUserClaimsContextLookupStrategy cannot be null");
@@ -182,8 +179,7 @@ public class ProcessEndUserClaims extends AbstractAuthenticationAction {
      */
     public void setAccessTokenResponseContextLookupStrategy(
             @Nonnull final Function<ProfileRequestContext, AccessTokenResponseContext> strategy) {
-        ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
-        ComponentSupport.ifDestroyedThrowDestroyedComponentException(this);
+    	checkSetterPreconditions();
         
         accessTokenResponseContextLookupStrategy = Constraint.isNotNull(strategy,
                 "TokenResponseContext lookup strategy cannot be null");
@@ -196,8 +192,7 @@ public class ProcessEndUserClaims extends AbstractAuthenticationAction {
      */
     public void setUserInfoResponseContextLookupStrategy(
             @Nonnull final Function<ProfileRequestContext, UserInfoResponseContext> strategy) {
-        ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
-        ComponentSupport.ifDestroyedThrowDestroyedComponentException(this);
+    	checkSetterPreconditions();
         
         userInfoResponseContextLookupStrategy = Constraint.isNotNull(strategy,
                 "UserInfoResponseContext lookup strategy cannot be null");
diff --git a/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/impl/UserInfoEndpointLookup.java b/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/impl/UserInfoEndpointLookup.java
index ce6891a..e7deca2 100644
--- a/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/impl/UserInfoEndpointLookup.java
+++ b/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/impl/UserInfoEndpointLookup.java
@@ -73,7 +73,7 @@ public class UserInfoEndpointLookup extends AbstractHttpOIDCAuthenticationAction
      */
     public void setUserInfoResponseContextLookupStrategy(
             @Nonnull final Function<ProfileRequestContext, UserInfoResponseContext> strategy) {
-        ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
+    	checkSetterPreconditions();
         
         userInfoResponseContextLookupStrategy = Constraint.isNotNull(strategy,
                 "UserInfoResponseContext lookup strategy cannot be null");
diff --git a/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/impl/ValidateOAuthAccessTokenResponse.java b/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/impl/ValidateOAuthAccessTokenResponse.java
index bc57212..ccb722d 100644
--- a/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/impl/ValidateOAuthAccessTokenResponse.java
+++ b/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/impl/ValidateOAuthAccessTokenResponse.java
@@ -74,7 +74,7 @@ public class ValidateOAuthAccessTokenResponse extends AbstractAuthenticationActi
      */
     public void setTokenResponseContextLookupStrategy(
             @Nonnull final Function<ProfileRequestContext, AccessTokenResponseContext> strategy) {
-        ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
+    	checkSetterPreconditions();
         
         tokenResponseContextLookupStrategy = Constraint.isNotNull(strategy,
                 "TokenResponseContext lookup strategy cannot be null");
diff --git a/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/impl/ValidateOIDCAuthentication.java b/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/impl/ValidateOIDCAuthentication.java
index 40a2c80..0252310 100644
--- a/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/impl/ValidateOIDCAuthentication.java
+++ b/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/impl/ValidateOIDCAuthentication.java
@@ -167,8 +167,7 @@ public class ValidateOIDCAuthentication extends AbstractValidationAction {
      */
     public void setContextToPrivateCredentialsMappingStrategy(
             @Nullable final Function<ProfileRequestContext, Collection<Principal>> strategy) {
-        ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
-        ComponentSupport.ifDestroyedThrowDestroyedComponentException(this);
+    	checkSetterPreconditions();
 
         contextToPrivateCredentialsMappingStrategy = strategy;
     }
@@ -179,8 +178,7 @@ public class ValidateOIDCAuthentication extends AbstractValidationAction {
      * @param filterService optional filter service for inbound attributes
      */
     public void setAttributeFilter(@Nullable final ReloadableService<AttributeFilter> filterService) {
-        ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
-        ComponentSupport.ifDestroyedThrowDestroyedComponentException(this);
+    	checkSetterPreconditions();
 
         attributeFilterService = filterService;
     }
@@ -192,8 +190,7 @@ public class ValidateOIDCAuthentication extends AbstractValidationAction {
      * @param registry registry service interface
      */
     public void setTranscoderRegistry(@Nonnull final ReloadableService<AttributeTranscoderRegistry> registry) {
-        ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
-        ComponentSupport.ifDestroyedThrowDestroyedComponentException(this);
+    	checkSetterPreconditions();
         
         transcoderRegistry = Constraint.isNotNull(registry, "AttributeTranscoderRegistry cannot be null");
     }
@@ -204,8 +201,7 @@ public class ValidateOIDCAuthentication extends AbstractValidationAction {
      * @param resolver metadata resolver
      */
     public void setMetadataResolver(@Nullable final MetadataResolver resolver) {
-        ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
-        ComponentSupport.ifDestroyedThrowDestroyedComponentException(this);
+    	checkSetterPreconditions();
         
         metadataResolver = resolver;
     }
@@ -217,8 +213,7 @@ public class ValidateOIDCAuthentication extends AbstractValidationAction {
      */
     public void setRelyingPartyContextLookupStrategy(
             @Nonnull final Function<ProfileRequestContext,RelyingPartyContext> strategy) {
-        ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
-        ComponentSupport.ifDestroyedThrowDestroyedComponentException(this);
+    	checkSetterPreconditions();
 
         relyingPartyContextLookupStrategy =
                 Constraint.isNotNull(strategy, "RelyingPartyContext lookup strategy cannot be null");
@@ -233,8 +228,7 @@ public class ValidateOIDCAuthentication extends AbstractValidationAction {
      */
     public void setAttributeExtractionStrategy(
             @Nullable final Function<ProfileRequestContext,Collection<IdPAttribute>> strategy) {
-        ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
-        ComponentSupport.ifDestroyedThrowDestroyedComponentException(this);
+    	checkSetterPreconditions();
         
         attributeExtractionStrategy = strategy;
     }
diff --git a/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/impl/ValidateTokenClaims.java b/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/impl/ValidateTokenClaims.java
index baf5357..685fc0c 100644
--- a/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/impl/ValidateTokenClaims.java
+++ b/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/impl/ValidateTokenClaims.java
@@ -93,8 +93,7 @@ public class ValidateTokenClaims extends AbstractAuthenticationAction {
      * @param strategy the strategy
      */
     public void setJwtLookupStrategy(@Nonnull final Function<ProfileRequestContext, JWT> strategy) {
-        ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
-        ComponentSupport.ifDestroyedThrowDestroyedComponentException(this);
+    	checkSetterPreconditions();
         
         jwtLookupStrategy = Constraint.isNotNull(strategy," JWT lookup strategy can not be null");
     }
@@ -106,8 +105,7 @@ public class ValidateTokenClaims extends AbstractAuthenticationAction {
      * 
      */
     public void setCleanupHook(@Nullable final Consumer<ProfileRequestContext> hook) {
-        ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
-        ComponentSupport.ifDestroyedThrowDestroyedComponentException(this);
+    	checkSetterPreconditions();
         
         cleanupHook = hook;
     }
@@ -119,8 +117,7 @@ public class ValidateTokenClaims extends AbstractAuthenticationAction {
      */
     public void setClaimsValidator(
             @Nonnull final ClaimsValidator validator) {
-        ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
-        ComponentSupport.ifDestroyedThrowDestroyedComponentException(this);
+    	checkSetterPreconditions();
         
         claimsValidator = Constraint.isNotNull(validator, "Claims validator cannot be null");
     }
diff --git a/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/impl/ValidateUserInfoJSONObjectClaims.java b/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/impl/ValidateUserInfoJSONObjectClaims.java
index ca5a0a8..dd6cc5b 100644
--- a/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/impl/ValidateUserInfoJSONObjectClaims.java
+++ b/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/impl/ValidateUserInfoJSONObjectClaims.java
@@ -87,7 +87,7 @@ public class ValidateUserInfoJSONObjectClaims extends AbstractAuthenticationActi
      */
     public void setTokenResponseContextLookupStrategy(
             @Nonnull final Function<ProfileRequestContext, AccessTokenResponseContext> strategy) {
-        ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
+    	checkSetterPreconditions();
         
         tokenResponseContextLookupStrategy = Constraint.isNotNull(strategy,
                 "TokenResponseContext lookup strategy cannot be null");
@@ -100,7 +100,7 @@ public class ValidateUserInfoJSONObjectClaims extends AbstractAuthenticationActi
      */
     public void setUserInfoResponseContextLookupStrategy(
             @Nonnull final Function<ProfileRequestContext, UserInfoResponseContext> strategy) {
-        ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
+    	checkSetterPreconditions();
         
         userInfoResponseContextLookupStrategy = Constraint.isNotNull(strategy,
                 "UserInfoResponseContext lookup strategy cannot be null");
diff --git a/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/messaging/impl/AbstractOIDCAuthenticationRequestActionMessageHandler.java b/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/messaging/impl/AbstractOIDCAuthenticationRequestActionMessageHandler.java
index 5535f4a..a71b254 100644
--- a/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/messaging/impl/AbstractOIDCAuthenticationRequestActionMessageHandler.java
+++ b/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/messaging/impl/AbstractOIDCAuthenticationRequestActionMessageHandler.java
@@ -95,7 +95,7 @@ public abstract class AbstractOIDCAuthenticationRequestActionMessageHandler exte
      * @param requestSupplier the supplier.
      */
     public void setHttpServletRequestSupplier(@Nullable final NonnullSupplier<HttpServletRequest> requestSupplier) {
-        ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
+    	checkSetterPreconditions();
 
         httpServletRequestSupplier = requestSupplier;
     }
@@ -160,7 +160,7 @@ public abstract class AbstractOIDCAuthenticationRequestActionMessageHandler exte
      */
     public void setRelyingPartyContextLookupStrategy(
             @Nonnull final Function<ProfileRequestContext,RelyingPartyContext> strategy) {
-        ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
+    	checkSetterPreconditions();
         
         relyingPartyContextLookupStrategy =
                 Constraint.isNotNull(strategy, "RelyingPartyContext lookup strategy cannot be null");
@@ -173,7 +173,7 @@ public abstract class AbstractOIDCAuthenticationRequestActionMessageHandler exte
      */
     public void setProviderMetadataLookupStrategy(
             @Nonnull final Function<MessageContext, OIDCProviderMetadataContext> strategy) {
-        ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
+    	checkSetterPreconditions();
         
         providerMetadataLookupStrategy = 
                 Constraint.isNotNull(strategy,"Provider metadata lookup strategy can not be null");
diff --git a/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/messaging/impl/AbstractOIDCAuthenticationRequestMessageHandler.java b/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/messaging/impl/AbstractOIDCAuthenticationRequestMessageHandler.java
index d0f10ac..aadae23 100644
--- a/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/messaging/impl/AbstractOIDCAuthenticationRequestMessageHandler.java
+++ b/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/messaging/impl/AbstractOIDCAuthenticationRequestMessageHandler.java
@@ -95,7 +95,7 @@ public abstract class AbstractOIDCAuthenticationRequestMessageHandler extends Ab
      */
     public void setAuthenticationRequestLookupStrategy(
             @Nonnull final Function<MessageContext, OIDCAuthenticationRequest> strategy) {
-        ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
+    	checkSetterPreconditions();
 
         authenticationRequestLookupStrategy =
                 Constraint.isNotNull(strategy, "AuthenticationRequestLookupStrategy lookup strategy cannot be null");
@@ -108,7 +108,7 @@ public abstract class AbstractOIDCAuthenticationRequestMessageHandler extends Ab
      */
     public void setOutboundMessageHandlerContextLookupStrategy(
             @Nonnull final Function<MessageContext, OutboundMessageHandlerContext> strategy) {
-        ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
+    	checkSetterPreconditions();
         
         outboundMessageHandlerContextLookupStrategy = 
                 Constraint.isNotNull(strategy, "outboundMessageHandlerContextLookupStrategy can not be null");
diff --git a/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/messaging/impl/AddNonceHandler.java b/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/messaging/impl/AddNonceHandler.java
index 5e2baff..b76fbcf 100644
--- a/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/messaging/impl/AddNonceHandler.java
+++ b/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/messaging/impl/AddNonceHandler.java
@@ -57,8 +57,7 @@ public class AddNonceHandler extends AbstractOIDCAuthenticationRequestActionMess
      * @param strategy the strategy
      */
     public void setNonceGenerationStrategy(@Nonnull final Function<ProfileRequestContext, Nonce> strategy) {
-        ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
-        ComponentSupport.ifDestroyedThrowDestroyedComponentException(this);
+    	checkSetterPreconditions();
         
         nonceGenerationStrategy = Constraint.isNotNull(strategy, "Nonce generation strategy can not be null");
     }
diff --git a/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/messaging/impl/AddRedirectURIHandler.java b/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/messaging/impl/AddRedirectURIHandler.java
index e2b03c5..d241161 100644
--- a/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/messaging/impl/AddRedirectURIHandler.java
+++ b/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/messaging/impl/AddRedirectURIHandler.java
@@ -53,8 +53,7 @@ public class AddRedirectURIHandler extends AbstractOIDCAuthenticationRequestActi
      */
     public void setRedirectUriCreationStrategy(
             @Nullable final BiFunction<HttpServletRequest, ProfileRequestContext, URI> strategy) {
-        ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
-        ComponentSupport.ifDestroyedThrowDestroyedComponentException(this);
+    	checkSetterPreconditions();
         
         if (strategy != null) {
             redirectUriCreationStrategy = 
diff --git a/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/messaging/impl/AddRequestedClaimsHandler.java b/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/messaging/impl/AddRequestedClaimsHandler.java
index 79ba3c5..b23fceb 100644
--- a/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/messaging/impl/AddRequestedClaimsHandler.java
+++ b/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/messaging/impl/AddRequestedClaimsHandler.java
@@ -60,8 +60,7 @@ public class AddRequestedClaimsHandler extends AbstractOIDCAuthenticationRequest
      * @param hook the hook
      */
     public void setRequestedClaimsHook(@Nullable final Function<ProfileRequestContext, OIDCClaimsRequest> hook) {
-        ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
-        ComponentSupport.ifDestroyedThrowDestroyedComponentException(this);
+    	checkSetterPreconditions();
 
         if (hook != null) {
             requestedClaimsHook = hook;
diff --git a/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/messaging/impl/AddStateHandler.java b/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/messaging/impl/AddStateHandler.java
index 1b6386e..c7eeb2c 100644
--- a/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/messaging/impl/AddStateHandler.java
+++ b/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/messaging/impl/AddStateHandler.java
@@ -69,8 +69,7 @@ public class AddStateHandler extends AbstractOIDCAuthenticationRequestMessageHan
      */
     public void setStateGenerationStrategy(
             @Nullable final  Function<MessageContext, String> strategy) {
-        ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
-        ComponentSupport.ifDestroyedThrowDestroyedComponentException(this);
+    	checkSetterPreconditions();
         
         if (strategy != null) {
             stateGenerationStrategy = strategy;
diff --git a/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/metadata/impl/OIDCProviderMetadataLookupHandler.java b/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/metadata/impl/OIDCProviderMetadataLookupHandler.java
index 10e5228..316524b 100644
--- a/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/metadata/impl/OIDCProviderMetadataLookupHandler.java
+++ b/idp-oidc-rp-impl/src/main/java/net/shibboleth/idp/plugin/authn/oidc/rp/metadata/impl/OIDCProviderMetadataLookupHandler.java
@@ -85,8 +85,7 @@ public class OIDCProviderMetadataLookupHandler extends AbstractMessageHandler {
      */
     public void setContextClassLookupStrategy(
             @Nonnull final Function<MessageContext, ? extends AbstractOIDCEntityContext> strategy) {
-        ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
-        ComponentSupport.ifDestroyedThrowDestroyedComponentException(this);
+    	checkSetterPreconditions();
         contextClassLookupStrategy = 
                 Constraint.isNotNull(strategy, "Context class lookup strategy can not be null");
     }
@@ -97,7 +96,7 @@ public class OIDCProviderMetadataLookupHandler extends AbstractMessageHandler {
      * @param strategy the strategy function
      */
     public void setCopyContextStrategy(@Nullable final Function<MessageContext, OIDCProviderMetadataContext> strategy) {
-        ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
+    	checkSetterPreconditions();
 
         copyContextStrategy = strategy;
     }
@@ -109,8 +108,7 @@ public class OIDCProviderMetadataLookupHandler extends AbstractMessageHandler {
     * @param resolver The resolver to use.
     */
    public void setProviderMetadataResolver(@Nonnull final ProviderMetadataResolver resolver) {
-       ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
-       ComponentSupport.ifDestroyedThrowDestroyedComponentException(this);
+	   checkSetterPreconditions();
 
        providerResolver = Constraint.isNotNull(resolver, "ProviderMetadataResolver cannot be null");
    }
@@ -128,7 +126,7 @@ public class OIDCProviderMetadataLookupHandler extends AbstractMessageHandler {
 
     @Override
     protected void doInvoke(final MessageContext messageContext) throws MessageHandlerException {
-        ComponentSupport.ifNotInitializedThrowUninitializedComponentException(this);
+        ifNotInitializedThrowUninitializedComponentException();
         
         final AbstractOIDCEntityContext entityCtx = contextClassLookupStrategy.apply(messageContext);
 

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


More information about the commits mailing list