[java-shib-common COMMIT] in /branches/REL_1/src: main/java/edu/internet2/middleware/shibboleth/common/attribute/reso...
noreply at shibboleth.net
noreply at shibboleth.net
Tue Oct 28 11:51:57 EDT 2014
Author: rdw
Date: Tue Oct 28 11:51:57 2014
New Revision: 1112
URL: http://svn.shibboleth.net/view/java-shib-common?rev=1112&view=rev
Log:
SIDP-622 Stop acreting attribute encoders
Modified:
branches/REL_1/src/main/java/edu/internet2/middleware/shibboleth/common/attribute/resolver/provider/attributeDefinition/ScriptedAttributeDefinition.java
branches/REL_1/src/test/java/edu/internet2/middleware/shibboleth/common/config/attribute/resolver/ScriptedAttributeResolverTest.java
branches/REL_1/src/test/resources/data/edu/internet2/middleware/shibboleth/common/config/attribute/resolver/resolver-scripted.xml
Modified: branches/REL_1/src/main/java/edu/internet2/middleware/shibboleth/common/attribute/resolver/provider/attributeDefinition/ScriptedAttributeDefinition.java
URL: http://svn.shibboleth.net/view/java-shib-common/branches/REL_1/src/main/java/edu/internet2/middleware/shibboleth/common/attribute/resolver/provider/attributeDefinition/ScriptedAttributeDefinition.java?rev=1112&r1=1111&r2=1112&view=diff
==============================================================================
--- branches/REL_1/src/main/java/edu/internet2/middleware/shibboleth/common/attribute/resolver/provider/attributeDefinition/ScriptedAttributeDefinition.java (original)
+++ branches/REL_1/src/main/java/edu/internet2/middleware/shibboleth/common/attribute/resolver/provider/attributeDefinition/ScriptedAttributeDefinition.java Tue Oct 28 11:51:57 2014
@@ -30,8 +30,10 @@
import org.opensaml.xml.util.DatatypeHelper;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
+import org.tmatesoft.sqljet.core.internal.lang.SqlParser.insert_stmt_return;
import edu.internet2.middleware.shibboleth.common.attribute.BaseAttribute;
+import edu.internet2.middleware.shibboleth.common.attribute.provider.BasicAttribute;
import edu.internet2.middleware.shibboleth.common.attribute.resolver.AttributeResolutionException;
import edu.internet2.middleware.shibboleth.common.attribute.resolver.provider.ResolutionPlugIn;
import edu.internet2.middleware.shibboleth.common.attribute.resolver.provider.ShibbolethResolutionContext;
@@ -183,7 +185,12 @@
attributes = ((DataConnector) plugin).resolve(resolutionContext);
if (attributes != null) {
for (BaseAttribute attr : attributes.values()) {
- scriptContext.setAttribute(attr.getId(), attr, ScriptContext.ENGINE_SCOPE);
+ if (attr instanceof BasicAttribute) {
+ BasicAttribute basic = (BasicAttribute) attr;
+ scriptContext.setAttribute(attr.getId(), basic.clone(), ScriptContext.ENGINE_SCOPE);
+ } else {
+ scriptContext.setAttribute(attr.getId(), attr, ScriptContext.ENGINE_SCOPE);
+ }
}
}
} else if (plugin instanceof AttributeDefinition) {
Modified: branches/REL_1/src/test/java/edu/internet2/middleware/shibboleth/common/config/attribute/resolver/ScriptedAttributeResolverTest.java
URL: http://svn.shibboleth.net/view/java-shib-common/branches/REL_1/src/test/java/edu/internet2/middleware/shibboleth/common/config/attribute/resolver/ScriptedAttributeResolverTest.java?rev=1112&r1=1111&r2=1112&view=diff
==============================================================================
--- branches/REL_1/src/test/java/edu/internet2/middleware/shibboleth/common/config/attribute/resolver/ScriptedAttributeResolverTest.java (original)
+++ branches/REL_1/src/test/java/edu/internet2/middleware/shibboleth/common/config/attribute/resolver/ScriptedAttributeResolverTest.java Tue Oct 28 11:51:57 2014
@@ -55,16 +55,35 @@
final ApplicationContext ac = createSpringContext(new String[] {DATA_PATH + "/config/base-config.xml", configFile,});
final AttributeResolver resolver = (AttributeResolver) ac.getBean("resolver-scripted");
- final BaseSAMLProfileRequestContext context = new BaseSAMLProfileRequestContext();
+ BaseSAMLProfileRequestContext context = new BaseSAMLProfileRequestContext();
context.setPrincipalName("ttrojan");
- final Map<String, BaseAttribute> actual = resolver.resolveAttributes(context);
+ Map<String, BaseAttribute> actual = resolver.resolveAttributes(context);
final String[] expectedValues = new String[] {"member", "parent", "staff"};
- final BaseAttribute scripted = actual.get("scripted");
+ BaseAttribute scripted = actual.get("scripted");
assertEquals(3, scripted.getValues().size());
-
+ assertEquals(1, scripted.getEncoders().size());
assertEquals(expectedValues, scripted.getValues().toArray(expectedValues));
+ context = new BaseSAMLProfileRequestContext();
+ context.setPrincipalName("princ");
+
+ actual = resolver.resolveAttributes(context);
+ scripted = actual.get("scripted");
+ assertEquals(3, scripted.getValues().size());
[... 47 lines stripped ...]
More information about the commits
mailing list