[java-shib-attribute] branch main updated: JSPT-98 Integrate lifecycle checking methods in base classes

Rod Widdowson rdw at steadingsoftware.com
Sat Jul 16 10:31:23 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=728842503ed299edf82f1504f5e43512a4e50a25

The following commit(s) were added to refs/heads/main by this push:
     new 728842503 JSPT-98 Integrate lifecycle checking methods in base classes
728842503 is described below

commit 728842503ed299edf82f1504f5e43512a4e50a25
Author: Rod Widdowson <rdw at steadingsoftware.com>
AuthorDate: Fri Jul 15 16:21:33 2022 +0100

    JSPT-98 Integrate lifecycle checking methods in base classes
    
    https://shibboleth.atlassian.net/browse/JSPT-98
    
    rename methods
            throwSetterPreconditionExceptions -> checkSetterPreconditions
            throwComponentStateExceptions -> checkComponentActive
---
 .../transcoding/AbstractAttributeTranscoder.java   |  6 +--
 .../attribute/filter/AttributeFilterPolicy.java    |  2 +-
 .../idp/attribute/filter/AttributeRule.java        |  8 ++--
 .../attribute/filter/impl/AttributeFilterImpl.java |  2 +-
 .../matcher/impl/AbstractRegexpStringMatcher.java  |  4 +-
 .../filter/matcher/impl/ScriptedMatcher.java       |  8 ++--
 .../logic/impl/AbstractComposedMatcher.java        |  2 +-
 .../filter/matcher/logic/impl/AndMatcher.java      |  2 +-
 .../filter/matcher/logic/impl/NotMatcher.java      |  2 +-
 .../filter/matcher/logic/impl/OrMatcher.java       |  2 +-
 .../saml/impl/AttributeInMetadataMatcher.java      | 10 ++---
 .../impl/AttributeIssuerPolicyRule.java            |  2 +-
 .../impl/AttributeIssuerRegexpPolicyRule.java      |  2 +-
 .../impl/AttributeRequesterPolicyRule.java         |  2 +-
 .../impl/AttributeRequesterRegexpPolicyRule.java   |  2 +-
 .../impl/NumOfAttributeValuesPolicyRule.java       |  2 +-
 .../filtercontext/impl/PredicatePolicyRule.java    |  2 +-
 .../impl/PrincipalNamePolicyRule.java              |  2 +-
 .../impl/PrincipalNameRegexpPolicyRule.java        |  2 +-
 .../filtercontext/impl/ProfilePolicyRule.java      |  2 +-
 .../impl/ProxiedRequesterPolicyRule.java           |  2 +-
 .../impl/ProxiedRequesterRegexpPolicyRule.java     |  2 +-
 .../policyrule/impl/AbstractRegexpPolicyRule.java  |  4 +-
 .../policyrule/impl/AbstractStringPolicyRule.java  |  2 +-
 .../filter/policyrule/impl/ScriptedPolicyRule.java |  8 ++--
 .../logic/impl/AbstractComposedPolicyRule.java     |  2 +-
 .../policyrule/logic/impl/AndPolicyRule.java       |  2 +-
 .../policyrule/logic/impl/NotPolicyRule.java       |  2 +-
 .../filter/policyrule/logic/impl/OrPolicyRule.java |  2 +-
 .../impl/AbstractEntityAttributePolicyRule.java    |  8 ++--
 .../saml/impl/AbstractEntityGroupPolicyRule.java   |  6 +--
 .../impl/AbstractNameIDFormatExactPolicyRule.java  |  4 +-
 .../attribute/impl/ComputedPairwiseIdStore.java    | 14 +++---
 .../idp/attribute/impl/JDBCPairwiseIdStore.java    | 52 +++++++++++-----------
 .../impl/AttributeRegistryServiceStrategy.java     |  4 +-
 .../impl/AttributeTranscoderRegistryImpl.java      | 14 +++---
 .../resolver/AbstractAttributeDefinition.java      |  4 +-
 .../attribute/resolver/AbstractDataConnector.java  |  8 ++--
 .../attribute/resolver/AbstractResolverPlugin.java | 10 ++---
 .../attribute/resolver/ResolvedDataConnector.java  |  4 +-
 ...ParameterizedExecutableSearchFilterBuilder.java |  4 +-
 .../TemplatedExecutableSearchFilterBuilder.java    |  6 +--
 .../rdbms/AbstractExecutableStatementBuilder.java  |  2 +-
 .../rdbms/TemplatedExecutableStatementBuilder.java |  6 +--
 .../testing/MockStaticAttributeDefinition.java     |  4 +-
 .../resolver/testing/MockStaticDataConnector.java  |  4 +-
 .../attribute/resolver/testing/TestSources.java    |  2 +-
 .../ad/impl/ContextDerivedAttributeDefinition.java |  2 +-
 .../ad/impl/DecryptedAttributeDefinition.java      |  2 +-
 .../ad/impl/PrescopedAttributeDefinition.java      |  4 +-
 .../ad/impl/RegexSplitAttributeDefinition.java     |  4 +-
 .../ad/impl/ScopedAttributeDefinition.java         |  6 +--
 .../ad/impl/ScriptedAttributeDefinition.java       |  6 +--
 .../ad/impl/StaticAttributeDefinition.java         |  4 +-
 .../ad/impl/TemplateAttributeDefinition.java       |  4 +-
 .../ad/mapped/impl/MappedAttributeDefinition.java  |  8 ++--
 .../resolver/ad/mapped/impl/SourceValue.java       | 10 ++---
 .../dc/http/impl/AbstractHTTPSearchBuilder.java    |  4 +-
 .../resolver/dc/http/impl/HTTPDataConnector.java   |  4 +-
 .../dc/http/impl/TemplatedBodyBuilder.java         | 16 +++----
 .../resolver/dc/http/impl/TemplatedURLBuilder.java |  6 +--
 .../dc/impl/AbstractSearchDataConnector.java       |  8 ++--
 .../dc/impl/ContextDerivedDataConnector.java       |  4 +-
 .../resolver/dc/impl/PairwiseIdDataConnector.java  | 12 ++---
 .../resolver/dc/impl/ScriptedDataConnector.java    |  6 +--
 .../resolver/dc/impl/StaticDataConnector.java      |  4 +-
 .../dc/ldap/impl/ConnectionFactoryValidator.java   |  4 +-
 .../resolver/dc/ldap/impl/LDAPDataConnector.java   |  4 +-
 .../dc/rdbms/impl/DataSourceValidator.java         |  6 +--
 .../resolver/dc/rdbms/impl/RDBMSDataConnector.java |  2 +-
 .../storage/impl/StorageServiceDataConnector.java  |  6 +--
 .../dc/storage/impl/TemplatedSearchBuilder.java    |  8 ++--
 .../resolver/impl/AttributeResolverImpl.java       | 10 ++---
 .../impl/testing/SAMLAttributeDataConnector.java   |  2 +-
 .../SAML1NameIdentifierAttributeDefinition.java    |  6 +--
 .../impl/SAML2NameIDAttributeDefinition.java       |  8 ++--
 76 files changed, 209 insertions(+), 209 deletions(-)

diff --git a/shib-attribute-api/src/main/java/net/shibboleth/idp/attribute/transcoding/AbstractAttributeTranscoder.java b/shib-attribute-api/src/main/java/net/shibboleth/idp/attribute/transcoding/AbstractAttributeTranscoder.java
index 8acb1294f..f919a841b 100644
--- a/shib-attribute-api/src/main/java/net/shibboleth/idp/attribute/transcoding/AbstractAttributeTranscoder.java
+++ b/shib-attribute-api/src/main/java/net/shibboleth/idp/attribute/transcoding/AbstractAttributeTranscoder.java
@@ -59,7 +59,7 @@ public abstract class AbstractAttributeTranscoder<T> extends AbstractInitializab
      * @param condition condition to set
      */
     public void setActivationCondition(@Nonnull final Predicate<ProfileRequestContext> condition) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         
         activationCondition = Constraint.isNotNull(condition, "Activation condition cannot be null");
     }
@@ -68,7 +68,7 @@ public abstract class AbstractAttributeTranscoder<T> extends AbstractInitializab
     @Nullable public T encode(@Nullable final ProfileRequestContext profileRequestContext,
             @Nonnull final IdPAttribute attribute, @Nonnull final Class<? extends T> to,
             @Nonnull final TranscodingRule rule) throws AttributeEncodingException {
-        throwComponentStateExceptions();
+        checkComponentActive();
         Constraint.isNotNull(attribute, "Attribute to encode cannot be null");
 
         if (!checkActivation(profileRequestContext, rule)) {
@@ -82,7 +82,7 @@ public abstract class AbstractAttributeTranscoder<T> extends AbstractInitializab
     /** {@inheritDoc} */
     @Nullable public IdPAttribute decode(@Nullable final ProfileRequestContext profileRequestContext,
             @Nonnull final T input, @Nonnull final TranscodingRule rule) throws AttributeDecodingException {
-        throwComponentStateExceptions();
+        checkComponentActive();
         Constraint.isNotNull(input, "Attribute to decode cannot be null");
 
         if (!checkActivation(profileRequestContext, rule)) {
diff --git a/shib-attribute-filter-api/src/main/java/net/shibboleth/idp/attribute/filter/AttributeFilterPolicy.java b/shib-attribute-filter-api/src/main/java/net/shibboleth/idp/attribute/filter/AttributeFilterPolicy.java
index e0209e00f..fcf3f1c48 100644
--- a/shib-attribute-filter-api/src/main/java/net/shibboleth/idp/attribute/filter/AttributeFilterPolicy.java
+++ b/shib-attribute-filter-api/src/main/java/net/shibboleth/idp/attribute/filter/AttributeFilterPolicy.java
@@ -139,7 +139,7 @@ public final class AttributeFilterPolicy extends AbstractIdentifiedInitializable
      *             request
      */
     public void apply(@Nonnull final AttributeFilterContext filterContext) throws AttributeFilterException {
-        throwComponentStateExceptions();
+        checkComponentActive();
 
         Constraint.isNotNull(filterContext, "Attribute filter context can not be null");
 
diff --git a/shib-attribute-filter-api/src/main/java/net/shibboleth/idp/attribute/filter/AttributeRule.java b/shib-attribute-filter-api/src/main/java/net/shibboleth/idp/attribute/filter/AttributeRule.java
index 1d9d97486..da15729ae 100644
--- a/shib-attribute-filter-api/src/main/java/net/shibboleth/idp/attribute/filter/AttributeRule.java
+++ b/shib-attribute-filter-api/src/main/java/net/shibboleth/idp/attribute/filter/AttributeRule.java
@@ -111,7 +111,7 @@ public final class AttributeRule extends AbstractIdentifiableInitializableCompon
      * @param id ID of the attribute to which this rule applies
      */
     public void setAttributeId(@Nonnull @NotEmpty final String id) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
 
         attributeId = StringSupport.trimOrNull(id);
     }
@@ -132,7 +132,7 @@ public final class AttributeRule extends AbstractIdentifiableInitializableCompon
      * @param theMatcher matcher used to determine permitted attribute values filtered by this rule
      */
     public void setMatcher(@Nonnull final Matcher theMatcher) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
 
         matcher = Constraint.isNotNull(theMatcher, "Rule can not be null");
     }
@@ -153,7 +153,7 @@ public final class AttributeRule extends AbstractIdentifiableInitializableCompon
      * @param isDeny - whether the rule is deny or not.
      */
     public void setIsDenyRule(final boolean isDeny) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
 
         isDenyRule = isDeny;
     }
@@ -166,7 +166,7 @@ public final class AttributeRule extends AbstractIdentifiableInitializableCompon
      * 
      */
     public void apply(@Nonnull final IdPAttribute attribute, @Nonnull final AttributeFilterContext filterContext) {
-        throwComponentStateExceptions();
+        checkComponentActive();
 
         Constraint.isNotNull(attribute, "To-be-filtered attribute can not be null");
         Constraint.isNotNull(filterContext, "Attribute filter context can not be null");
diff --git a/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/impl/AttributeFilterImpl.java b/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/impl/AttributeFilterImpl.java
index b8a7e7168..caa1cd520 100644
--- a/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/impl/AttributeFilterImpl.java
+++ b/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/impl/AttributeFilterImpl.java
@@ -96,7 +96,7 @@ public class AttributeFilterImpl extends AbstractServiceableComponent<AttributeF
      */
     @Override public void filterAttributes(@Nonnull final AttributeFilterContext filterContext)
             throws AttributeFilterException {
-        throwComponentStateExceptions();
+        checkComponentActive();
 
         Constraint.isNotNull(filterContext, "Attribute filter context can not be null");
         
diff --git a/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/matcher/impl/AbstractRegexpStringMatcher.java b/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/matcher/impl/AbstractRegexpStringMatcher.java
index cc1cf1f56..1d6e2e19d 100644
--- a/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/matcher/impl/AbstractRegexpStringMatcher.java
+++ b/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/matcher/impl/AbstractRegexpStringMatcher.java
@@ -50,7 +50,7 @@ public abstract class AbstractRegexpStringMatcher extends AbstractMatcher {
      * @param thePattern the pattern to match
      */
     public void setPattern(@Nonnull final Pattern thePattern) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         pattern = Constraint.isNotNull(thePattern, "Pattern supplied to setPattern but not be null");
     }
 
@@ -62,7 +62,7 @@ public abstract class AbstractRegexpStringMatcher extends AbstractMatcher {
      * @return true if the value matches the given match string, false if not
      */
     protected boolean regexpCompare(@Nullable final String value) {
-        throwComponentStateExceptions();
+        checkComponentActive();
         if (pattern == null || value == null) {
             return false;
         }
diff --git a/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/matcher/impl/ScriptedMatcher.java b/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/matcher/impl/ScriptedMatcher.java
index 24d661334..a5fe167cf 100644
--- a/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/matcher/impl/ScriptedMatcher.java
+++ b/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/matcher/impl/ScriptedMatcher.java
@@ -93,7 +93,7 @@ public class ScriptedMatcher extends AbstractIdentifiableInitializableComponent
      * @param object the custom object
      */
     public void setCustomObject(@Nullable final Object object) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         
         customObject = object;
     }
@@ -113,7 +113,7 @@ public class ScriptedMatcher extends AbstractIdentifiableInitializableComponent
      * @param matcherScript the script to be evaluated
      */
     public void setScript(@Nonnull final EvaluableScript matcherScript) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
 
         script = Constraint.isNotNull(matcherScript, "Attribute value matching script cannot be null");
     }
@@ -127,7 +127,7 @@ public class ScriptedMatcher extends AbstractIdentifiableInitializableComponent
      */
     @Nullable public void setScriptContextExtenders(
             @Nullable @NonnullElements final Collection<FilterScriptContextExtender> extenders) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
 
         if (extenders != null) {
             contextExtenders = List.copyOf(extenders);
@@ -177,7 +177,7 @@ public class ScriptedMatcher extends AbstractIdentifiableInitializableComponent
         Constraint.isNotNull(attribute, "Attribute to be filtered cannot be null");
         Constraint.isNotNull(filterContext, "AttributeFilterContext cannot be null");
         
-        throwComponentStateExceptions();
+        checkComponentActive();
         return scriptEvaluator.execute(attribute, filterContext);
     }
 
diff --git a/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/matcher/logic/impl/AbstractComposedMatcher.java b/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/matcher/logic/impl/AbstractComposedMatcher.java
index 3e6007d1b..44fc130ef 100644
--- a/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/matcher/logic/impl/AbstractComposedMatcher.java
+++ b/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/matcher/logic/impl/AbstractComposedMatcher.java
@@ -46,7 +46,7 @@ public abstract class AbstractComposedMatcher extends AbstractIdentifiableInitia
      * @param composedMatchers the matchers to be composed.
      */
     public void setSubsidiaries(@Nullable @NonnullElements final List<Matcher> composedMatchers) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
 
         if (composedMatchers != null) {
             matchers = List.copyOf(composedMatchers);
diff --git a/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/matcher/logic/impl/AndMatcher.java b/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/matcher/logic/impl/AndMatcher.java
index f9aa5be17..dfaccf22f 100644
--- a/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/matcher/logic/impl/AndMatcher.java
+++ b/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/matcher/logic/impl/AndMatcher.java
@@ -60,7 +60,7 @@ public class AndMatcher extends AbstractComposedMatcher {
         // Capture the matchers to avoid race with setComposedMatchers
         // Do this before the test on destruction to avoid race with destroy code
         final List<Matcher> currentMatchers = getComposedMatchers();
-        throwComponentStateExceptions();
+        checkComponentActive();
 
         final Iterator<Matcher> matcherItr = currentMatchers.iterator();
 
diff --git a/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/matcher/logic/impl/NotMatcher.java b/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/matcher/logic/impl/NotMatcher.java
index 3a6d7c7f5..6b1d4bae3 100644
--- a/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/matcher/logic/impl/NotMatcher.java
+++ b/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/matcher/logic/impl/NotMatcher.java
@@ -81,7 +81,7 @@ public final class NotMatcher extends AbstractIdentifiableInitializableComponent
         // Capture the matchers to avoid race with setComposedMatchers
         // Do this before the test on destruction to avoid race with destroy code
         final Matcher currentMatcher = getNegatedMatcher();
-        throwComponentStateExceptions();
+        checkComponentActive();
 
         final Set<IdPAttributeValue> attributeValues = new LinkedHashSet<>(attribute.getValues());
 
diff --git a/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/matcher/logic/impl/OrMatcher.java b/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/matcher/logic/impl/OrMatcher.java
index 811d7943b..9e5b1cf28 100644
--- a/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/matcher/logic/impl/OrMatcher.java
+++ b/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/matcher/logic/impl/OrMatcher.java
@@ -52,7 +52,7 @@ public class OrMatcher extends AbstractComposedMatcher {
         // Capture the matchers to avoid race with setComposedMatchers
         // Do this before the test on destruction to avoid race with destroy code
         final List<Matcher> currentMatchers = getComposedMatchers();
-        throwComponentStateExceptions();
+        checkComponentActive();
 
         final Set<IdPAttributeValue> matchingValues = new LinkedHashSet<>();
         for (final Matcher matchFunctor : currentMatchers) {
diff --git a/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/matcher/saml/impl/AttributeInMetadataMatcher.java b/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/matcher/saml/impl/AttributeInMetadataMatcher.java
index 5d163cc71..ea12e30ea 100644
--- a/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/matcher/saml/impl/AttributeInMetadataMatcher.java
+++ b/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/matcher/saml/impl/AttributeInMetadataMatcher.java
@@ -101,7 +101,7 @@ public class AttributeInMetadataMatcher extends AbstractIdentifiableInitializabl
      * @param flag whether optionally requested attributes should be matched
      */
     public void setOnlyIfRequired(final boolean flag) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         onlyIfRequired = flag;
     }
 
@@ -120,7 +120,7 @@ public class AttributeInMetadataMatcher extends AbstractIdentifiableInitializabl
      * @param flag whether to match if the metadata contains no AttributeConsumingService
      */
     public void setMatchIfMetadataSilent(final boolean flag) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         matchIfMetadataSilent = flag;
     }
 
@@ -143,7 +143,7 @@ public class AttributeInMetadataMatcher extends AbstractIdentifiableInitializabl
      * @param name the Name to look for
      */
     public void setAttributeName(@Nullable @NotEmpty final String name) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         
         attributeName = StringSupport.trimOrNull(name);
     }
@@ -167,7 +167,7 @@ public class AttributeInMetadataMatcher extends AbstractIdentifiableInitializabl
      * @param format the NameFormat to look for
      */
     public void setAttributeNameFormat(@Nullable @NotEmpty final String format) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         
         attributeNameFormat = StringSupport.trimOrNull(format);
         if (attributeNameFormat != null && Attribute.UNSPECIFIED.equals(attributeNameFormat)) {
@@ -179,7 +179,7 @@ public class AttributeInMetadataMatcher extends AbstractIdentifiableInitializabl
     /** {@inheritDoc} */
     @Override @Nonnull public Set<IdPAttributeValue> getMatchingValues(@Nonnull final IdPAttribute attribute,
             @Nonnull final AttributeFilterContext filterContext) {
-        throwComponentStateExceptions();
+        checkComponentActive();
 
         final AttributeConsumingService service = getAttributeConsumingService(filterContext);
     
diff --git a/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/AttributeIssuerPolicyRule.java b/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/AttributeIssuerPolicyRule.java
index cd28d4c01..550966d94 100644
--- a/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/AttributeIssuerPolicyRule.java
+++ b/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/AttributeIssuerPolicyRule.java
@@ -43,7 +43,7 @@ public class AttributeIssuerPolicyRule extends AbstractStringPolicyRule {
      */
     @Override public Tristate matches(@Nonnull final AttributeFilterContext filterContext) {
 
-        throwComponentStateExceptions();
+        checkComponentActive();
 
         final String issuer = filterContext.getAttributeIssuerID();
         if (null == issuer) {
diff --git a/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/AttributeIssuerRegexpPolicyRule.java b/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/AttributeIssuerRegexpPolicyRule.java
index 6ed66df6c..bbf9d9bbe 100644
--- a/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/AttributeIssuerRegexpPolicyRule.java
+++ b/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/AttributeIssuerRegexpPolicyRule.java
@@ -43,7 +43,7 @@ public class AttributeIssuerRegexpPolicyRule extends AbstractRegexpPolicyRule {
      */
     @Override public Tristate matches(@Nonnull final AttributeFilterContext filterContext) {
 
-        throwComponentStateExceptions();
+        checkComponentActive();
 
         final String issuer = filterContext.getAttributeIssuerID();
         if (null == issuer) {
diff --git a/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/AttributeRequesterPolicyRule.java b/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/AttributeRequesterPolicyRule.java
index 943c28695..86477ce57 100644
--- a/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/AttributeRequesterPolicyRule.java
+++ b/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/AttributeRequesterPolicyRule.java
@@ -43,7 +43,7 @@ public class AttributeRequesterPolicyRule extends AbstractStringPolicyRule {
      */
     @Override public Tristate matches(@Nonnull final AttributeFilterContext filterContext) {
 
-        throwComponentStateExceptions();
+        checkComponentActive();
 
         final String requester = filterContext.getAttributeRecipientID();
         if (null == requester) {
diff --git a/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/AttributeRequesterRegexpPolicyRule.java b/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/AttributeRequesterRegexpPolicyRule.java
index 0acbe9402..e12fe6b26 100644
--- a/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/AttributeRequesterRegexpPolicyRule.java
+++ b/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/AttributeRequesterRegexpPolicyRule.java
@@ -43,7 +43,7 @@ public class AttributeRequesterRegexpPolicyRule extends AbstractRegexpPolicyRule
      */
     @Override public Tristate matches(@Nonnull final AttributeFilterContext filterContext) {
 
-        throwComponentStateExceptions();
+        checkComponentActive();
 
         final String requester = filterContext.getAttributeRecipientID();
         if (null == requester) {
diff --git a/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/NumOfAttributeValuesPolicyRule.java b/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/NumOfAttributeValuesPolicyRule.java
index 45ad71502..e9e3ce632 100644
--- a/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/NumOfAttributeValuesPolicyRule.java
+++ b/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/NumOfAttributeValuesPolicyRule.java
@@ -73,7 +73,7 @@ public class NumOfAttributeValuesPolicyRule extends AbstractPolicyRule {
     /** {@inheritDoc} */
     @Override
     @Nonnull public Tristate matches(@Nonnull final AttributeFilterContext filterContext) {
-        throwComponentStateExceptions();
+        checkComponentActive();
         
         final IdPAttribute attribute = filterContext.getPrefilteredIdPAttributes().get(attributeId);
         
diff --git a/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/PredicatePolicyRule.java b/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/PredicatePolicyRule.java
index a4225d198..727881815 100644
--- a/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/PredicatePolicyRule.java
+++ b/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/PredicatePolicyRule.java
@@ -78,7 +78,7 @@ public class PredicatePolicyRule extends AbstractPolicyRule {
      * {@inheritDoc}
      */
     @Override public Tristate matches(@Nonnull final AttributeFilterContext filterContext) {
-        throwComponentStateExceptions();
+        checkComponentActive();
         final ProfileRequestContext pc = filterContext.getProfileRequestContextLookupStrategy().apply(filterContext);
         if (null == pc) {
             log.warn("{} Could not locate profile context", getLogPrefix());
diff --git a/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/PrincipalNamePolicyRule.java b/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/PrincipalNamePolicyRule.java
index 745a5014a..0281cacb7 100644
--- a/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/PrincipalNamePolicyRule.java
+++ b/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/PrincipalNamePolicyRule.java
@@ -43,7 +43,7 @@ public class PrincipalNamePolicyRule extends AbstractStringPolicyRule {
      */
     @Override public Tristate matches(@Nonnull final AttributeFilterContext filterContext) {
 
-        throwComponentStateExceptions();
+        checkComponentActive();
 
         final String principal = filterContext.getPrincipal();
 
diff --git a/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/PrincipalNameRegexpPolicyRule.java b/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/PrincipalNameRegexpPolicyRule.java
index 5b50a4f3c..2ecb24a5e 100644
--- a/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/PrincipalNameRegexpPolicyRule.java
+++ b/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/PrincipalNameRegexpPolicyRule.java
@@ -41,7 +41,7 @@ public class PrincipalNameRegexpPolicyRule extends AbstractRegexpPolicyRule {
      */
     @Override public Tristate matches(@Nonnull final AttributeFilterContext filterContext) {
 
-        throwComponentStateExceptions();
+        checkComponentActive();
 
         final String principal = filterContext.getPrincipal();
         if (null == principal) {
diff --git a/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/ProfilePolicyRule.java b/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/ProfilePolicyRule.java
index 5692399ee..0ea284aef 100644
--- a/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/ProfilePolicyRule.java
+++ b/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/ProfilePolicyRule.java
@@ -45,7 +45,7 @@ public class ProfilePolicyRule extends AbstractStringPolicyRule {
      *         {@inheritDoc}
      */
     @Override public Tristate matches(@Nonnull final AttributeFilterContext filterContext) {
-        throwComponentStateExceptions();
+        checkComponentActive();
         final ProfileRequestContext pc = filterContext.getProfileRequestContextLookupStrategy().apply(filterContext);
         if (null == pc) {
             log.warn("{} Could not locate profile context", getLogPrefix());
diff --git a/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/ProxiedRequesterPolicyRule.java b/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/ProxiedRequesterPolicyRule.java
index f02075b9b..aabe5904a 100644
--- a/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/ProxiedRequesterPolicyRule.java
+++ b/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/ProxiedRequesterPolicyRule.java
@@ -45,7 +45,7 @@ public class ProxiedRequesterPolicyRule extends AbstractStringPolicyRule {
      *         {@inheritDoc}
      */
     @Override public Tristate matches(@Nonnull final AttributeFilterContext filterContext) {
-        throwComponentStateExceptions();
+        checkComponentActive();
 
         final ProxiedRequesterContext ctx = filterContext.getProxiedRequesterContext();
         if (null == ctx) {
diff --git a/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/ProxiedRequesterRegexpPolicyRule.java b/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/ProxiedRequesterRegexpPolicyRule.java
index 5576028d6..dc0e5aba6 100644
--- a/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/ProxiedRequesterRegexpPolicyRule.java
+++ b/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/ProxiedRequesterRegexpPolicyRule.java
@@ -45,7 +45,7 @@ public class ProxiedRequesterRegexpPolicyRule extends AbstractRegexpPolicyRule {
      *         {@inheritDoc}
      */
     @Override public Tristate matches(@Nonnull final AttributeFilterContext filterContext) {
-        throwComponentStateExceptions();
+        checkComponentActive();
 
         final ProxiedRequesterContext ctx = filterContext.getProxiedRequesterContext();
         if (null == ctx) {
diff --git a/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/impl/AbstractRegexpPolicyRule.java b/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/impl/AbstractRegexpPolicyRule.java
index b2559dd64..b62604c13 100644
--- a/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/impl/AbstractRegexpPolicyRule.java
+++ b/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/impl/AbstractRegexpPolicyRule.java
@@ -49,7 +49,7 @@ public abstract class AbstractRegexpPolicyRule extends AbstractPolicyRule {
      * @param thePattern the pattern to match
      */
     public void setPattern(@Nonnull final Pattern thePattern) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         pattern = Constraint.isNotNull(thePattern, "Pattern supplied to setPattern but not be null");
     }
 
@@ -61,7 +61,7 @@ public abstract class AbstractRegexpPolicyRule extends AbstractPolicyRule {
      * @return true if the value matches the given match string, false if not
      */
     protected Tristate regexpCompare(@Nullable final String value) {
-        throwComponentStateExceptions();
+        checkComponentActive();
 
         final boolean result;
         if (pattern == null || value == null) {
diff --git a/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/impl/AbstractStringPolicyRule.java b/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/impl/AbstractStringPolicyRule.java
index 2eaedae9e..3348cfe55 100644
--- a/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/impl/AbstractStringPolicyRule.java
+++ b/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/impl/AbstractStringPolicyRule.java
@@ -100,7 +100,7 @@ public abstract class AbstractStringPolicyRule extends AbstractPolicyRule implem
      * @return true if the value matches the given match string, false if not
      */
     protected Tristate stringCompare(@Nullable final String value) {
-        throwComponentStateExceptions();
+        checkComponentActive();
 
         final boolean result;
         if (value == null) {
diff --git a/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/impl/ScriptedPolicyRule.java b/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/impl/ScriptedPolicyRule.java
index 7380bd60d..fb45daf2c 100644
--- a/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/impl/ScriptedPolicyRule.java
+++ b/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/impl/ScriptedPolicyRule.java
@@ -89,7 +89,7 @@ public class ScriptedPolicyRule extends AbstractIdentifiableInitializableCompone
      * @param object the custom object
      */
     public void setCustomObject(@Nullable final Object object) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         customObject = object;
     }
 
@@ -108,7 +108,7 @@ public class ScriptedPolicyRule extends AbstractIdentifiableInitializableCompone
      * @param matcherScript the script to be evaluated
      */
     public void setScript(@Nonnull final EvaluableScript matcherScript) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         script = Constraint.isNotNull(matcherScript, "Attribute value matching script can not be null");
     }
 
@@ -121,7 +121,7 @@ public class ScriptedPolicyRule extends AbstractIdentifiableInitializableCompone
      */
     @Nullable public void setScriptContextExtenders(
             @Nullable @NonnullElements final Collection<FilterScriptContextExtender> extenders) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         if (extenders != null) {
             contextExtenders = List.copyOf(extenders);
         } else {
@@ -149,7 +149,7 @@ public class ScriptedPolicyRule extends AbstractIdentifiableInitializableCompone
     @Nonnull public Tristate matches(@Nonnull final AttributeFilterContext filterContext) {
         Constraint.isNotNull(filterContext, "Attribute filter context cannot be null");
 
-        throwComponentStateExceptions();
+        checkComponentActive();
         return scriptEvaluator.execute(filterContext);
     }
 
diff --git a/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/logic/impl/AbstractComposedPolicyRule.java b/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/logic/impl/AbstractComposedPolicyRule.java
index aeaf662dd..4a591f544 100644
--- a/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/logic/impl/AbstractComposedPolicyRule.java
+++ b/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/logic/impl/AbstractComposedPolicyRule.java
@@ -48,7 +48,7 @@ public abstract class AbstractComposedPolicyRule extends AbstractIdentifiableIni
      * @param theRules the rules to be composed.
      */
     public void setSubsidiaries(@Nullable @NonnullElements final List<PolicyRequirementRule> theRules) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         
         if (theRules != null) {
             rules = List.copyOf(theRules);
diff --git a/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/logic/impl/AndPolicyRule.java b/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/logic/impl/AndPolicyRule.java
index 58475a5e5..30bd5192f 100644
--- a/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/logic/impl/AndPolicyRule.java
+++ b/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/logic/impl/AndPolicyRule.java
@@ -51,7 +51,7 @@ public class AndPolicyRule extends AbstractComposedPolicyRule {
     @Override
     public Tristate matches(@Nonnull final AttributeFilterContext filterContext) {
         Constraint.isNotNull(filterContext, "Attribute filter context can not be null");
-        throwComponentStateExceptions();
+        checkComponentActive();
 
         final List<PolicyRequirementRule> rules = getComposedRules();
         
diff --git a/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/logic/impl/NotPolicyRule.java b/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/logic/impl/NotPolicyRule.java
index 461d0bf89..f456e02d9 100644
--- a/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/logic/impl/NotPolicyRule.java
+++ b/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/logic/impl/NotPolicyRule.java
@@ -70,7 +70,7 @@ public final class NotPolicyRule extends AbstractIdentifiableInitializableCompon
     /** {@inheritDoc} */
     @Override public Tristate matches(@Nonnull final AttributeFilterContext filterContext) {
         Constraint.isNotNull(filterContext, "Attribute filter context can not be null");
-        throwComponentStateExceptions();
+        checkComponentActive();
 
         final Tristate match = negatedRule.matches(filterContext);
         if (Tristate.FAIL == match) {
diff --git a/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/logic/impl/OrPolicyRule.java b/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/logic/impl/OrPolicyRule.java
index 624a62242..2a78b6bba 100644
--- a/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/logic/impl/OrPolicyRule.java
+++ b/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/logic/impl/OrPolicyRule.java
@@ -51,7 +51,7 @@ public class OrPolicyRule extends AbstractComposedPolicyRule {
     */
     @Override public Tristate matches(@Nonnull final AttributeFilterContext filterContext) {
         Constraint.isNotNull(filterContext, "Attribute filter context can not be null");
-        throwComponentStateExceptions();
+        checkComponentActive();
 
         final List<PolicyRequirementRule> rules = getComposedRules();
         
diff --git a/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/saml/impl/AbstractEntityAttributePolicyRule.java b/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/saml/impl/AbstractEntityAttributePolicyRule.java
index 20fa31b0b..dbf039e4b 100644
--- a/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/saml/impl/AbstractEntityAttributePolicyRule.java
+++ b/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/saml/impl/AbstractEntityAttributePolicyRule.java
@@ -103,7 +103,7 @@ public abstract class AbstractEntityAttributePolicyRule extends AbstractPolicyRu
      * @param attributeName name of the entity attribute the entity must have
      */
     public void setAttributeName(@Nullable @NotEmpty final String attributeName) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         
         attrName = StringSupport.trimOrNull(attributeName);
     }
@@ -123,7 +123,7 @@ public abstract class AbstractEntityAttributePolicyRule extends AbstractPolicyRu
      * @param attributeNameFormat name format of the entity attribute the entity must have
      */
     public void setNameFormat(@Nullable @NotEmpty final String attributeNameFormat) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         
         nameFormat = StringSupport.trimOrNull(attributeNameFormat);
     }
@@ -145,7 +145,7 @@ public abstract class AbstractEntityAttributePolicyRule extends AbstractPolicyRu
      * @param flag flag to set
      */
     public void setIgnoreUnmappedEntityAttributes(final boolean flag) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         ignoreUnmappedEntityAttributes = flag;
     }
     
@@ -170,7 +170,7 @@ public abstract class AbstractEntityAttributePolicyRule extends AbstractPolicyRu
     @Override public Tristate matches(@Nonnull final AttributeFilterContext filterContext) {
 
         Constraint.isNotNull(filterContext, "Context must be supplied");
-        throwComponentStateExceptions();
+        checkComponentActive();
 
         final EntityDescriptor entityDescriptor = getEntityMetadata(filterContext);
         if (entityDescriptor == null) {
diff --git a/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/saml/impl/AbstractEntityGroupPolicyRule.java b/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/saml/impl/AbstractEntityGroupPolicyRule.java
index c8eaa0e8c..ea3c6d172 100644
--- a/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/saml/impl/AbstractEntityGroupPolicyRule.java
+++ b/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/saml/impl/AbstractEntityGroupPolicyRule.java
@@ -64,7 +64,7 @@ public abstract class AbstractEntityGroupPolicyRule extends AbstractPolicyRule {
      * @param group entity group to match against
      */
     public void setEntityGroup(@Nullable final String group) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         
         entityGroup = StringSupport.trimOrNull(group);
     }
@@ -78,7 +78,7 @@ public abstract class AbstractEntityGroupPolicyRule extends AbstractPolicyRule {
      * @param flag flag to set
      */
     public void setCheckAffiliations(final boolean flag) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         checkAffiliations = flag;
     }
 
@@ -125,7 +125,7 @@ public abstract class AbstractEntityGroupPolicyRule extends AbstractPolicyRule {
      */
     @Override
     @Nonnull public Tristate matches(@Nonnull final AttributeFilterContext input) {
-        throwComponentStateExceptions();
+        checkComponentActive();
 
         Constraint.isNotNull(input, "Context must be supplied");
 
diff --git a/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/saml/impl/AbstractNameIDFormatExactPolicyRule.java b/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/saml/impl/AbstractNameIDFormatExactPolicyRule.java
index 604b7afae..ce3512534 100644
--- a/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/saml/impl/AbstractNameIDFormatExactPolicyRule.java
+++ b/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/saml/impl/AbstractNameIDFormatExactPolicyRule.java
@@ -58,7 +58,7 @@ public abstract class AbstractNameIDFormatExactPolicyRule extends AbstractPolicy
      * @param format NameID format that needs to be supported by the entity
      */
     public void setNameIdFormat(@Nullable final String format) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         
         nameIdFormat = StringSupport.trimOrNull(format);
     }
@@ -93,7 +93,7 @@ public abstract class AbstractNameIDFormatExactPolicyRule extends AbstractPolicy
      */
     @Override
     public Tristate matches(@Nonnull final AttributeFilterContext filterContext) {
-        throwComponentStateExceptions();
+        checkComponentActive();
         
         final SSODescriptor role = getEntitySSODescriptor(filterContext);
         if (role == null) {
diff --git a/shib-attribute-impl/src/main/java/net/shibboleth/idp/attribute/impl/ComputedPairwiseIdStore.java b/shib-attribute-impl/src/main/java/net/shibboleth/idp/attribute/impl/ComputedPairwiseIdStore.java
index fab807252..27d87dac0 100644
--- a/shib-attribute-impl/src/main/java/net/shibboleth/idp/attribute/impl/ComputedPairwiseIdStore.java
+++ b/shib-attribute-impl/src/main/java/net/shibboleth/idp/attribute/impl/ComputedPairwiseIdStore.java
@@ -106,7 +106,7 @@ public class ComputedPairwiseIdStore extends AbstractInitializableComponent impl
      * @param newValue used when computing the ID
      */
     public void setSalt(@Nullable final byte[] newValue) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         
         if (newValue != null && newValue.length > 0) {
             salt = newValue;
@@ -121,7 +121,7 @@ public class ComputedPairwiseIdStore extends AbstractInitializableComponent impl
      * @param newValue used when computing the ID
      */
     public void setSalt(@Nullable final String newValue) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         
         if (newValue != null && !newValue.isEmpty()) {
             salt = newValue.getBytes();
@@ -136,7 +136,7 @@ public class ComputedPairwiseIdStore extends AbstractInitializableComponent impl
      * @param newValue used when computing the ID
      */
     public void setEncodedSalt(@Nullable final String newValue) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         
         if (newValue != null && !newValue.isEmpty()) {
             try {
@@ -163,7 +163,7 @@ public class ComputedPairwiseIdStore extends AbstractInitializableComponent impl
      * @param alg JCE message digest algorithm
      */
     public void setAlgorithm(@Nonnull @NotEmpty final String alg) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         
         algorithm = Constraint.isNotNull(StringSupport.trimOrNull(alg), "Digest algorithm cannot be null or empty");
     }
@@ -183,7 +183,7 @@ public class ComputedPairwiseIdStore extends AbstractInitializableComponent impl
      * @param enc encoding
      */
     public void setEncoding(@Nonnull final Encoding enc) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         
         encoding = Constraint.isNotNull(enc, "Encoding cannot be null");
     }
@@ -199,7 +199,7 @@ public class ComputedPairwiseIdStore extends AbstractInitializableComponent impl
      * @param map exceptions to apply
      */
     public void setExceptionMap(@Nullable @NotEmpty final Map<String,Map<String,String>> map) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         
         if (map == null) {
             exceptionMap = Collections.emptyMap();
@@ -239,7 +239,7 @@ public class ComputedPairwiseIdStore extends AbstractInitializableComponent impl
     /** {@inheritDoc} */
     @Nullable public PairwiseId getBySourceValue(@Nonnull final PairwiseId pid, final boolean allowCreate)
             throws IOException {
-        throwComponentStateExceptions();
+        checkComponentActive();
         Constraint.isNotNull(pid, "Input PairwiseId object cannot be null");
         Constraint.isNotEmpty(pid.getRecipientEntityID(), "Recipient entityID cannot be null or empty");
         Constraint.isNotEmpty(pid.getPrincipalName(), "Principal name cannot be null or empty");
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 48c7ab69d..4c428fd21 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
@@ -186,7 +186,7 @@ public class JDBCPairwiseIdStore extends AbstractInitializableComponent implemen
      * @param source the data source;
      */
     public void setDataSource(@Nonnull final DataSource source) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         
         dataSource = Constraint.isNotNull(source, "DataSource cannot be null");
     }
@@ -195,7 +195,7 @@ public class JDBCPairwiseIdStore extends AbstractInitializableComponent implemen
      * @param what do we want to lock locally?
      */
     public void setLocalLocking(final boolean what) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         if (what) {
             readWriteLock = new ReentrantReadWriteLock(true);
         } else {
@@ -237,7 +237,7 @@ public class JDBCPairwiseIdStore extends AbstractInitializableComponent implemen
      * @param timeout the timeout to set
      */
     public void setQueryTimeout(@Nonnull final Duration timeout) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         Constraint.isNotNull(timeout, "Timeout cannot be null");
         Constraint.isFalse(timeout.isNegative(), "Timeout cannot be negative");
         
@@ -259,7 +259,7 @@ public class JDBCPairwiseIdStore extends AbstractInitializableComponent implemen
      * @param retries the number of retries
      */
     public void setTransactionRetries(@NonNegative final int retries) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         
         transactionRetry = Constraint.isGreaterThanOrEqual(0, retries, "Retries must be greater than or equal to 0");
     }
@@ -281,7 +281,7 @@ public class JDBCPairwiseIdStore extends AbstractInitializableComponent implemen
      * @param errors retryable messages
      */
     public void setRetryableErrors(@Nullable @NonnullElements final Collection<String> errors) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         
         retryableErrors = List.copyOf(StringSupport.normalizeStringCollection(errors));
     }
@@ -304,7 +304,7 @@ public class JDBCPairwiseIdStore extends AbstractInitializableComponent implemen
      * @param flag flag to set
      */
     public void setVerifyDatabase(final boolean flag) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         
         verifyDatabase = flag;
     }
@@ -326,7 +326,7 @@ public class JDBCPairwiseIdStore extends AbstractInitializableComponent implemen
      * @param name table name
      */
     public void setTableName(@Nonnull @NotEmpty final String name) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         
         tableName = Constraint.isNotNull(StringSupport.trimOrNull(name), "Table name cannot be null or empty");
     }
@@ -337,7 +337,7 @@ public class JDBCPairwiseIdStore extends AbstractInitializableComponent implemen
      * @param name name of issuer column
      */
     public void setLocalEntityColumn(@Nonnull @NotEmpty final String name) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         
         issuerColumn = Constraint.isNotNull(StringSupport.trimOrNull(name), "Column name cannot be null or empty");
     }
@@ -348,7 +348,7 @@ public class JDBCPairwiseIdStore extends AbstractInitializableComponent implemen
      * @param name name of recipient column
      */
     public void setPeerEntityColumn(@Nonnull @NotEmpty final String name) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         
         recipientColumn = Constraint.isNotNull(StringSupport.trimOrNull(name), "Column name cannot be null or empty");
     }
@@ -359,7 +359,7 @@ public class JDBCPairwiseIdStore extends AbstractInitializableComponent implemen
      * @param name name of principal name column
      */
     public void setPrincipalNameColumn(@Nonnull @NotEmpty final String name) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         
         principalNameColumn = Constraint.isNotNull(StringSupport.trimOrNull(name),
                 "Column name cannot be null or empty");
@@ -371,7 +371,7 @@ public class JDBCPairwiseIdStore extends AbstractInitializableComponent implemen
      * @param name name of source ID column
      */
     public void setSourceIdColumn(@Nonnull @NotEmpty final String name) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         
         sourceIdColumn = Constraint.isNotNull(StringSupport.trimOrNull(name), "Column name cannot be null or empty");
     }
@@ -382,7 +382,7 @@ public class JDBCPairwiseIdStore extends AbstractInitializableComponent implemen
      * @param name name of the persistent ID column
      */
     public void setPersistentIdColumn(@Nonnull @NotEmpty final String name) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         
         persistentIdColumn = Constraint.isNotNull(StringSupport.trimOrNull(name),
                 "Column name cannot be null or empty");
@@ -394,7 +394,7 @@ public class JDBCPairwiseIdStore extends AbstractInitializableComponent implemen
      * @param name name of peer-provided ID column
      */
     public void setPeerProvidedIdColumn(@Nonnull @NotEmpty final String name) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         
         peerProvidedIdColumn = Constraint.isNotNull(StringSupport.trimOrNull(name),
                 "Column name cannot be null or empty");
@@ -406,7 +406,7 @@ public class JDBCPairwiseIdStore extends AbstractInitializableComponent implemen
      * @param name name of creation time column
      */
     public void setCreateTimeColumn(@Nonnull @NotEmpty final String name) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         
         creationTimeColumn = Constraint.isNotNull(StringSupport.trimOrNull(name),
                 "Column name cannot be null or empty");
@@ -418,7 +418,7 @@ public class JDBCPairwiseIdStore extends AbstractInitializableComponent implemen
      * @param name name of deactivation time column
      */
     public void setDeactivationTimeColumn(@Nonnull @NotEmpty final String name) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         
         deactivationTimeColumn = Constraint.isNotNull(StringSupport.trimOrNull(name),
                 "Column name cannot be null or empty");
@@ -430,7 +430,7 @@ public class JDBCPairwiseIdStore extends AbstractInitializableComponent implemen
      * @param sql statement text, which must contain three parameters (NameQualifier, SPNameQualifier, value)
      */
     public void setGetByIssuedSelectSQL(@Nonnull @NotEmpty final String sql) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         
         getByIssuedSelectSQL = Constraint.isNotNull(StringSupport.trimOrNull(sql),
                 "SQL statement cannot be null or empty");
@@ -443,7 +443,7 @@ public class JDBCPairwiseIdStore extends AbstractInitializableComponent implemen
      * (NameQualifier, SPNameQualifier, source ID, NameQualifier, SPNameQualifier, source ID)
      */
     public void setGetBySourceSelectSQL(@Nonnull @NotEmpty final String sql) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         
         getBySourceSelectSQL = Constraint.isNotNull(StringSupport.trimOrNull(sql),
                 "SQL statement cannot be null or empty");
@@ -456,7 +456,7 @@ public class JDBCPairwiseIdStore extends AbstractInitializableComponent implemen
      *  (NameQualifier, SPNameQualifier, value, principal, source ID, SPProvidedID, creation time, deactivation time)
      */
     public void setInsertSQL(@Nonnull @NotEmpty final String sql) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         
         insertSQL = Constraint.isNotNull(StringSupport.trimOrNull(sql), "SQL statement cannot be null or empty");
     }
@@ -468,7 +468,7 @@ public class JDBCPairwiseIdStore extends AbstractInitializableComponent implemen
      *  (deactivation TS, NameQualifier, SPNameQualifier, value)
      */
     public void setDeactivateSQL(@Nonnull @NotEmpty final String sql) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         
         deactivateSQL = Constraint.isNotNull(StringSupport.trimOrNull(sql), "SQL statement cannot be null or empty");
     }
@@ -480,7 +480,7 @@ public class JDBCPairwiseIdStore extends AbstractInitializableComponent implemen
      *  (SPProvidedID, NameQualifier, SPNameQualifier, value)
      */
     public void setAttachSQL(@Nonnull @NotEmpty final String sql) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         
         attachSQL = Constraint.isNotNull(StringSupport.trimOrNull(sql), "SQL statement cannot be null or empty");
     }
@@ -491,7 +491,7 @@ public class JDBCPairwiseIdStore extends AbstractInitializableComponent implemen
      * @param sql statement text, which must contain one parameter (NameQualifier)
      */
     public void setDeleteSQL(@Nonnull @NotEmpty final String sql) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         
         deleteSQL = Constraint.isNotNull(StringSupport.trimOrNull(sql), "SQL statement cannot be null or empty");
     }
@@ -514,7 +514,7 @@ public class JDBCPairwiseIdStore extends AbstractInitializableComponent implemen
      * @param store initial value source
      */
     public void setInitialValueStore(@Nullable final PairwiseIdStore store) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         
         initialValueStore = store;
     }
@@ -587,7 +587,7 @@ public class JDBCPairwiseIdStore extends AbstractInitializableComponent implemen
     /** {@inheritDoc} */
     @Nullable public PairwiseId getBySourceValue(@Nonnull final PairwiseId pid, final boolean allowCreate)
             throws IOException {
-        throwComponentStateExceptions();
+        checkComponentActive();
         Constraint.isNotNull(pid, "Input PairwiseId object cannot be null");
         Constraint.isNotEmpty(pid.getIssuerEntityID(), "Issuer entityID cannot be null or empty");
         Constraint.isNotEmpty(pid.getRecipientEntityID(), "Recipient entityID cannot be null or empty");
@@ -672,7 +672,7 @@ public class JDBCPairwiseIdStore extends AbstractInitializableComponent implemen
     
     /** {@inheritDoc} */
     @Nullable public PairwiseId getByIssuedValue(@Nonnull final PairwiseId pid) throws IOException {
-        throwComponentStateExceptions();
+        checkComponentActive();
         Constraint.isNotNull(pid, "Input PairwiseId object cannot be null");
         Constraint.isNotEmpty(pid.getIssuerEntityID(), "Issuer entityID cannot be null or empty");
         Constraint.isNotEmpty(pid.getRecipientEntityID(), "Recipient entityID cannot be null or empty");
@@ -715,7 +715,7 @@ public class JDBCPairwiseIdStore extends AbstractInitializableComponent implemen
 
     /** {@inheritDoc} */
     public void deactivate(@Nonnull final PairwiseId pid) throws IOException {
-        throwComponentStateExceptions();
+        checkComponentActive();
         Constraint.isNotNull(pid, "Input PairwiseId object cannot be null");
         Constraint.isNotEmpty(pid.getIssuerEntityID(), "Issuer entityID cannot be null or empty");
         Constraint.isNotEmpty(pid.getRecipientEntityID(), "Recipient entityID cannot be null or empty");
@@ -754,7 +754,7 @@ public class JDBCPairwiseIdStore extends AbstractInitializableComponent implemen
 
     /** {@inheritDoc} */
     public void attach(@Nonnull final PairwiseId pid) throws IOException {
-        throwComponentStateExceptions();
+        checkComponentActive();
         Constraint.isNotNull(pid, "Input PairwiseId object cannot be null");
         Constraint.isNotEmpty(pid.getIssuerEntityID(), "Issuer entityID cannot be null or empty");
         Constraint.isNotEmpty(pid.getRecipientEntityID(), "Recipient entityID cannot be null or empty");
diff --git a/shib-attribute-impl/src/main/java/net/shibboleth/idp/attribute/transcoding/impl/AttributeRegistryServiceStrategy.java b/shib-attribute-impl/src/main/java/net/shibboleth/idp/attribute/transcoding/impl/AttributeRegistryServiceStrategy.java
index 5b8cb05fe..115892d9d 100644
--- a/shib-attribute-impl/src/main/java/net/shibboleth/idp/attribute/transcoding/impl/AttributeRegistryServiceStrategy.java
+++ b/shib-attribute-impl/src/main/java/net/shibboleth/idp/attribute/transcoding/impl/AttributeRegistryServiceStrategy.java
@@ -68,7 +68,7 @@ public class AttributeRegistryServiceStrategy extends AbstractIdentifiableInitia
      */
     @Autowired
     public void setNamingRegistry(@Nullable @NonnullElements final Collection<NamingFunction<?>> namingFunctions) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         
         if (namingFunctions != null) {
             namingRegistry = List.copyOf(namingFunctions);
@@ -88,7 +88,7 @@ public class AttributeRegistryServiceStrategy extends AbstractIdentifiableInitia
      */
     public void setExtendedConditionFactory(
             @Nullable final Function<Map<String,Object>,Predicate<ProfileRequestContext>> factory) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         
         extendedConditionFactory = factory;
     }
diff --git a/shib-attribute-impl/src/main/java/net/shibboleth/idp/attribute/transcoding/impl/AttributeTranscoderRegistryImpl.java b/shib-attribute-impl/src/main/java/net/shibboleth/idp/attribute/transcoding/impl/AttributeTranscoderRegistryImpl.java
index 366effc8c..330f5c80b 100644
--- a/shib-attribute-impl/src/main/java/net/shibboleth/idp/attribute/transcoding/impl/AttributeTranscoderRegistryImpl.java
+++ b/shib-attribute-impl/src/main/java/net/shibboleth/idp/attribute/transcoding/impl/AttributeTranscoderRegistryImpl.java
@@ -94,7 +94,7 @@ public class AttributeTranscoderRegistryImpl extends AbstractServiceableComponen
      * @param registry collection of naming functions for indexing
      */
     public void setNamingRegistry(@Nullable @NonnullElements final Collection<NamingFunction<?>> registry) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         
         namingFunctionRegistry.clear();
         
@@ -121,7 +121,7 @@ public class AttributeTranscoderRegistryImpl extends AbstractServiceableComponen
      * @param mappings transcoding rulesets
      */
     public void setTranscoderRegistry(@Nonnull @NonnullElements final Collection<TranscodingRule> mappings) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         Constraint.isNotNull(mappings, "Mappings cannot be null");
         
        transcodingRegistry.clear();
@@ -165,14 +165,14 @@ public class AttributeTranscoderRegistryImpl extends AbstractServiceableComponen
      */
     public void setExtendedConditionFactory(
             @Nullable final Function<Map<String,Object>,Predicate<ProfileRequestContext>> factory) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         extendedConditionFactory = factory;
     }
     
     /** {@inheritDoc} */
     @Nonnull @NonnullElements @NotLive @Unmodifiable public Map<Locale,String> getDisplayNames(
             @Nonnull final IdPAttribute attribute) {
-        throwComponentStateExceptions();
+        checkComponentActive();
         Constraint.isNotNull(attribute, "IdPAttribute cannot be null");
      
         if (displayNameRegistry.containsKey(attribute.getId())) {
@@ -184,7 +184,7 @@ public class AttributeTranscoderRegistryImpl extends AbstractServiceableComponen
     /** {@inheritDoc} */
     @Nonnull @NonnullElements @NotLive @Unmodifiable public Map<Locale,String> getDescriptions(
             @Nonnull final IdPAttribute attribute) {
-        throwComponentStateExceptions();
+        checkComponentActive();
         Constraint.isNotNull(attribute, "IdPAttribute cannot be null");
         
         if (descriptionRegistry.containsKey(attribute.getId())) {
@@ -196,7 +196,7 @@ public class AttributeTranscoderRegistryImpl extends AbstractServiceableComponen
     /** {@inheritDoc} */
     @Nonnull @NonnullElements @Unmodifiable public Collection<TranscodingRule> getTranscodingRules(
             @Nonnull final IdPAttribute from, @Nonnull final Class<?> to) {
-        throwComponentStateExceptions();
+        checkComponentActive();
         Constraint.isNotNull(from, "IdPAttribute cannot be null");
         Constraint.isNotNull(to, "Target type cannot be null");
         
@@ -219,7 +219,7 @@ public class AttributeTranscoderRegistryImpl extends AbstractServiceableComponen
     /** {@inheritDoc} */
     @Nonnull @NonnullElements @Unmodifiable public <T> Collection<TranscodingRule> getTranscodingRules(
             @Nonnull final T from) {
-        throwComponentStateExceptions();
+        checkComponentActive();
         Constraint.isNotNull(from, "Input object cannot be null");
         
         final Class<?> effectiveType = getEffectiveType(from.getClass());
diff --git a/shib-attribute-resolver-api/src/main/java/net/shibboleth/idp/attribute/resolver/AbstractAttributeDefinition.java b/shib-attribute-resolver-api/src/main/java/net/shibboleth/idp/attribute/resolver/AbstractAttributeDefinition.java
index 5a39e7d18..59dfb7d4b 100644
--- a/shib-attribute-resolver-api/src/main/java/net/shibboleth/idp/attribute/resolver/AbstractAttributeDefinition.java
+++ b/shib-attribute-resolver-api/src/main/java/net/shibboleth/idp/attribute/resolver/AbstractAttributeDefinition.java
@@ -67,7 +67,7 @@ public abstract class AbstractAttributeDefinition extends AbstractResolverPlugin
      * @param isDependencyOnly whether this attribute definition is only a dependency
      */
     public void setDependencyOnly(final boolean isDependencyOnly) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
 
         dependencyOnly = isDependencyOnly;
     }
@@ -82,7 +82,7 @@ public abstract class AbstractAttributeDefinition extends AbstractResolverPlugin
      * @param value what to set
      */
     public void setPreRequested(final boolean value) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         preRequested = value;
     }
 
diff --git a/shib-attribute-resolver-api/src/main/java/net/shibboleth/idp/attribute/resolver/AbstractDataConnector.java b/shib-attribute-resolver-api/src/main/java/net/shibboleth/idp/attribute/resolver/AbstractDataConnector.java
index 2f0f8fe78..43c336665 100644
--- a/shib-attribute-resolver-api/src/main/java/net/shibboleth/idp/attribute/resolver/AbstractDataConnector.java
+++ b/shib-attribute-resolver-api/src/main/java/net/shibboleth/idp/attribute/resolver/AbstractDataConnector.java
@@ -95,7 +95,7 @@ public abstract class AbstractDataConnector extends AbstractResolverPlugin<Map<S
      *            experiences an error
      */
     public void setFailoverDataConnectorId(@Nullable final String id) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
 
         failoverDataConnectorId = StringSupport.trimOrNull(id);
     }
@@ -140,7 +140,7 @@ public abstract class AbstractDataConnector extends AbstractResolverPlugin<Map<S
      * @param delay what to set
      */
     public void setNoRetryDelay(@Nonnull final Duration delay) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         noRetryDelay = delay;
     }
 
@@ -156,7 +156,7 @@ public abstract class AbstractDataConnector extends AbstractResolverPlugin<Map<S
      */
     @Deprecated(since = "4.1.0", forRemoval = true)
     public void setExportAllAttributes(final boolean what) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         exportAllAttributes = what;
     }
 
@@ -172,7 +172,7 @@ public abstract class AbstractDataConnector extends AbstractResolverPlugin<Map<S
      * @param what the list
      */
     public void setExportAttributes(@Nonnull @NonnullElements final Collection<String> what) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         exportAttributes = Set.copyOf(what);
     }
 
diff --git a/shib-attribute-resolver-api/src/main/java/net/shibboleth/idp/attribute/resolver/AbstractResolverPlugin.java b/shib-attribute-resolver-api/src/main/java/net/shibboleth/idp/attribute/resolver/AbstractResolverPlugin.java
index 0090e1904..16a75a0cf 100644
--- a/shib-attribute-resolver-api/src/main/java/net/shibboleth/idp/attribute/resolver/AbstractResolverPlugin.java
+++ b/shib-attribute-resolver-api/src/main/java/net/shibboleth/idp/attribute/resolver/AbstractResolverPlugin.java
@@ -113,7 +113,7 @@ public abstract class AbstractResolverPlugin<ResolvedType> extends AbstractIdent
      * @param propagate true if {@link ResolutionException}s are propagated, false if not
      */
     public void setPropagateResolutionExceptions(final boolean propagate) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         propagateResolutionExceptions = propagate;
     }
 
@@ -128,7 +128,7 @@ public abstract class AbstractResolverPlugin<ResolvedType> extends AbstractIdent
      * @param pred what to set
      */
     public void setActivationCondition(@Nonnull final Predicate<ProfileRequestContext> pred) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         activationCondition = Constraint.isNotNull(pred, "Activation condition cannot be null");
     }
 
@@ -160,7 +160,7 @@ public abstract class AbstractResolverPlugin<ResolvedType> extends AbstractIdent
      */
     public void setAttributeDependencies(@Nonnull @NonnullElements
             final Set<ResolverAttributeDefinitionDependency> dependencies) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         Constraint.isNotNull(dependencies, "Attribute Dependencies cannot be null");
 
         attributeDependencies = Set.copyOf(dependencies);
@@ -173,7 +173,7 @@ public abstract class AbstractResolverPlugin<ResolvedType> extends AbstractIdent
      */
     public void setDataConnectorDependencies(@Nonnull @NonnullElements
             final Set<ResolverDataConnectorDependency> dependencies) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         Constraint.isNotNull(dependencies, "DataConnector Dependencies cannot be null");
 
         dataConnectorDependencies = Set.copyOf(dependencies);
@@ -199,7 +199,7 @@ public abstract class AbstractResolverPlugin<ResolvedType> extends AbstractIdent
      */
     @Nullable public final ResolvedType resolve(@Nonnull final AttributeResolutionContext resolutionContext)
             throws ResolutionException {
-        throwComponentStateExceptions();
+        checkComponentActive();
         Constraint.isNotNull(resolutionContext, "AttributeResolutionContext cannot be null");
 
         final boolean timerStarted = startTimer(resolutionContext);
diff --git a/shib-attribute-resolver-api/src/main/java/net/shibboleth/idp/attribute/resolver/ResolvedDataConnector.java b/shib-attribute-resolver-api/src/main/java/net/shibboleth/idp/attribute/resolver/ResolvedDataConnector.java
index 8ee3867f9..96dc2ddf4 100644
--- a/shib-attribute-resolver-api/src/main/java/net/shibboleth/idp/attribute/resolver/ResolvedDataConnector.java
+++ b/shib-attribute-resolver-api/src/main/java/net/shibboleth/idp/attribute/resolver/ResolvedDataConnector.java
@@ -129,7 +129,7 @@ public final class ResolvedDataConnector extends AbstractDataConnector {
 
     /** {@inheritDoc} */
     @Override public void setExportAllAttributes(@Nullable final boolean what) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
     }
 
     /** {@inheritDoc} */
@@ -139,7 +139,7 @@ public final class ResolvedDataConnector extends AbstractDataConnector {
 
     /** {@inheritDoc} */
     @Override public void setExportAttributes(@Nonnull final Collection<String> what) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
     }
 
     /** {@inheritDoc} */
diff --git a/shib-attribute-resolver-api/src/main/java/net/shibboleth/idp/attribute/resolver/dc/ldap/ParameterizedExecutableSearchFilterBuilder.java b/shib-attribute-resolver-api/src/main/java/net/shibboleth/idp/attribute/resolver/dc/ldap/ParameterizedExecutableSearchFilterBuilder.java
index c93bc90a9..66948fed4 100644
--- a/shib-attribute-resolver-api/src/main/java/net/shibboleth/idp/attribute/resolver/dc/ldap/ParameterizedExecutableSearchFilterBuilder.java
+++ b/shib-attribute-resolver-api/src/main/java/net/shibboleth/idp/attribute/resolver/dc/ldap/ParameterizedExecutableSearchFilterBuilder.java
@@ -53,7 +53,7 @@ public class ParameterizedExecutableSearchFilterBuilder extends AbstractExecutab
      * @param filter used for the LDAP search
      */
     public void setSearchFilter(@Nonnull final String filter) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         searchFilter = Constraint.isNotNull(filter, "Search filter can not be null");
     }
     
@@ -67,7 +67,7 @@ public class ParameterizedExecutableSearchFilterBuilder extends AbstractExecutab
     /** {@inheritDoc} */
     @Override public ExecutableSearchFilter build(@Nonnull final AttributeResolutionContext resolutionContext,
             @Nonnull final Map<String, List<IdPAttributeValue>> dependencyAttributes) throws ResolutionException {
-        throwComponentStateExceptions();
+        checkComponentActive();
         final SearchFilter sf = new SearchFilter(searchFilter);
         sf.setParameter("principalName", resolutionContext.getPrincipal());
         if (dependencyAttributes != null && !dependencyAttributes.isEmpty()) {
diff --git a/shib-attribute-resolver-api/src/main/java/net/shibboleth/idp/attribute/resolver/dc/ldap/TemplatedExecutableSearchFilterBuilder.java b/shib-attribute-resolver-api/src/main/java/net/shibboleth/idp/attribute/resolver/dc/ldap/TemplatedExecutableSearchFilterBuilder.java
index 0d4217770..e9f0f1981 100644
--- a/shib-attribute-resolver-api/src/main/java/net/shibboleth/idp/attribute/resolver/dc/ldap/TemplatedExecutableSearchFilterBuilder.java
+++ b/shib-attribute-resolver-api/src/main/java/net/shibboleth/idp/attribute/resolver/dc/ldap/TemplatedExecutableSearchFilterBuilder.java
@@ -92,7 +92,7 @@ public class TemplatedExecutableSearchFilterBuilder extends AbstractExecutableSe
      * @param velocityTemplate template to be evaluated
      */
     public void setTemplateText(@Nullable final String velocityTemplate) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
 
         templateText = StringSupport.trimOrNull(velocityTemplate);
     }
@@ -112,7 +112,7 @@ public class TemplatedExecutableSearchFilterBuilder extends AbstractExecutableSe
      * @param velocityEngine engine to be used
      */
     public void setVelocityEngine(final VelocityEngine velocityEngine) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
 
         engine = velocityEngine;
     }
@@ -132,7 +132,7 @@ public class TemplatedExecutableSearchFilterBuilder extends AbstractExecutableSe
      * @param handler reference insertion event handler to be used
      */
     public void setReferenceInsertionEventHandler(@Nullable final ReferenceInsertionEventHandler handler) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
 
         eventHandler = handler;
     }
diff --git a/shib-attribute-resolver-api/src/main/java/net/shibboleth/idp/attribute/resolver/dc/rdbms/AbstractExecutableStatementBuilder.java b/shib-attribute-resolver-api/src/main/java/net/shibboleth/idp/attribute/resolver/dc/rdbms/AbstractExecutableStatementBuilder.java
index 267fdb2eb..cced08234 100644
--- a/shib-attribute-resolver-api/src/main/java/net/shibboleth/idp/attribute/resolver/dc/rdbms/AbstractExecutableStatementBuilder.java
+++ b/shib-attribute-resolver-api/src/main/java/net/shibboleth/idp/attribute/resolver/dc/rdbms/AbstractExecutableStatementBuilder.java
@@ -64,7 +64,7 @@ public abstract class AbstractExecutableStatementBuilder extends AbstractInitial
      * @param timeout of the SQL query
      */
     public void setQueryTimeout(@Nonnull final Duration timeout) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         Constraint.isNotNull(timeout, "Query timeout cannot be null");
         Constraint.isFalse(timeout.isNegative(), "Query timeout cannot be negative");
         
diff --git a/shib-attribute-resolver-api/src/main/java/net/shibboleth/idp/attribute/resolver/dc/rdbms/TemplatedExecutableStatementBuilder.java b/shib-attribute-resolver-api/src/main/java/net/shibboleth/idp/attribute/resolver/dc/rdbms/TemplatedExecutableStatementBuilder.java
index f6f0f6d58..d5de8d9d2 100644
--- a/shib-attribute-resolver-api/src/main/java/net/shibboleth/idp/attribute/resolver/dc/rdbms/TemplatedExecutableStatementBuilder.java
+++ b/shib-attribute-resolver-api/src/main/java/net/shibboleth/idp/attribute/resolver/dc/rdbms/TemplatedExecutableStatementBuilder.java
@@ -91,7 +91,7 @@ public class TemplatedExecutableStatementBuilder extends AbstractExecutableState
      * @param velocityTemplate template to be evaluated
      */
     public void setTemplateText(@Nullable final String velocityTemplate) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
 
         templateText = StringSupport.trimOrNull(velocityTemplate);
     }
@@ -111,7 +111,7 @@ public class TemplatedExecutableStatementBuilder extends AbstractExecutableState
      * @param velocityEngine engine to be used
      */
     public void setVelocityEngine(@Nonnull final VelocityEngine velocityEngine) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
 
         engine = velocityEngine;
     }
@@ -131,7 +131,7 @@ public class TemplatedExecutableStatementBuilder extends AbstractExecutableState
      * @param handler reference insertion event handler to be used
      */
     public void setReferenceInsertionEventHandler(@Nullable final ReferenceInsertionEventHandler handler) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
 
         eventHandler = handler;
     }
diff --git a/shib-attribute-resolver-api/src/test/java/net/shibboleth/idp/attribute/resolver/testing/MockStaticAttributeDefinition.java b/shib-attribute-resolver-api/src/test/java/net/shibboleth/idp/attribute/resolver/testing/MockStaticAttributeDefinition.java
index cb4967401..148dc37ea 100644
--- a/shib-attribute-resolver-api/src/test/java/net/shibboleth/idp/attribute/resolver/testing/MockStaticAttributeDefinition.java
+++ b/shib-attribute-resolver-api/src/test/java/net/shibboleth/idp/attribute/resolver/testing/MockStaticAttributeDefinition.java
@@ -48,7 +48,7 @@ public class MockStaticAttributeDefinition extends AbstractAttributeDefinition {
      * @param newAttribute what to set.
      */
     public void setValue(@Nullable IdPAttribute newAttribute) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         
         if (null != newAttribute) {
             value = newAttribute;
@@ -69,7 +69,7 @@ public class MockStaticAttributeDefinition extends AbstractAttributeDefinition {
     @Nullable protected IdPAttribute doAttributeDefinitionResolve(
             @Nonnull final AttributeResolutionContext resolutionContext,
             @Nonnull final AttributeResolverWorkContext workContext) throws ResolutionException {
-        throwComponentStateExceptions();
+        checkComponentActive();
         log.debug("Attribute definition '{}': Resolving static attribute {}", getId(), value);
         return value;
     }
diff --git a/shib-attribute-resolver-api/src/test/java/net/shibboleth/idp/attribute/resolver/testing/MockStaticDataConnector.java b/shib-attribute-resolver-api/src/test/java/net/shibboleth/idp/attribute/resolver/testing/MockStaticDataConnector.java
index 42a80db1e..5472f3a10 100644
--- a/shib-attribute-resolver-api/src/test/java/net/shibboleth/idp/attribute/resolver/testing/MockStaticDataConnector.java
+++ b/shib-attribute-resolver-api/src/test/java/net/shibboleth/idp/attribute/resolver/testing/MockStaticDataConnector.java
@@ -61,7 +61,7 @@ public class MockStaticDataConnector extends AbstractDataConnector {
      * @param newValues static values returned by this connector
      */
     public void setValues(@Nullable Collection<IdPAttribute> newValues) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
 
         if (null == newValues) {
             attributes = null;
@@ -84,7 +84,7 @@ public class MockStaticDataConnector extends AbstractDataConnector {
     @Nullable protected Map<String, IdPAttribute> doDataConnectorResolve(
             @Nonnull final AttributeResolutionContext resolutionContext,
             @Nonnull final AttributeResolverWorkContext workContext) throws ResolutionException {
-        throwComponentStateExceptions();
+        checkComponentActive();
         log.debug("Data connector '{}': Resolving static attribute {}", getId(), attributes);
         return attributes;
     }
diff --git a/shib-attribute-resolver-api/src/test/java/net/shibboleth/idp/attribute/resolver/testing/TestSources.java b/shib-attribute-resolver-api/src/test/java/net/shibboleth/idp/attribute/resolver/testing/TestSources.java
index 3ae9cbe8d..6a3314392 100644
--- a/shib-attribute-resolver-api/src/test/java/net/shibboleth/idp/attribute/resolver/testing/TestSources.java
+++ b/shib-attribute-resolver-api/src/test/java/net/shibboleth/idp/attribute/resolver/testing/TestSources.java
@@ -241,7 +241,7 @@ public final class TestSources {
          * @param newAttribute what to set.
          */
         public void setValue(@Nullable final IdPAttribute newAttribute) {
-            throwSetterPreconditionExceptions();
+            checkSetterPreconditions();
             value = newAttribute;
         }
 
diff --git a/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/ad/impl/ContextDerivedAttributeDefinition.java b/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/ad/impl/ContextDerivedAttributeDefinition.java
index 1d82085f3..27d43e622 100644
--- a/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/ad/impl/ContextDerivedAttributeDefinition.java
+++ b/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/ad/impl/ContextDerivedAttributeDefinition.java
@@ -60,7 +60,7 @@ public class ContextDerivedAttributeDefinition extends AbstractAttributeDefiniti
      */
     public void setAttributeValuesFunction(
             @Nonnull final Function<ProfileRequestContext,List<IdPAttributeValue>> function) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         attributeValuesFunction = Constraint.isNotNull(function, "Attribute Function cannot be null");
     }
 
diff --git a/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/ad/impl/DecryptedAttributeDefinition.java b/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/ad/impl/DecryptedAttributeDefinition.java
index 04b3f5fc3..25a12f1f9 100644
--- a/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/ad/impl/DecryptedAttributeDefinition.java
+++ b/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/ad/impl/DecryptedAttributeDefinition.java
@@ -65,7 +65,7 @@ public class DecryptedAttributeDefinition extends AbstractAttributeDefinition {
      * @param newSealer what to set
      */
     public void setDataSealer(@Nonnull final DataSealer newSealer) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
 
         sealer = Constraint.isNotNull(newSealer, "DataSealer cannot be null");
     }
diff --git a/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/ad/impl/PrescopedAttributeDefinition.java b/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/ad/impl/PrescopedAttributeDefinition.java
index 081d173a7..2064bcfba 100644
--- a/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/ad/impl/PrescopedAttributeDefinition.java
+++ b/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/ad/impl/PrescopedAttributeDefinition.java
@@ -71,7 +71,7 @@ public class PrescopedAttributeDefinition extends AbstractAttributeDefinition {
      * @param newScopeDelimiter delimiter between value and scope
      */
     public void setScopeDelimiter(@Nonnull @NotEmpty final String newScopeDelimiter) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
 
         scopeDelimiter =
                 Constraint.isNotNull(StringSupport.trimOrNull(newScopeDelimiter), getLogPrefix()
@@ -83,7 +83,7 @@ public class PrescopedAttributeDefinition extends AbstractAttributeDefinition {
             @Nonnull final AttributeResolutionContext resolutionContext,
             @Nonnull final AttributeResolverWorkContext workContext) throws ResolutionException {
         Constraint.isNotNull(workContext, getLogPrefix() + " AttributeResolverWorkContext cannot be null");
-        throwComponentStateExceptions();
+        checkComponentActive();
 
         final IdPAttribute resultantAttribute = new IdPAttribute(getId());
 
diff --git a/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/ad/impl/RegexSplitAttributeDefinition.java b/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/ad/impl/RegexSplitAttributeDefinition.java
index 52c2f5b7b..c21d8e04a 100644
--- a/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/ad/impl/RegexSplitAttributeDefinition.java
+++ b/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/ad/impl/RegexSplitAttributeDefinition.java
@@ -72,7 +72,7 @@ public class RegexSplitAttributeDefinition extends AbstractAttributeDefinition {
      * @param expression regular expression used to split input values
      */
     public void setRegularExpression(@Nonnull final Pattern expression) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
 
         regexp = Constraint.isNotNull(expression, "Regular expression cannot be null");
     }
@@ -83,7 +83,7 @@ public class RegexSplitAttributeDefinition extends AbstractAttributeDefinition {
             @Nonnull final AttributeResolverWorkContext workContext) throws ResolutionException {
         Constraint.isNotNull(workContext, "AttributeResolverWorkContext cannot be null");
 
-        throwComponentStateExceptions();
+        checkComponentActive();
 
         final List<IdPAttributeValue> resultantValues = new ArrayList<>();
         final IdPAttribute resultantAttribute = new IdPAttribute(getId());
diff --git a/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/ad/impl/ScopedAttributeDefinition.java b/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/ad/impl/ScopedAttributeDefinition.java
index 915bf15c8..69524444f 100644
--- a/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/ad/impl/ScopedAttributeDefinition.java
+++ b/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/ad/impl/ScopedAttributeDefinition.java
@@ -82,7 +82,7 @@ public class ScopedAttributeDefinition extends AbstractAttributeDefinition {
      * @param newScope what to set.
      */
     public void setScope(@Nonnull @NotEmpty final String newScope) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
 
         scope = Constraint.isNotNull(StringSupport.trimOrNull(newScope), "Scope can not be null or empty");
     }
@@ -102,7 +102,7 @@ public class ScopedAttributeDefinition extends AbstractAttributeDefinition {
      * @param attributeId what to set.
      */
     public void setScopeSource(@Nonnull @NotEmpty final String attributeId) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
 
         scopeSource = Constraint.isNotNull(
                 StringSupport.trimOrNull(attributeId), "ScopeSource can not be null or empty");
@@ -145,7 +145,7 @@ public class ScopedAttributeDefinition extends AbstractAttributeDefinition {
             @Nonnull final AttributeResolutionContext resolutionContext,
             @Nonnull final AttributeResolverWorkContext workContext) throws ResolutionException {
 
-        throwComponentStateExceptions();
+        checkComponentActive();
 
         final IdPAttribute resultantAttribute = new IdPAttribute(getId());
         final String scopeValue;
diff --git a/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/ad/impl/ScriptedAttributeDefinition.java b/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/ad/impl/ScriptedAttributeDefinition.java
index 5e7c1f1ac..041dd5b84 100644
--- a/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/ad/impl/ScriptedAttributeDefinition.java
+++ b/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/ad/impl/ScriptedAttributeDefinition.java
@@ -109,7 +109,7 @@ public class ScriptedAttributeDefinition extends AbstractAttributeDefinition {
      * @param object the custom object
      */
     @Nullable public void setCustomObject(@Nullable final Object object) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         customObject = object;
     }
 
@@ -128,7 +128,7 @@ public class ScriptedAttributeDefinition extends AbstractAttributeDefinition {
      * @param definitionScript the script to be evaluated
      */
     public void setScript(@Nonnull final EvaluableScript definitionScript) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         script = Constraint.isNotNull(definitionScript, "Attribute definition script cannot be null");
     }
 
@@ -141,7 +141,7 @@ public class ScriptedAttributeDefinition extends AbstractAttributeDefinition {
      */
     @Nullable public void setScriptContextExtenders(
             @Nullable @NonnullElements final Collection<ResolverScriptContextExtender> extenders) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         if (extenders != null) {
             contextExtenders = List.copyOf(extenders);
         } else {
diff --git a/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/ad/impl/StaticAttributeDefinition.java b/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/ad/impl/StaticAttributeDefinition.java
index c38ff3f4f..b54d318cf 100644
--- a/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/ad/impl/StaticAttributeDefinition.java
+++ b/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/ad/impl/StaticAttributeDefinition.java
@@ -48,7 +48,7 @@ public class StaticAttributeDefinition extends AbstractAttributeDefinition {
      * @param newAttribute what to set.
      */
     public void setValue(@Nullable final IdPAttribute newAttribute) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
 
         value = newAttribute;
     }
@@ -66,7 +66,7 @@ public class StaticAttributeDefinition extends AbstractAttributeDefinition {
     @Override @Nonnull protected IdPAttribute doAttributeDefinitionResolve(
             final AttributeResolutionContext resolutionContext,
             @Nonnull final AttributeResolverWorkContext workContext) throws ResolutionException {
-        throwComponentStateExceptions();
+        checkComponentActive();
         log.debug("{} resolving static attribute {}", getLogPrefix(), value);
 
         return value;
diff --git a/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/ad/impl/TemplateAttributeDefinition.java b/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/ad/impl/TemplateAttributeDefinition.java
index e34f93546..0c7432ed7 100644
--- a/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/ad/impl/TemplateAttributeDefinition.java
+++ b/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/ad/impl/TemplateAttributeDefinition.java
@@ -99,7 +99,7 @@ public class TemplateAttributeDefinition extends AbstractAttributeDefinition {
      * @param velocityTemplate template to be evaluated
      */
     public void setTemplateText(@Nullable final String velocityTemplate) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
 
         templateText = StringSupport.trimOrNull(velocityTemplate);
     }
@@ -119,7 +119,7 @@ public class TemplateAttributeDefinition extends AbstractAttributeDefinition {
      * @param velocityEngine engine to be used
      */
     public void setVelocityEngine(@Nonnull final VelocityEngine velocityEngine) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
 
         engine = Constraint.isNotNull(velocityEngine, "VelocityEngine cannot be null");
     }
diff --git a/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/ad/mapped/impl/MappedAttributeDefinition.java b/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/ad/mapped/impl/MappedAttributeDefinition.java
index 4e936652c..add628427 100644
--- a/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/ad/mapped/impl/MappedAttributeDefinition.java
+++ b/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/ad/mapped/impl/MappedAttributeDefinition.java
@@ -88,7 +88,7 @@ public class MappedAttributeDefinition extends AbstractAttributeDefinition {
      * @param mappings functions used to map an input value to an output value
      */
     public void setValueMaps(@Nullable @NonnullElements final Collection<ValueMap> mappings) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
 
         valueMaps = mappings != null ? Set.copyOf(mappings) : Collections.emptySet();
     }
@@ -120,7 +120,7 @@ public class MappedAttributeDefinition extends AbstractAttributeDefinition {
      * @param newDefaultValue the default return value
      */
     public void setDefaultValue(@Nullable final String newDefaultValue) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         final String trimmedDefault = StringSupport.trimOrNull(newDefaultValue);
         if (null == trimmedDefault) {
             defaultValue = null;
@@ -144,7 +144,7 @@ public class MappedAttributeDefinition extends AbstractAttributeDefinition {
      * @param newPassThru whether the definition passes unmatched values unchanged or suppresses them.
      */
     public void setPassThru(final boolean newPassThru) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         passThru = newPassThru;
     }
 
@@ -188,7 +188,7 @@ public class MappedAttributeDefinition extends AbstractAttributeDefinition {
     @Override @Nullable protected IdPAttribute doAttributeDefinitionResolve(
             @Nonnull final AttributeResolutionContext resolutionContext,
             @Nonnull final AttributeResolverWorkContext workContext) throws ResolutionException {
-        throwComponentStateExceptions();
+        checkComponentActive();
         Constraint.isNotNull(resolutionContext, "Attribute resolution context can not be null");
 
         final List<IdPAttributeValue> unmappedResults =
diff --git a/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/ad/mapped/impl/SourceValue.java b/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/ad/mapped/impl/SourceValue.java
index 2099f9394..e15b32399 100644
--- a/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/ad/mapped/impl/SourceValue.java
+++ b/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/ad/mapped/impl/SourceValue.java
@@ -74,7 +74,7 @@ public class SourceValue extends AbstractInitializableComponent {
      * @param theCaseSensitive whether case should be ignored when matching.  Null taken as default;
      */
     public void setCaseSensitive(final boolean theCaseSensitive) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         caseSensitive = theCaseSensitive;
     }
 
@@ -95,7 +95,7 @@ public class SourceValue extends AbstractInitializableComponent {
      * @deprecated in V4 - use setCaseSensitive
      */
     @Deprecated public void setIgnoreCase(final boolean theIgnoreCase) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         DeprecationSupport.warnOnce(ObjectType.METHOD, "setIgnoreCase", null, "setCaseSensitive");
             setCaseSensitive(!theIgnoreCase);
     }
@@ -118,7 +118,7 @@ public class SourceValue extends AbstractInitializableComponent {
      * @param thePartialMatch whether partial matches should be allowed.  Null defaults to false;
      */
     public void setPartialMatch(final boolean thePartialMatch) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         partialMatch = thePartialMatch;
     }
     
@@ -137,7 +137,7 @@ public class SourceValue extends AbstractInitializableComponent {
      * @param theValue value string This may contain regular expressions.
      */
     public void setValue(@Nullable final String theValue) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         value = StringSupport.trimOrNull(theValue);
     }
     
@@ -158,7 +158,7 @@ public class SourceValue extends AbstractInitializableComponent {
      * @return Returns the pattern.
      */
     @Nonnull public Pattern getPattern() {
-        throwComponentStateExceptions();
+        checkComponentActive();
         Constraint.isFalse(isPartialMatch(), "getPattern is only meaningful for a non partial Match, use getValue()");
         return pattern;
     }
diff --git a/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/dc/http/impl/AbstractHTTPSearchBuilder.java b/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/dc/http/impl/AbstractHTTPSearchBuilder.java
index aeeb608e4..4f0169aa8 100644
--- a/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/dc/http/impl/AbstractHTTPSearchBuilder.java
+++ b/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/dc/http/impl/AbstractHTTPSearchBuilder.java
@@ -92,7 +92,7 @@ public abstract class AbstractHTTPSearchBuilder extends AbstractInitializableCom
      * @param headers map of headers
      */
     public void setHeaders(@Nonnull @NonnullElements final Map<String,String> headers) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
                 
         Constraint.isNotNull(headers, "Map of headers cannot be null");
         
@@ -128,7 +128,7 @@ public abstract class AbstractHTTPSearchBuilder extends AbstractInitializableCom
      * @param params client security parameters
      */
     public void setHttpClientSecurityParameters(@Nullable final HttpClientSecurityParameters params) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
 
         httpClientSecurityParameters = params;
     }
diff --git a/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/dc/http/impl/HTTPDataConnector.java b/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/dc/http/impl/HTTPDataConnector.java
index 3045a6aed..7ebce6dbf 100644
--- a/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/dc/http/impl/HTTPDataConnector.java
+++ b/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/dc/http/impl/HTTPDataConnector.java
@@ -79,7 +79,7 @@ public class HTTPDataConnector extends AbstractSearchDataConnector<HTTPSearch,HT
      * @param client client to use
      */
     public void setHttpClient(@Nonnull final HttpClient client) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
 
         httpClient = Constraint.isNotNull(client, "HttpClient cannot be null");
     }
@@ -90,7 +90,7 @@ public class HTTPDataConnector extends AbstractSearchDataConnector<HTTPSearch,HT
      * @param params the new client security parameters
      */
     public void setHttpClientSecurityParameters(@Nullable final HttpClientSecurityParameters params) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
 
         httpClientSecurityParameters = params;
     }
diff --git a/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/dc/http/impl/TemplatedBodyBuilder.java b/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/dc/http/impl/TemplatedBodyBuilder.java
index 767dead9d..b2df6a85c 100644
--- a/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/dc/http/impl/TemplatedBodyBuilder.java
+++ b/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/dc/http/impl/TemplatedBodyBuilder.java
@@ -166,7 +166,7 @@ public class TemplatedBodyBuilder extends AbstractHTTPSearchBuilder {
      * @param text template to be evaluated
      */
     public void setURLTemplateText(@Nullable final String text) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
 
         urlTemplateText = StringSupport.trimOrNull(text);
     }
@@ -186,7 +186,7 @@ public class TemplatedBodyBuilder extends AbstractHTTPSearchBuilder {
      * @param text template to be evaluated
      */
     public void setBodyTemplateText(@Nullable final String text) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
 
         bodyTemplateText = StringSupport.trimOrNull(text);
     }
@@ -206,7 +206,7 @@ public class TemplatedBodyBuilder extends AbstractHTTPSearchBuilder {
      * @param text template to be evaluated
      */
     public void setCacheKeyTemplateText(@Nullable final String text) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
 
         cacheKeyTemplateText = StringSupport.trimOrNull(text);
     }
@@ -226,7 +226,7 @@ public class TemplatedBodyBuilder extends AbstractHTTPSearchBuilder {
      * @param velocityEngine engine to be used
      */
     public void setVelocityEngine(@Nonnull final VelocityEngine velocityEngine) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
 
         engine = Constraint.isNotNull(velocityEngine, "Velocity engine cannot be null");
     }
@@ -239,7 +239,7 @@ public class TemplatedBodyBuilder extends AbstractHTTPSearchBuilder {
      * @param m method
      */
     public void setMethod(@Nonnull @NotEmpty final String m) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
 
         method = Constraint.isNotNull(StringSupport.trimOrNull(m), "HTTP method cannot be null or empty");
         Constraint.isTrue(HttpPost.METHOD_NAME.equals(method) || HttpPut.METHOD_NAME.equals(method),
@@ -254,7 +254,7 @@ public class TemplatedBodyBuilder extends AbstractHTTPSearchBuilder {
      * @param type MIME type
      */
     public void setMIMEType(@Nonnull @NotEmpty final String type) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
 
         mimeType = Constraint.isNotNull(StringSupport.trimOrNull(type), "MIME type cannot be null or empty");
     }
@@ -265,7 +265,7 @@ public class TemplatedBodyBuilder extends AbstractHTTPSearchBuilder {
      * @param c character set
      */
     public void setCharacterSet(@Nullable final String c) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
 
         charset = StringSupport.trimOrNull(c);
     }
@@ -276,7 +276,7 @@ public class TemplatedBodyBuilder extends AbstractHTTPSearchBuilder {
      * @param object the custom object
      */
     public void setCustomObject(@Nullable final Object object) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
 
         customObject = object;
     }
diff --git a/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/dc/http/impl/TemplatedURLBuilder.java b/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/dc/http/impl/TemplatedURLBuilder.java
index 4f5c7ae90..32dea74b1 100644
--- a/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/dc/http/impl/TemplatedURLBuilder.java
+++ b/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/dc/http/impl/TemplatedURLBuilder.java
@@ -105,7 +105,7 @@ public class TemplatedURLBuilder extends AbstractHTTPSearchBuilder {
      * @param text template to be evaluated
      */
     public void setTemplateText(@Nullable final String text) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
 
         templateText = StringSupport.trimOrNull(text);
     }
@@ -125,7 +125,7 @@ public class TemplatedURLBuilder extends AbstractHTTPSearchBuilder {
      * @param velocityEngine engine to be used
      */
     public void setVelocityEngine(@Nonnull final VelocityEngine velocityEngine) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
 
         engine = Constraint.isNotNull(velocityEngine, "Velocity engine cannot be null");
     }
@@ -137,7 +137,7 @@ public class TemplatedURLBuilder extends AbstractHTTPSearchBuilder {
      * @param object the custom object
      */
     public void setCustomObject(@Nullable final Object object) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
 
         customObject = object;
     }
diff --git a/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/dc/impl/AbstractSearchDataConnector.java b/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/dc/impl/AbstractSearchDataConnector.java
index f289d5b8f..4ef7df603 100644
--- a/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/dc/impl/AbstractSearchDataConnector.java
+++ b/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/dc/impl/AbstractSearchDataConnector.java
@@ -87,7 +87,7 @@ public abstract class AbstractSearchDataConnector<T1 extends ExecutableSearch,T2
      * @param builder builder used to create the executable searches
      */
     public void setExecutableSearchBuilder(@Nonnull final ExecutableSearchBuilder<T1> builder) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         searchBuilder = Constraint.isNotNull(builder, "Executable search builder cannot be null");
     }
 
@@ -106,7 +106,7 @@ public abstract class AbstractSearchDataConnector<T1 extends ExecutableSearch,T2
      * @param validator used to validate this connector
      */
     public void setValidator(@Nonnull final Validator validator) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         connectorValidator = Constraint.isNotNull(validator, "Validator cannot be null");
     }
 
@@ -125,7 +125,7 @@ public abstract class AbstractSearchDataConnector<T1 extends ExecutableSearch,T2
      * @param strategy strategy for mapping from search results to a collection of {@link IdPAttribute}s
      */
     public void setMappingStrategy(@Nonnull final T2 strategy) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         mappingStrategy = Constraint.isNotNull(strategy, "Mapping strategy cannot be null");
     }
 
@@ -166,7 +166,7 @@ public abstract class AbstractSearchDataConnector<T1 extends ExecutableSearch,T2
     @Override @Nullable protected Map<String, IdPAttribute> doDataConnectorResolve(
             @Nonnull final AttributeResolutionContext resolutionContext,
             @Nonnull final AttributeResolverWorkContext workContext) throws ResolutionException {
-        throwComponentStateExceptions();
+        checkComponentActive();
 
         final Map<String, List<IdPAttributeValue>> dependsAttributes =
                 PluginDependencySupport.getAllAttributeValues(workContext,
diff --git a/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/dc/impl/ContextDerivedDataConnector.java b/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/dc/impl/ContextDerivedDataConnector.java
index 5eb78c10d..7d63a34b3 100644
--- a/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/dc/impl/ContextDerivedDataConnector.java
+++ b/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/dc/impl/ContextDerivedDataConnector.java
@@ -70,7 +70,7 @@ public class ContextDerivedDataConnector extends AbstractDataConnector {
      * @param function what to set.
      */
     public void setAttributesFunction(@Nonnull final Function<ProfileRequestContext,List<IdPAttribute>> function) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         attributesFunction = Constraint.isNotNull(function, "Attribute Function cannot be null");
     }
 
@@ -89,7 +89,7 @@ public class ContextDerivedDataConnector extends AbstractDataConnector {
      * @param flag flag to set
      */
     public void setNoResultIsError(final boolean flag) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         noResultIsError = flag;
     }
 
diff --git a/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/dc/impl/PairwiseIdDataConnector.java b/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/dc/impl/PairwiseIdDataConnector.java
index 8dad4d2f4..3110de0db 100644
--- a/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/dc/impl/PairwiseIdDataConnector.java
+++ b/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/dc/impl/PairwiseIdDataConnector.java
@@ -74,7 +74,7 @@ public class PairwiseIdDataConnector extends AbstractDataConnector {
      * @return source attribute ID
      */
     @Nullable @NonnullAfterInit public String getSourceAttributeInformation() {
-        throwComponentStateExceptions();
+        checkComponentActive();
         return sourceInformation;
     }
 
@@ -93,7 +93,7 @@ public class PairwiseIdDataConnector extends AbstractDataConnector {
      * @param newAttributeId what to set.
      */
     public void setGeneratedAttributeId(@Nullable final String newAttributeId) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         
         generatedAttribute = newAttributeId;
     }
@@ -113,7 +113,7 @@ public class PairwiseIdDataConnector extends AbstractDataConnector {
      * @param store ID store
      */
     public void setPairwiseIdStore(@Nonnull final PairwiseIdStore store) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         
         pidStore = Constraint.isNotNull(store, "PairwiseIdStore cannot be null");
     }
@@ -190,7 +190,7 @@ public class PairwiseIdDataConnector extends AbstractDataConnector {
      * @return the value, or null in any of the failure cases.
      */
     @Nullable protected String resolveSourceAttribute(@Nonnull final AttributeResolverWorkContext workContext) {
-        throwComponentStateExceptions();
+        checkComponentActive();
 
         final List<IdPAttributeValue> attributeValues =
                 PluginDependencySupport.getMergedAttributeValues(workContext,
@@ -242,7 +242,7 @@ public class PairwiseIdDataConnector extends AbstractDataConnector {
             @Nonnull final AttributeResolutionContext resolutionContext,
             @Nonnull final AttributeResolverWorkContext workContext) throws ResolutionException {
 
-        throwComponentStateExceptions();
+        checkComponentActive();
 
         final String principalName = resolutionContext.getPrincipal();
         if (Strings.isNullOrEmpty(principalName)) {
@@ -295,7 +295,7 @@ public class PairwiseIdDataConnector extends AbstractDataConnector {
      * @return null or the attribute.
      */
     @Nullable protected Map<String, IdPAttribute> encodeAsAttribute(@Nullable final String value) {
-        throwComponentStateExceptions();
+        checkComponentActive();
         if (null == value) {
             // The message will have been logged above
             return null;
diff --git a/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/dc/impl/ScriptedDataConnector.java b/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/dc/impl/ScriptedDataConnector.java
index a1fe10c9e..b4e14ac4c 100644
--- a/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/dc/impl/ScriptedDataConnector.java
+++ b/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/dc/impl/ScriptedDataConnector.java
@@ -94,7 +94,7 @@ public class ScriptedDataConnector extends AbstractDataConnector {
      * @param object the custom object
      */
     @Nullable public void setCustomObject(final Object object) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         customObject = object;
     }
 
@@ -113,7 +113,7 @@ public class ScriptedDataConnector extends AbstractDataConnector {
      * @param definitionScript the script to be evaluated
      */
     public void setScript(@Nonnull final EvaluableScript definitionScript) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         script = Constraint.isNotNull(definitionScript, "Attribute definition script cannot be null");
     }
 
@@ -126,7 +126,7 @@ public class ScriptedDataConnector extends AbstractDataConnector {
      */
     @Nullable public void setScriptContextExtenders(
             @Nullable @NonnullElements final Collection<ResolverScriptContextExtender> extenders) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         if (extenders != null) {
             contextExtenders = List.copyOf(extenders);
         } else {
diff --git a/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/dc/impl/StaticDataConnector.java b/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/dc/impl/StaticDataConnector.java
index 8a7519ff4..97375fa1d 100644
--- a/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/dc/impl/StaticDataConnector.java
+++ b/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/dc/impl/StaticDataConnector.java
@@ -67,7 +67,7 @@ public class StaticDataConnector extends AbstractDataConnector {
      * @param newValues static values returned by this connector
      */
     public void setValues(@Nonnull @NonnullElements final Collection<IdPAttribute> newValues) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
 
         Constraint.isNotNull(newValues, "Values must not be null");
 
@@ -84,7 +84,7 @@ public class StaticDataConnector extends AbstractDataConnector {
     @Nonnull protected Map<String, IdPAttribute> doDataConnectorResolve(
             @Nonnull final AttributeResolutionContext resolutionContext,
             @Nonnull final AttributeResolverWorkContext workContext) throws ResolutionException {
-        throwComponentStateExceptions();
+        checkComponentActive();
         log.trace("{} Resolved attributes: {}", getLogPrefix(), attributes);
         return attributes;
     }
diff --git a/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/dc/ldap/impl/ConnectionFactoryValidator.java b/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/dc/ldap/impl/ConnectionFactoryValidator.java
index 65df5774d..d4d799e12 100644
--- a/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/dc/ldap/impl/ConnectionFactoryValidator.java
+++ b/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/dc/ldap/impl/ConnectionFactoryValidator.java
@@ -66,7 +66,7 @@ public class ConnectionFactoryValidator extends AbstractInitializableComponent i
      * @param factory the connection factory
      */
     @Nonnull public void setConnectionFactory(@Nonnull final ConnectionFactory factory) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         connectionFactory = Constraint.isNotNull(factory, "Connection factory must be non-null");
     }
 
@@ -82,7 +82,7 @@ public class ConnectionFactoryValidator extends AbstractInitializableComponent i
 
     /** {@inheritDoc} */
     public void setThrowValidateError(final boolean what) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         throwOnValidateError = what;
     }
 
diff --git a/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/dc/ldap/impl/LDAPDataConnector.java b/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/dc/ldap/impl/LDAPDataConnector.java
index 6d88548fc..b0736c8ec 100644
--- a/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/dc/ldap/impl/LDAPDataConnector.java
+++ b/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/dc/ldap/impl/LDAPDataConnector.java
@@ -88,7 +88,7 @@ public class LDAPDataConnector extends AbstractSearchDataConnector<ExecutableSea
      * @param factory connection factory for retrieving {@link Connection}s
      */
     public void setConnectionFactory(@Nonnull final ConnectionFactory factory) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         connectionFactory = Constraint.isNotNull(factory, "LDAP connection factory can not be null");
     }
 
@@ -107,7 +107,7 @@ public class LDAPDataConnector extends AbstractSearchDataConnector<ExecutableSea
      * @param executor search executor for executing searches
      */
     public void setSearchExecutor(@Nonnull final SearchExecutor executor) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         searchExecutor = Constraint.isNotNull(executor, "LDAP search executor can not be null");
     }
 
diff --git a/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/dc/rdbms/impl/DataSourceValidator.java b/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/dc/rdbms/impl/DataSourceValidator.java
index df5db5497..de4c51a7d 100644
--- a/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/dc/rdbms/impl/DataSourceValidator.java
+++ b/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/dc/rdbms/impl/DataSourceValidator.java
@@ -71,7 +71,7 @@ public class DataSourceValidator extends AbstractInitializableComponent implemen
      * @param source the data source
      */
     public void setDataSource(@Nonnull final DataSource source) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         dataSource =  Constraint.isNotNull(source, "Data Source should not be null");
     }
 
@@ -87,7 +87,7 @@ public class DataSourceValidator extends AbstractInitializableComponent implemen
 
     /** {@inheritDoc} */
     public void setThrowValidateError(final boolean value) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         throwOnValidateError = value;
     }
 
@@ -99,7 +99,7 @@ public class DataSourceValidator extends AbstractInitializableComponent implemen
 
     /** {@inheritDoc} */
     @Override public void validate() throws ValidationException {
-        throwComponentStateExceptions();
+        checkComponentActive();
         
         Connection connection = null;
         try {
diff --git a/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/dc/rdbms/impl/RDBMSDataConnector.java b/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/dc/rdbms/impl/RDBMSDataConnector.java
index 30b03520e..f1e37af40 100644
--- a/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/dc/rdbms/impl/RDBMSDataConnector.java
+++ b/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/dc/rdbms/impl/RDBMSDataConnector.java
@@ -79,7 +79,7 @@ public class RDBMSDataConnector extends AbstractSearchDataConnector<ExecutableSt
      * @param source JDBC data source for retrieving {@link Connection}s
      */
     public void setDataSource(@Nonnull final DataSource source) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
 
         dataSource = Constraint.isNotNull(source, "JDBC data source can not be null");
     }
diff --git a/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/dc/storage/impl/StorageServiceDataConnector.java b/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/dc/storage/impl/StorageServiceDataConnector.java
index d2b129355..08d93b276 100644
--- a/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/dc/storage/impl/StorageServiceDataConnector.java
+++ b/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/dc/storage/impl/StorageServiceDataConnector.java
@@ -88,7 +88,7 @@ public class StorageServiceDataConnector
      * @param service storage service to use
      */
     public void setStorageService(@Nonnull final StorageService service) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         storageService = Constraint.isNotNull(service, "StorageService cannot be null");
     }
     
@@ -107,7 +107,7 @@ public class StorageServiceDataConnector
      * @param flag flag to set
      */
     public void setNoResultAnError(final boolean flag) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         noResultAnError = flag;
     }
     
@@ -117,7 +117,7 @@ public class StorageServiceDataConnector
      * @param id what to set.
      */
     public void setGeneratedAttributeID(@Nullable final String id) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         generatedAttributeID = StringSupport.trimOrNull(id);
     }
     
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 eb0e8f99a..743a03a60 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
@@ -109,7 +109,7 @@ public class TemplatedSearchBuilder extends AbstractInitializableComponent
      * @param text template to be evaluated
      */
     public void setContextTemplateText(@Nullable final String text) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         contextTemplateText = StringSupport.trimOrNull(text);
     }
 
@@ -128,7 +128,7 @@ public class TemplatedSearchBuilder extends AbstractInitializableComponent
      * @param text template to be evaluated
      */
     public void setKeyTemplateText(@Nullable final String text) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         keyTemplateText = StringSupport.trimOrNull(text);
     }
 
@@ -147,7 +147,7 @@ public class TemplatedSearchBuilder extends AbstractInitializableComponent
      * @param velocityEngine engine to be used
      */
     public void setVelocityEngine(@Nonnull final VelocityEngine velocityEngine) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         engine = Constraint.isNotNull(velocityEngine, "Velocity engine cannot be null");
     }
     
@@ -157,7 +157,7 @@ public class TemplatedSearchBuilder extends AbstractInitializableComponent
      * @param object the custom object
      */
     public void setCustomObject(@Nullable final Object object) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         customObject = object;
     }
     
diff --git a/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/impl/AttributeResolverImpl.java b/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/impl/AttributeResolverImpl.java
index d704747bb..5d600c096 100644
--- a/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/impl/AttributeResolverImpl.java
+++ b/shib-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/impl/AttributeResolverImpl.java
@@ -114,7 +114,7 @@ public class AttributeResolverImpl extends AbstractServiceableComponent<Attribut
      * @param definitions attribute definitions loaded in to this resolver
      */
     public void setAttributeDefinitions(@Nonnull @NonnullElements final Collection<AttributeDefinition> definitions) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         Constraint.isNotNull(definitions, "Attribute Defintions should be non-null");
         
         final Map<String, AttributeDefinition> checkedDefinitions = new HashMap<>(definitions.size());
@@ -144,7 +144,7 @@ public class AttributeResolverImpl extends AbstractServiceableComponent<Attribut
      * @param connectors data connectors loaded in to this resolver
      */
     public void setDataConnectors(@Nonnull @NonnullElements  final Collection<DataConnector> connectors){
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         Constraint.isNotNull(connectors, "Data Connectors should be non-null");
         
         final Map<String, DataConnector> checkedConnectors = new HashMap<>(connectors.size());
@@ -182,7 +182,7 @@ public class AttributeResolverImpl extends AbstractServiceableComponent<Attribut
      * @param doStripNulls what to set 
      */
     public void setStripNulls(final Boolean doStripNulls) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         stripNulls = doStripNulls;
     }
 
@@ -213,7 +213,7 @@ public class AttributeResolverImpl extends AbstractServiceableComponent<Attribut
      */
     public void setProfileContextLookupStrategy(
             @Nonnull final Function<AttributeResolutionContext,ProfileRequestContext> strategy) {
-        throwSetterPreconditionExceptions();        
+        checkSetterPreconditions();        
         profileContextStrategy = Constraint.isNotNull(strategy, "ProfileRequestContext lookup strategy cannot be null");
     }
     
@@ -231,7 +231,7 @@ public class AttributeResolverImpl extends AbstractServiceableComponent<Attribut
     // CheckStyle: CyclomaticComplexity OFF
     @Override public void resolveAttributes(@Nonnull final AttributeResolutionContext resolutionContext)
             throws ResolutionException {
-        throwComponentStateExceptions();
+        checkComponentActive();
 
         Constraint.isNotNull(resolutionContext, "Attribute resolution context cannot be null");
 
diff --git a/shib-attribute-resolver-impl/src/test/java/net/shibboleth/idp/attribute/resolver/dc/impl/testing/SAMLAttributeDataConnector.java b/shib-attribute-resolver-impl/src/test/java/net/shibboleth/idp/attribute/resolver/dc/impl/testing/SAMLAttributeDataConnector.java
index ad5eaa638..85a4f2de7 100644
--- a/shib-attribute-resolver-impl/src/test/java/net/shibboleth/idp/attribute/resolver/dc/impl/testing/SAMLAttributeDataConnector.java
+++ b/shib-attribute-resolver-impl/src/test/java/net/shibboleth/idp/attribute/resolver/dc/impl/testing/SAMLAttributeDataConnector.java
@@ -74,7 +74,7 @@ public class SAMLAttributeDataConnector extends AbstractDataConnector {
      * @param strategy to set.
      */
     public void setAttributesStrategy(Function<AttributeResolutionContext, List<Attribute>> strategy) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         attributesStrategy = strategy;
     }
 
diff --git a/shib-saml-attribute-impl/src/main/java/net/shibboleth/idp/saml/attribute/resolver/impl/SAML1NameIdentifierAttributeDefinition.java b/shib-saml-attribute-impl/src/main/java/net/shibboleth/idp/saml/attribute/resolver/impl/SAML1NameIdentifierAttributeDefinition.java
index 1ad6ea179..06c733468 100644
--- a/shib-saml-attribute-impl/src/main/java/net/shibboleth/idp/saml/attribute/resolver/impl/SAML1NameIdentifierAttributeDefinition.java
+++ b/shib-saml-attribute-impl/src/main/java/net/shibboleth/idp/saml/attribute/resolver/impl/SAML1NameIdentifierAttributeDefinition.java
@@ -91,7 +91,7 @@ public class SAML1NameIdentifierAttributeDefinition extends AbstractAttributeDef
      * @param format format for the NameID used as an attribute value
      */
     @Nullable public void setNameIdFormat(@Nullable final String format) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         nameIdFormat = format;
     }
 
@@ -110,7 +110,7 @@ public class SAML1NameIdentifierAttributeDefinition extends AbstractAttributeDef
      * @param qualifier NameQualifier for the NameID used as an attribute value
      */
     public void setNameIdQualifier(@Nullable final String qualifier) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         nameIdQualifier = qualifier;
     }
 
@@ -183,7 +183,7 @@ public class SAML1NameIdentifierAttributeDefinition extends AbstractAttributeDef
             @Nonnull final AttributeResolutionContext resolutionContext,
             @Nonnull final AttributeResolverWorkContext workContext) throws ResolutionException {
 
-        throwComponentStateExceptions();
+        checkComponentActive();
         final List<? extends IdPAttributeValue> inputValues;
         List<IdPAttributeValue> outputValues = null;
         final IdPAttribute result = new IdPAttribute(getId());
diff --git a/shib-saml-attribute-impl/src/main/java/net/shibboleth/idp/saml/attribute/resolver/impl/SAML2NameIDAttributeDefinition.java b/shib-saml-attribute-impl/src/main/java/net/shibboleth/idp/saml/attribute/resolver/impl/SAML2NameIDAttributeDefinition.java
index 1016d0f08..2b848778f 100644
--- a/shib-saml-attribute-impl/src/main/java/net/shibboleth/idp/saml/attribute/resolver/impl/SAML2NameIDAttributeDefinition.java
+++ b/shib-saml-attribute-impl/src/main/java/net/shibboleth/idp/saml/attribute/resolver/impl/SAML2NameIDAttributeDefinition.java
@@ -96,7 +96,7 @@ public class SAML2NameIDAttributeDefinition extends AbstractAttributeDefinition
      * @param format format for the NameID used as an attribute value
      */
     public void setNameIdFormat(@Nullable final String format) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         nameIdFormat = format;
     }
 
@@ -115,7 +115,7 @@ public class SAML2NameIDAttributeDefinition extends AbstractAttributeDefinition
      * @param qualifier NameQualifier for the NameID used as an attribute value
      */
     public void setNameIdQualifier(@Nullable final String qualifier) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         nameIdQualifier = qualifier;
     }
 
@@ -134,7 +134,7 @@ public class SAML2NameIDAttributeDefinition extends AbstractAttributeDefinition
      * @param qualifier SPNameQualifier for the NameID used as an attribute value
      */
     public void setNameIdSPQualifier(@Nullable final String qualifier) {
-        throwSetterPreconditionExceptions();
+        checkSetterPreconditions();
         nameIdSPQualifier = qualifier;
     }
 
@@ -219,7 +219,7 @@ public class SAML2NameIDAttributeDefinition extends AbstractAttributeDefinition
             @Nonnull final AttributeResolutionContext resolutionContext,
             @Nonnull final AttributeResolverWorkContext workContext) throws ResolutionException {
 
-        throwComponentStateExceptions();
+        checkComponentActive();
         final List<IdPAttributeValue> inputValues;
         List<IdPAttributeValue> outputValues = null;
         final IdPAttribute result = new IdPAttribute(getId());

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


More information about the commits mailing list