[java-identity-provider COMMIT] /trunk/idp-attribute-filter-spring/src/main/java/net/shibboleth/idp/attribute/filter/...
noreply at shibboleth.net
noreply at shibboleth.net
Tue Jun 24 07:00:57 EDT 2014
Author: rdw
Date: Tue Jun 24 07:00:57 2014
New Revision: 6157
URL: http://svn.shibboleth.net/view/java-identity-provider?rev=6157&view=rev
Log:
Add test agains unsupported, but schema valid configurations (it's that rule reference thing again)
Modified:
trunk/idp-attribute-filter-spring/src/main/java/net/shibboleth/idp/attribute/filter/spring/basic/NotMatcherParser.java
Modified: trunk/idp-attribute-filter-spring/src/main/java/net/shibboleth/idp/attribute/filter/spring/basic/NotMatcherParser.java
URL: http://svn.shibboleth.net/view/java-identity-provider/trunk/idp-attribute-filter-spring/src/main/java/net/shibboleth/idp/attribute/filter/spring/basic/NotMatcherParser.java?rev=6157&r1=6156&r2=6157&view=diff
==============================================================================
--- trunk/idp-attribute-filter-spring/src/main/java/net/shibboleth/idp/attribute/filter/spring/basic/NotMatcherParser.java (original)
+++ trunk/idp-attribute-filter-spring/src/main/java/net/shibboleth/idp/attribute/filter/spring/basic/NotMatcherParser.java Tue Jun 24 07:00:57 2014
@@ -28,6 +28,7 @@
import net.shibboleth.idp.attribute.filter.spring.BaseFilterParser;
import net.shibboleth.utilities.java.support.xml.ElementSupport;
+import org.springframework.beans.factory.BeanCreationException;
import org.springframework.beans.factory.support.BeanDefinitionBuilder;
import org.springframework.beans.factory.xml.ParserContext;
import org.w3c.dom.Element;
@@ -41,7 +42,7 @@
public static final QName SCHEMA_TYPE = new QName(AttributeFilterBasicNamespaceHandler.NAMESPACE, "NOT");
/** {@inheritDoc} */
- @Nonnull protected Class<?> getBeanClass(@Nonnull final Element element) {
+ @Override @Nonnull protected Class<?> getBeanClass(@Nonnull final Element element) {
if (isPolicyRule(element)) {
return NotPolicyRule.class;
}
@@ -49,7 +50,7 @@
}
/** {@inheritDoc} */
- protected void doParse(@Nonnull final Element configElement, @Nonnull final ParserContext parserContext,
+ @Override protected void doParse(@Nonnull final Element configElement, @Nonnull final ParserContext parserContext,
@Nonnull final BeanDefinitionBuilder builder) {
super.doParse(configElement, parserContext, builder);
@@ -60,10 +61,17 @@
final List<Element> ruleElements =
ElementSupport.getChildElementsByTagNameNS(configElement,
AttributeFilterBasicNamespaceHandler.NAMESPACE, "Rule");
+ final List<Element> ruleReference =
+ ElementSupport.getChildElementsByTagNameNS(configElement,
+ AttributeFilterBasicNamespaceHandler.NAMESPACE, "RuleReference");
if (ruleElements != null && !ruleElements.isEmpty()) {
builder.addConstructorArgValue(SpringSupport.parseCustomElements(ruleElements, parserContext).get(0));
+
+ } else if (ruleReference != null && !ruleReference.isEmpty()) {
+ throw new BeanCreationException(parserContext.getReaderContext().getResource().getDescription(), myId,
+ "RuleReference is not supported");
}
}
}
More information about the commits
mailing list