[java-identity-provider] 06/06: JSPT-98 Integrate lifecycle checking methods in base classes

Rod Widdowson rdw at steadingsoftware.com
Wed Jul 13 10:35:20 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=1398d9a8578173c14b5951d245c4744db08bc376

commit 1398d9a8578173c14b5951d245c4744db08bc376
Author: Rod Widdowson <rdw at steadingsoftware.com>
AuthorDate: Wed Jul 6 13:27:26 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-installer
---
 .../net/shibboleth/idp/installer/BuildWar.java     | 11 +++++++---
 .../shibboleth/idp/installer/CopyDistribution.java | 11 +++++++---
 .../idp/installer/InstallerPropertiesImpl.java     |  2 +-
 .../net/shibboleth/idp/installer/V4Install.java    | 24 ++++++++++++++--------
 .../metadata/impl/MetadataGeneratorImpl.java       |  7 +++----
 .../idp/installer/plugin/impl/PluginInstaller.java |  7 +++----
 .../idp/installer/plugin/impl/PluginState.java     |  3 +--
 .../idp/installer/plugin/impl/TrustStore.java      |  9 ++++----
 8 files changed, 44 insertions(+), 30 deletions(-)

diff --git a/idp-installer/src/main/java/net/shibboleth/idp/installer/BuildWar.java b/idp-installer/src/main/java/net/shibboleth/idp/installer/BuildWar.java
index 2ea712dec..63b61ec8e 100644
--- a/idp-installer/src/main/java/net/shibboleth/idp/installer/BuildWar.java
+++ b/idp-installer/src/main/java/net/shibboleth/idp/installer/BuildWar.java
@@ -33,6 +33,7 @@ import net.shibboleth.idp.installer.impl.InstallationLogger;
 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.component.UninitializedComponentException;
 import net.shibboleth.utilities.java.support.logic.Constraint;
 
 /**
@@ -61,8 +62,12 @@ public final class BuildWar extends AbstractInitializableComponent {
      * @param installState  Where we are right now.
      */
     public BuildWar(@Nonnull final InstallerProperties props, @Nonnull final CurrentInstallState installState) {
-        ComponentSupport.ifNotInitializedThrowUninitializedComponentException(props);
-        ComponentSupport.ifNotInitializedThrowUninitializedComponentException(installState);
+        if (!props.isInitialized()) {
+            throw new UninitializedComponentException("Installer Properties not initialized");
+        }
+        if (!installState.isInitialized()) {
+            throw new UninitializedComponentException("Current Install Srare not initialized");
+        }
         targetDir = props.getTargetDir();
     }
 
@@ -97,7 +102,7 @@ public final class BuildWar extends AbstractInitializableComponent {
      * @throws BuildException if unexpected badness occurs.
      */
     public void execute() throws BuildException {
-        ComponentSupport.ifNotInitializedThrowUninitializedComponentException(this);
+        throwComponentStateExceptions();
         final Path warFile = targetDir.resolve("war").resolve("idp.war");
 
         log.info("Rebuilding {}, Version {}", warFile.toAbsolutePath(), Version.getVersion());
diff --git a/idp-installer/src/main/java/net/shibboleth/idp/installer/CopyDistribution.java b/idp-installer/src/main/java/net/shibboleth/idp/installer/CopyDistribution.java
index 1293b81d5..d45fa2bae 100644
--- a/idp-installer/src/main/java/net/shibboleth/idp/installer/CopyDistribution.java
+++ b/idp-installer/src/main/java/net/shibboleth/idp/installer/CopyDistribution.java
@@ -29,6 +29,7 @@ import org.slf4j.Logger;
 import net.shibboleth.idp.installer.impl.InstallationLogger;
 import net.shibboleth.utilities.java.support.component.AbstractInitializableComponent;
 import net.shibboleth.utilities.java.support.component.ComponentSupport;
+import net.shibboleth.utilities.java.support.component.UninitializedComponentException;
 import net.shibboleth.utilities.java.support.logic.Constraint;
 
 /**
@@ -52,8 +53,12 @@ public final class CopyDistribution extends AbstractInitializableComponent {
      * @param state  Where we are right now.
      */
     public CopyDistribution(@Nonnull final InstallerProperties props, @Nonnull final CurrentInstallState state) {
-        ComponentSupport.ifNotInitializedThrowUninitializedComponentException(props);
-        ComponentSupport.ifNotInitializedThrowUninitializedComponentException(state);
+        if (!props.isInitialized()) {
+            throw new UninitializedComponentException("Installer Properties not Initialized");
+        }
+        if (!state.isInitialized()) {
+            throw new UninitializedComponentException("Installer State not Initialized");
+        }
         installerProps = Constraint.isNotNull(props, "Installer Properties should be non null");
         installState = Constraint.isNotNull(state, "Current state should be non-null");
     }
@@ -63,7 +68,7 @@ public final class CopyDistribution extends AbstractInitializableComponent {
      * @throws BuildException if badness occurs
      */
     public void execute() throws BuildException {
-        ComponentSupport.ifNotInitializedThrowUninitializedComponentException(this);
+        throwComponentStateExceptions();
         deleteOld();
         copyDist();
         copyBinDocSystem();
diff --git a/idp-installer/src/main/java/net/shibboleth/idp/installer/InstallerPropertiesImpl.java b/idp-installer/src/main/java/net/shibboleth/idp/installer/InstallerPropertiesImpl.java
index 9844c92ab..7c3893028 100644
--- a/idp-installer/src/main/java/net/shibboleth/idp/installer/InstallerPropertiesImpl.java
+++ b/idp-installer/src/main/java/net/shibboleth/idp/installer/InstallerPropertiesImpl.java
@@ -341,7 +341,7 @@ public class InstallerPropertiesImpl extends AbstractInitializableComponent impl
      * This is slightly complicated because the default depends on what we are doing.
      */
     @Nonnull public Path getTargetDir() throws BuildException {
-        ComponentSupport.ifNotInitializedThrowUninitializedComponentException(this);
+        throwComponentStateExceptions();
         if (targetDir != null) {
             return targetDir;
         }
diff --git a/idp-installer/src/main/java/net/shibboleth/idp/installer/V4Install.java b/idp-installer/src/main/java/net/shibboleth/idp/installer/V4Install.java
index 5be1af2f0..ab16c3b66 100644
--- a/idp-installer/src/main/java/net/shibboleth/idp/installer/V4Install.java
+++ b/idp-installer/src/main/java/net/shibboleth/idp/installer/V4Install.java
@@ -62,7 +62,7 @@ import net.shibboleth.idp.plugin.PluginVersion;
 import net.shibboleth.idp.spring.IdPPropertiesApplicationContextInitializer;
 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.component.UninitializedComponentException;
 import net.shibboleth.utilities.java.support.primitive.StringSupport;
 import net.shibboleth.utilities.java.support.security.BasicKeystoreKeyStrategyTool;
 import net.shibboleth.utilities.java.support.security.SelfSignedCertificateGenerator;
@@ -91,8 +91,12 @@ public class V4Install extends AbstractInitializableComponent {
      * @param installState The current install.
      */
     public V4Install(@Nonnull final InstallerProperties props, @Nonnull final CurrentInstallState installState) {
-        ComponentSupport.ifNotInitializedThrowUninitializedComponentException(props);
-        ComponentSupport.ifNotInitializedThrowUninitializedComponentException(installState);
+        if (!props.isInitialized()) {
+            throw new UninitializedComponentException("Installer Properties not Initialized");
+        }
+        if (!installState.isInitialized()) {
+            throw new UninitializedComponentException("Installer State not Initialized");
+        }
         installerProps = props;
         currentState = installState;
         keyManager = new KeyManagement(installerProps, currentState);
@@ -111,7 +115,7 @@ public class V4Install extends AbstractInitializableComponent {
      * @throws BuildException if unexpected badness occurs.
      */
     public void execute() throws BuildException {
-        ComponentSupport.ifNotInitializedThrowUninitializedComponentException(this);
+        throwComponentStateExceptions();
         handleVersioning();
         checkPreConditions();
 
@@ -133,7 +137,7 @@ public class V4Install extends AbstractInitializableComponent {
      * prior to initialization.
      */
     public void setMetadataGenerator(final MetadataGenerator what) {
-        ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
+        throwSetterPreconditionExceptions();
         metadataGenerator = what;
     }
     
@@ -602,8 +606,12 @@ public class V4Install extends AbstractInitializableComponent {
          */
         protected KeyManagement(@Nonnull final InstallerProperties props,
                 @Nonnull final CurrentInstallState installState) {
-            ComponentSupport.ifNotInitializedThrowUninitializedComponentException(props);
-            ComponentSupport.ifNotInitializedThrowUninitializedComponentException(installState);
+            if (!props.isInitialized()) {
+                throw new UninitializedComponentException("Installer Properties not Initialized");
+            }
+            if (!installState.isInitialized()) {
+                throw new UninitializedComponentException("Installer State not Initialized");
+            }
             installerProps = props;
             currentState = installState;
         }
@@ -616,7 +624,7 @@ public class V4Install extends AbstractInitializableComponent {
                 log.debug("Skipping key generation");
                 return;
             }
-            ComponentSupport.ifNotInitializedThrowUninitializedComponentException(this);
+            throwComponentStateExceptions();
             createdSigning = generateKey("idp-signing");
             createdEncryption = generateKey("idp-encryption");
             generateKeyStore();
diff --git a/idp-installer/src/main/java/net/shibboleth/idp/installer/metadata/impl/MetadataGeneratorImpl.java b/idp-installer/src/main/java/net/shibboleth/idp/installer/metadata/impl/MetadataGeneratorImpl.java
index 027572df1..3e677a647 100644
--- a/idp-installer/src/main/java/net/shibboleth/idp/installer/metadata/impl/MetadataGeneratorImpl.java
+++ b/idp-installer/src/main/java/net/shibboleth/idp/installer/metadata/impl/MetadataGeneratorImpl.java
@@ -63,7 +63,6 @@ import net.shibboleth.idp.saml.xmlobject.Scope;
 import net.shibboleth.utilities.java.support.annotation.constraint.NotEmpty;
 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.xml.DOMTypeSupport;
 import net.shibboleth.utilities.java.support.xml.XMLConstants;
@@ -168,13 +167,13 @@ public class MetadataGeneratorImpl extends AbstractInitializableComponent implem
 
     /** {@inheritDoc} */
     public void setOutput(@Nonnull final File file) {
-        ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
+        throwSetterPreconditionExceptions();
         output = Constraint.isNotNull(file, "provided file must be nonnull");
     }
 
     /** {@inheritDoc} */
     public void setParameters(@Nonnull final MetadataGeneratorParameters what) {
-        ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
+        throwSetterPreconditionExceptions();
         params = Constraint.isNotNull(what, "provided params must be nonnull");
     }
 
@@ -260,7 +259,7 @@ public class MetadataGeneratorImpl extends AbstractInitializableComponent implem
 
     /** {@inheritDoc} */
     public void generate() throws BuildException {
-        ComponentSupport.ifNotInitializedThrowUninitializedComponentException(this);
+        throwComponentStateExceptions();
         try {
             writer.write("<?xml version=\"1.0\" encoding=\"UTF-8\"?>");
             writer.newLine();
diff --git a/idp-installer/src/main/java/net/shibboleth/idp/installer/plugin/impl/PluginInstaller.java b/idp-installer/src/main/java/net/shibboleth/idp/installer/plugin/impl/PluginInstaller.java
index af66f6254..4cacef479 100644
--- a/idp-installer/src/main/java/net/shibboleth/idp/installer/plugin/impl/PluginInstaller.java
+++ b/idp-installer/src/main/java/net/shibboleth/idp/installer/plugin/impl/PluginInstaller.java
@@ -85,7 +85,6 @@ import net.shibboleth.utilities.java.support.annotation.constraint.NonnullAfterI
 import net.shibboleth.utilities.java.support.annotation.constraint.NotEmpty;
 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.httpclient.HttpClientBuilder;
 import net.shibboleth.utilities.java.support.logic.Constraint;
 import net.shibboleth.utilities.java.support.primitive.StringSupport;
@@ -178,7 +177,7 @@ public final class PluginInstaller extends AbstractInitializableComponent implem
      * @param home Where we are working from
      */
     public void setIdpHome(@Nonnull final Path home) {
-        ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
+        throwSetterPreconditionExceptions();
         idpHome = Constraint.isNotNull(home, "IdPHome should be non-null");
     }
 
@@ -221,7 +220,7 @@ public final class PluginInstaller extends AbstractInitializableComponent implem
      * @param params what to set.
      */
     public void setModuleContextSecurityParams(@Nullable final HttpClientSecurityParameters params) {
-        ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
+        throwSetterPreconditionExceptions();
         securityParams =  params;
     }
 
@@ -652,7 +651,7 @@ public final class PluginInstaller extends AbstractInitializableComponent implem
 
     /** Build the Http Client if it doesn't exist. */
     private void buildHttpClient() {
-        ComponentSupport.ifNotInitializedThrowUninitializedComponentException(this);
+        throwComponentStateExceptions();
         if (httpClient == null) {
             LOG.debug("No HttpClient built, creating default");
             try {
diff --git a/idp-installer/src/main/java/net/shibboleth/idp/installer/plugin/impl/PluginState.java b/idp-installer/src/main/java/net/shibboleth/idp/installer/plugin/impl/PluginState.java
index 484368b69..f5d564b18 100644
--- a/idp-installer/src/main/java/net/shibboleth/idp/installer/plugin/impl/PluginState.java
+++ b/idp-installer/src/main/java/net/shibboleth/idp/installer/plugin/impl/PluginState.java
@@ -37,7 +37,6 @@ import net.shibboleth.idp.plugin.PluginVersion;
 import net.shibboleth.utilities.java.support.annotation.constraint.NonnullAfterInit;
 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.httpclient.HttpClientBuilder;
 import net.shibboleth.utilities.java.support.logic.Constraint;
 
@@ -108,7 +107,7 @@ public class PluginState extends AbstractInitializableComponent {
      * @param what what to set.
      */
     public void setHttpClient(@Nonnull final HttpClient what) {
-        ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
+        throwSetterPreconditionExceptions();
         httpClient = Constraint.isNotNull(what, "HttpClient cannot be null");
     }
 
diff --git a/idp-installer/src/main/java/net/shibboleth/idp/installer/plugin/impl/TrustStore.java b/idp-installer/src/main/java/net/shibboleth/idp/installer/plugin/impl/TrustStore.java
index 8603e6574..6c548c675 100644
--- a/idp-installer/src/main/java/net/shibboleth/idp/installer/plugin/impl/TrustStore.java
+++ b/idp-installer/src/main/java/net/shibboleth/idp/installer/plugin/impl/TrustStore.java
@@ -51,7 +51,6 @@ import net.shibboleth.idp.installer.impl.InstallationLogger;
 import net.shibboleth.utilities.java.support.annotation.constraint.NonnullAfterInit;
 import net.shibboleth.utilities.java.support.component.AbstractInitializableComponent;
 import net.shibboleth.utilities.java.support.component.ComponentInitializationException;
-import net.shibboleth.utilities.java.support.component.ComponentSupport;
 
 /**
  * Code to handle (load, update, check) the trust store for an individual plugin.
@@ -85,7 +84,7 @@ import net.shibboleth.utilities.java.support.component.ComponentSupport;
      * @param what to set.
      */
     public void setPluginId(final String what) {
-        ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
+        throwSetterPreconditionExceptions();
         pluginId = what;
     }
 
@@ -94,7 +93,7 @@ import net.shibboleth.utilities.java.support.component.ComponentSupport;
      * @param what The idpHome to set.
      */
     public void setIdpHome(final Path what) {
-        ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
+        throwSetterPreconditionExceptions();
         idpHome = what;
     }
 
@@ -102,7 +101,7 @@ import net.shibboleth.utilities.java.support.component.ComponentSupport;
     * @param what The value to set.
     */
    public void setTrustStore(@Nullable final String what) {
-       ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
+       throwSetterPreconditionExceptions();
        explicitTrustStore = what;
    }
 
@@ -170,7 +169,7 @@ import net.shibboleth.utilities.java.support.component.ComponentSupport;
      * from {@link PGPPublicKeyRingCollection#encode(OutputStream)}
      */
     public void saveStore() throws IOException {
-        ComponentSupport.ifNotInitializedThrowUninitializedComponentException(this);
+        throwComponentStateExceptions();
         saveStoreInternal();
     }
 

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


More information about the commits mailing list