[java-identity-provider COMMIT] in /trunk: idp-authn-api/src/main/java/net/shibboleth/idp/authn/duo/BasicDuoIntegrati...

noreply at shibboleth.net noreply at shibboleth.net
Mon Oct 3 19:41:38 EDT 2016


Author: scantor
Date: Mon Oct  3 19:41:38 2016
New Revision: 8454

URL: http://svn.shibboleth.net/view/java-identity-provider?rev=8454&view=rev
Log:
Clean up DuoIntegration subclass to avoid constructor use.

Modified:
    trunk/idp-authn-api/src/main/java/net/shibboleth/idp/authn/duo/BasicDuoIntegration.java
    trunk/idp-authn-api/src/main/java/net/shibboleth/idp/authn/duo/DuoPrincipal.java
    trunk/idp-conf/src/main/resources/system/flows/authn/duo-authn-beans.xml

Modified: trunk/idp-authn-api/src/main/java/net/shibboleth/idp/authn/duo/BasicDuoIntegration.java
URL: http://svn.shibboleth.net/view/java-identity-provider/trunk/idp-authn-api/src/main/java/net/shibboleth/idp/authn/duo/BasicDuoIntegration.java?rev=8454&r1=8453&r2=8454&view=diff
==============================================================================
--- trunk/idp-authn-api/src/main/java/net/shibboleth/idp/authn/duo/BasicDuoIntegration.java	(original)
+++ trunk/idp-authn-api/src/main/java/net/shibboleth/idp/authn/duo/BasicDuoIntegration.java	Mon Oct  3 19:41:38 2016
@@ -17,10 +17,12 @@
 
 package net.shibboleth.idp.authn.duo;
 
+import net.shibboleth.utilities.java.support.annotation.constraint.NonnullAfterInit;
 import net.shibboleth.utilities.java.support.annotation.constraint.NonnullElements;
 import net.shibboleth.utilities.java.support.annotation.constraint.NotEmpty;
 import net.shibboleth.utilities.java.support.annotation.constraint.Unmodifiable;
 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.StringSupport;
@@ -44,34 +46,22 @@
 public class BasicDuoIntegration extends AbstractInitializableComponent implements DuoIntegration {
 
     /** API host. */
-    @Nonnull @NotEmpty private String apiHost;
+    @NonnullAfterInit @NotEmpty private String apiHost;
     
     /** Application key. */
-    @Nonnull @NotEmpty private String applicationKey;
+    @NonnullAfterInit @NotEmpty private String applicationKey;
     
     /** Integration key. */
-    @Nonnull @NotEmpty private String integrationKey;
+    @NonnullAfterInit @NotEmpty private String integrationKey;
     
     /** Secret key. */
-    @Nonnull @NotEmpty private String secretKey;
+    @NonnullAfterInit @NotEmpty private String secretKey;
     
     /** Container for supported principals. */
     @Nonnull private final Subject supportedPrincipals;
     
-    /**
-     * Constructor.
-     * 
-     * @param host API host
-     * @param akey application key
-     * @param ikey integration key
-     * @param skey secret key
-     */
-    public BasicDuoIntegration(@Nonnull @NotEmpty final String host, @Nonnull @NotEmpty final String akey,
-            @Nonnull @NotEmpty final String ikey, @Nonnull @NotEmpty final String skey) {
-        setAPIHost(host);
-        setApplicationKey(akey);
-        setIntegrationKey(ikey);
-        setSecretKey(skey);
+    /** Constructor. */
+    public BasicDuoIntegration() {
         supportedPrincipals = new Subject();
     }
 
@@ -165,4 +155,12 @@
         }
     }
 
+    /** {@inheritDoc} */
+    @Override
+    protected void doInitialize() throws ComponentInitializationException {
+        if (apiHost == null || applicationKey == null || integrationKey == null || secretKey == null) {
+            throw new ComponentInitializationException("API host and integration keys must be set");
+        }
+    }
+    
 }

Modified: trunk/idp-authn-api/src/main/java/net/shibboleth/idp/authn/duo/DuoPrincipal.java
URL: http://svn.shibboleth.net/view/java-identity-provider/trunk/idp-authn-api/src/main/java/net/shibboleth/idp/authn/duo/DuoPrincipal.java?rev=8454&r1=8453&r2=8454&view=diff
==============================================================================
--- trunk/idp-authn-api/src/main/java/net/shibboleth/idp/authn/duo/DuoPrincipal.java	(original)
+++ trunk/idp-authn-api/src/main/java/net/shibboleth/idp/authn/duo/DuoPrincipal.java	Mon Oct  3 19:41:38 2016
@@ -20,6 +20,7 @@
 import javax.annotation.Nonnull;
 
 import net.shibboleth.idp.authn.principal.CloneablePrincipal;
+import net.shibboleth.utilities.java.support.annotation.ParameterName;
 import net.shibboleth.utilities.java.support.annotation.constraint.NotEmpty;
 import net.shibboleth.utilities.java.support.logic.Constraint;
 import net.shibboleth.utilities.java.support.primitive.StringSupport;
@@ -35,10 +36,10 @@
     /**
      * Constructor.
      * 
-     * @param user the username, can not be null or empty
+     * @param name the username
      */
-    public DuoPrincipal(@Nonnull @NotEmpty final String user) {
-        username = Constraint.isNotNull(StringSupport.trimOrNull(user), "Username cannot be null or empty");
+    public DuoPrincipal(@Nonnull @NotEmpty @ParameterName(name="name") final String name) {

[... 26 lines stripped ...]


More information about the commits mailing list