[java-identity-provider COMMIT] in /trunk/idp-attribute-resolver-impl/src: main/java/net/shibboleth/idp/attribute/res...

noreply at shibboleth.net noreply at shibboleth.net
Wed Aug 17 16:48:33 BST 2011


Author: rdw
Date: Wed Aug 17 16:48:33 2011
New Revision: 4023

URL: http://svn.shibboleth.net/view/java-identity-provider?rev=4023&view=rev
Log:
Start at making AttributeResolver Definitions fit into the new Component model.  SimpleAttributeDefinition to start with (and encompassing support and test structures)

Modified:
    trunk/idp-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/impl/SimpleAttributeDefinition.java
    trunk/idp-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/impl/StaticAttributeDefinition.java
    trunk/idp-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/impl/StaticDataConnector.java
    trunk/idp-attribute-resolver-impl/src/test/java/net/shibboleth/idp/attribute/resolver/impl/SimpleAttributeTest.java
    trunk/idp-attribute-resolver-impl/src/test/java/net/shibboleth/idp/attribute/resolver/impl/TestSources.java

Modified: trunk/idp-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/impl/SimpleAttributeDefinition.java
URL: http://svn.shibboleth.net/view/java-identity-provider/trunk/idp-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/impl/SimpleAttributeDefinition.java?rev=4023&r1=4022&r2=4023&view=diff
==============================================================================
--- trunk/idp-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/impl/SimpleAttributeDefinition.java (original)
+++ trunk/idp-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/impl/SimpleAttributeDefinition.java Wed Aug 17 16:48:33 2011
@@ -39,15 +39,6 @@
 @ThreadSafe
 public class SimpleAttributeDefinition extends BaseAttributeDefinition {
 
-    /**
-     * Constructor.
-     * 
-     * @param id the name of the attribute.
-     */
-    public SimpleAttributeDefinition(final String id) {
-        super(id);
-    }
-
     /** {@inheritDoc} */
     protected Attribute<?> doAttributeResolution(final AttributeResolutionContext resolutionContext)
             throws AttributeResolutionException {

Modified: trunk/idp-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/impl/StaticAttributeDefinition.java
URL: http://svn.shibboleth.net/view/java-identity-provider/trunk/idp-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/impl/StaticAttributeDefinition.java?rev=4023&r1=4022&r2=4023&view=diff
==============================================================================
--- trunk/idp-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/impl/StaticAttributeDefinition.java (original)
+++ trunk/idp-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/impl/StaticAttributeDefinition.java Wed Aug 17 16:48:33 2011
@@ -23,22 +23,44 @@
 import net.shibboleth.idp.attribute.resolver.AttributeResolutionException;
 import net.shibboleth.idp.attribute.resolver.BaseAttributeDefinition;
 
+import org.opensaml.util.component.ComponentInitializationException;
+import org.opensaml.util.component.UnmodifiableComponentException;
+
 /** An attribute definition that simply returns a static value. */
 @ThreadSafe
 public class StaticAttributeDefinition extends BaseAttributeDefinition {
 
     /** Static value returned by this definition. */
-    private final Attribute<?> value;
+    private Attribute<?> value;
 
     /**
-     * Constructor.
-     * 
-     * @param id unique ID of this attribute definition
-     * @param definitionValue static value returned by this definition
+     * Set the attribute value we are returning.
+     * @param newAttrribute what to set.
      */
-    public StaticAttributeDefinition(final String id, final Attribute<?> definitionValue) {
-        super(id);
-        value = definitionValue;
+    public synchronized void setAttribute(Attribute<?> newAttrribute) {
+        if (isInitialized()) {
+            throw new UnmodifiableComponentException("Static Attribute definition " + getId()
+                    + " has already been initialized, attribute can not be changed.");
+        }
+        value = newAttrribute;
+    }
+
+    /**
+     * Return the static attribute we are returning.
+     * @return the attribute.
+     */
+    public Attribute<?> getValue() {
+        return value;
+    }
+
+    /** {@inheritDoc} */
+    protected void doInitialize() throws ComponentInitializationException {
+        super.doInitialize();
+
+        if (null == value) {
+            throw new ComponentInitializationException("Static Attribute definition " + getId()
+                    + " does not have an attribute set up.");
+        }
     }
 
     /** {@inheritDoc} */

Modified: trunk/idp-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/impl/StaticDataConnector.java
URL: http://svn.shibboleth.net/view/java-identity-provider/trunk/idp-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/impl/StaticDataConnector.java?rev=4023&r1=4022&r2=4023&view=diff

[... 295 lines stripped ...]


More information about the commits mailing list