[java-identity-provider] 05/06: JSPT-98 Integrate lifecycle checking methods in base classes
Rod Widdowson
rdw at steadingsoftware.com
Fri Jul 15 09:44:55 UTC 2022
This is an automated email from the git hooks/post-receive script.
rdw pushed a commit to branch main
in repository java-identity-provider.
View the commit online:
http://git.shibboleth.net/view/?p=java-identity-provider.git;a=commit;h=4cd6168343c03ad164b08828b3aca624e557c974
commit 4cd6168343c03ad164b08828b3aca624e557c974
Author: Rod Widdowson <rdw at steadingsoftware.com>
AuthorDate: Thu Jul 14 16:49:06 2022 +0100
JSPT-98 Integrate lifecycle checking methods in base classes
https://shibboleth.atlassian.net/browse/JSPT-98
Stop using ComponentSupport and use the appropriate methods instead:
idp-core
---
.../shibboleth/idp/metrics/impl/HTTPReporter.java | 24 ++++++++++++++--------
.../idp/spring/DeprecatedPropertyBean.java | 5 ++---
.../shibboleth/idp/spring/OpenSAMLConfigBean.java | 7 ++-----
3 files changed, 19 insertions(+), 17 deletions(-)
diff --git a/idp-core/src/main/java/net/shibboleth/idp/metrics/impl/HTTPReporter.java b/idp-core/src/main/java/net/shibboleth/idp/metrics/impl/HTTPReporter.java
index d416a5f62..f1be27a98 100644
--- a/idp-core/src/main/java/net/shibboleth/idp/metrics/impl/HTTPReporter.java
+++ b/idp-core/src/main/java/net/shibboleth/idp/metrics/impl/HTTPReporter.java
@@ -59,8 +59,8 @@ import net.shibboleth.utilities.java.support.annotation.ParameterName;
import net.shibboleth.utilities.java.support.annotation.constraint.NonnullAfterInit;
import net.shibboleth.utilities.java.support.annotation.constraint.NotEmpty;
import net.shibboleth.utilities.java.support.component.ComponentInitializationException;
-import net.shibboleth.utilities.java.support.component.ComponentSupport;
import net.shibboleth.utilities.java.support.component.InitializableComponent;
+import net.shibboleth.utilities.java.support.component.UninitializedComponentException;
import net.shibboleth.utilities.java.support.logic.Constraint;
import net.shibboleth.utilities.java.support.primitive.StringSupport;
@@ -174,8 +174,7 @@ public class HTTPReporter extends ScheduledReporter implements InitializableComp
* @param client client to use
*/
public void setHttpClient(@Nonnull final HttpClient client) {
- ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
-
+ doSetterPreconditions();
httpClient = Constraint.isNotNull(client, "HttpClient cannot be null");
}
@@ -185,8 +184,7 @@ public class HTTPReporter extends ScheduledReporter implements InitializableComp
* @param url URL to post data to
*/
public void setCollectorURL(@Nonnull @NotEmpty final String url) {
- ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
-
+ doSetterPreconditions();
collectorURL = Constraint.isNotNull(StringSupport.trimOrNull(url), "Collector URL cannot be null or empty");
}
@@ -196,8 +194,7 @@ public class HTTPReporter extends ScheduledReporter implements InitializableComp
* @param params the new client security parameters
*/
public void setHttpClientSecurityParameters(@Nullable final HttpClientSecurityParameters params) {
- ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
-
+ doSetterPreconditions();
httpClientSecurityParameters = params;
}
@@ -207,11 +204,20 @@ public class HTTPReporter extends ScheduledReporter implements InitializableComp
* @param format formatting string
*/
public void setDateTimeFormat(@Nullable @NotEmpty final String format) {
- ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
-
+ doSetterPreconditions();
dateTimeFormat = StringSupport.trimOrNull(format);
}
+ /**
+ * Helper for a setter method to check the standard preconditions.
+ */
+ private final void doSetterPreconditions() {
+ if (!isInitialized()) {
+ throw new UninitializedComponentException(
+ "HTTPReported has not yet been initialized and cannot be used.");
+ }
+ }
+
/** {@inheritDoc} */
public boolean isInitialized() {
return isInitialized;
diff --git a/idp-core/src/main/java/net/shibboleth/idp/spring/DeprecatedPropertyBean.java b/idp-core/src/main/java/net/shibboleth/idp/spring/DeprecatedPropertyBean.java
index 69d502ec0..63bb0be02 100644
--- a/idp-core/src/main/java/net/shibboleth/idp/spring/DeprecatedPropertyBean.java
+++ b/idp-core/src/main/java/net/shibboleth/idp/spring/DeprecatedPropertyBean.java
@@ -32,7 +32,6 @@ import org.springframework.context.ApplicationContextAware;
import net.shibboleth.utilities.java.support.annotation.constraint.NonnullElements;
import net.shibboleth.utilities.java.support.component.AbstractInitializableComponent;
import net.shibboleth.utilities.java.support.component.ComponentInitializationException;
-import net.shibboleth.utilities.java.support.component.ComponentSupport;
import net.shibboleth.utilities.java.support.logic.Constraint;
import net.shibboleth.utilities.java.support.primitive.DeprecationSupport;
import net.shibboleth.utilities.java.support.primitive.DeprecationSupport.ObjectType;
@@ -68,7 +67,7 @@ public class DeprecatedPropertyBean extends AbstractInitializableComponent imple
* @param map deprecated property names and replacements
*/
public void setDeprecatedProperties(@Nonnull final Map<String,String> map) {
- ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
+ throwSetterPreconditionExceptions();
Constraint.isNotNull(map, "Property map cannot be null");
deprecatedProperties = new HashMap<>(map.size());
@@ -84,7 +83,7 @@ public class DeprecatedPropertyBean extends AbstractInitializableComponent imple
* @param properties defunct property names
*/
public void setDeadProperties(@Nonnull @NonnullElements final Collection<String> properties) {
- ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
+ throwSetterPreconditionExceptions();
Constraint.isNotNull(properties, "Property collection cannot be null");
deadProperties = StringSupport.normalizeStringCollection(properties);
diff --git a/idp-core/src/main/java/net/shibboleth/idp/spring/OpenSAMLConfigBean.java b/idp-core/src/main/java/net/shibboleth/idp/spring/OpenSAMLConfigBean.java
index 835fd9d2d..838b046fc 100644
--- a/idp-core/src/main/java/net/shibboleth/idp/spring/OpenSAMLConfigBean.java
+++ b/idp-core/src/main/java/net/shibboleth/idp/spring/OpenSAMLConfigBean.java
@@ -33,7 +33,6 @@ import com.codahale.metrics.MetricRegistry;
import net.shibboleth.utilities.java.support.component.AbstractInitializableComponent;
import net.shibboleth.utilities.java.support.component.ComponentInitializationException;
-import net.shibboleth.utilities.java.support.component.ComponentSupport;
import net.shibboleth.utilities.java.support.xml.ParserPool;
@@ -70,8 +69,7 @@ public class OpenSAMLConfigBean extends AbstractInitializableComponent {
* @param newParserPool the parser pool to set
*/
public void setParserPool(@Nullable final ParserPool newParserPool) {
- ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
-
+ throwSetterPreconditionExceptions();
parserPool = newParserPool;
}
@@ -90,8 +88,7 @@ public class OpenSAMLConfigBean extends AbstractInitializableComponent {
* @param newParserPool the decryption parser pool to set
*/
public void setDecryptionParserPool(@Nullable final ParserPool newParserPool) {
- ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
-
+ throwSetterPreconditionExceptions();
decryptionParserPool = newParserPool;
}
--
To stop receiving notification emails like this one, please contact
the administrator of this repository.
More information about the commits
mailing list