[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