[java-identity-provider] 02/02: IDP-1376 Remove the "context present" test of duplicate names.

Rod Widdowson rdw at steadingsoftware.com
Tue Feb 2 13:48:33 UTC 2021


This is an automated email from the git hooks/post-receive script.

rdw pushed a commit to branch main
in repository java-identity-provider.

View the commit online:
http://git.shibboleth.net/view/?p=java-identity-provider.git;a=commit;h=6446a0b89baab89c0da3feed09c58828f5282381

commit 6446a0b89baab89c0da3feed09c58828f5282381
Author: Rod Widdowson <rdw at steadingsoftware.com>
AuthorDate: Tue Feb 2 10:56:11 2021 +0000

    IDP-1376 Remove the "context present" test of duplicate names.
    
    https://issues.shibboleth.net/jira/browse/IDP-1376
    
    We now do this in a centralized manner down in spring-support.
    
    Partially reverts 0694d33e690
---
 .../attribute/filter/spring/BaseFilterParser.java  | 37 ----------------------
 .../impl/AttributeFilterPolicyGroupParser.java     | 11 ++++---
 2 files changed, 6 insertions(+), 42 deletions(-)

diff --git a/idp-attribute-filter-spring/src/main/java/net/shibboleth/idp/attribute/filter/spring/BaseFilterParser.java b/idp-attribute-filter-spring/src/main/java/net/shibboleth/idp/attribute/filter/spring/BaseFilterParser.java
index cf1d6c9e6..da637d19f 100644
--- a/idp-attribute-filter-spring/src/main/java/net/shibboleth/idp/attribute/filter/spring/BaseFilterParser.java
+++ b/idp-attribute-filter-spring/src/main/java/net/shibboleth/idp/attribute/filter/spring/BaseFilterParser.java
@@ -24,15 +24,6 @@ import javax.annotation.Nonnull;
 import javax.annotation.Nullable;
 import javax.xml.namespace.QName;
 
-import net.shibboleth.ext.spring.util.SpringSupport;
-import net.shibboleth.utilities.java.support.annotation.constraint.NonnullElements;
-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;
-import net.shibboleth.utilities.java.support.security.IdentifierGenerationStrategy;
-import net.shibboleth.utilities.java.support.security.impl.RandomIdentifierGenerationStrategy;
-import net.shibboleth.utilities.java.support.xml.ElementSupport;
-
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.config.BeanDefinition;
@@ -216,33 +207,6 @@ public abstract class BaseFilterParser extends AbstractCustomBeanDefinitionParse
         return false;
     }
     
-    /**
-     * Parse list of elements into bean definitions which are inserted into the parent context.
-     * This is like {{@link SpringSupport#parseCustomElements(Collection, ParserContext)} but with
-     * qualifiedName warnings (and none of the parent bena stuff - which we do not need)
-     *
-     * @param elements list of elements to parse
-     * @param parserContext current parsing context
-     *
-     */
-    @Nullable public static void parseCustomElements(
-            @Nullable @NonnullElements final Collection<Element> elements, @Nonnull final ParserContext parserContext) {
-        if (elements == null) {
-            return;
-        }
-        
-        final HashSet<String> beanNames = new HashSet<>(elements.size());
-        for (final Element e : elements) {
-            if (e != null) {
-                final BeanDefinition def = parserContext.getDelegate().parseCustomElement(e, null);
-                final Object name = def.getAttribute(QUALIFIED_ID);
-                if (name != null && !beanNames.add(name.toString())) {
-                   LOG.warn("Duplicate filter element id '{}' found", name);
-               }
-            }
-        }
-    }
-
     /**
      * Parse list of elements into bean definitions.
      * This is like {{@link SpringSupport#parseCustomElements(Collection, ParserContext, BeanDefinitionBuilder)}
@@ -279,5 +243,4 @@ public abstract class BaseFilterParser extends AbstractCustomBeanDefinitionParse
 
         return definitions;
     }
-
 }
diff --git a/idp-attribute-filter-spring/src/main/java/net/shibboleth/idp/attribute/filter/spring/impl/AttributeFilterPolicyGroupParser.java b/idp-attribute-filter-spring/src/main/java/net/shibboleth/idp/attribute/filter/spring/impl/AttributeFilterPolicyGroupParser.java
index 16ebef6f2..b454de301 100644
--- a/idp-attribute-filter-spring/src/main/java/net/shibboleth/idp/attribute/filter/spring/impl/AttributeFilterPolicyGroupParser.java
+++ b/idp-attribute-filter-spring/src/main/java/net/shibboleth/idp/attribute/filter/spring/impl/AttributeFilterPolicyGroupParser.java
@@ -29,6 +29,7 @@ import org.springframework.beans.factory.xml.BeanDefinitionParser;
 import org.springframework.beans.factory.xml.ParserContext;
 import org.w3c.dom.Element;
 
+import net.shibboleth.ext.spring.util.SpringSupport;
 import net.shibboleth.idp.attribute.filter.spring.BaseFilterParser;
 import net.shibboleth.utilities.java.support.primitive.StringSupport;
 import net.shibboleth.utilities.java.support.xml.ElementSupport;
@@ -74,23 +75,23 @@ public class AttributeFilterPolicyGroupParser implements BeanDefinitionParser {
         //
 
         children = childrenMap.get(new QName(BaseFilterParser.NAMESPACE, "PolicyRequirementRule"));
-        BaseFilterParser.parseCustomElements(children, context);
+        SpringSupport.parseCustomElements(children, context);
 
         children = childrenMap.get(new QName(BaseFilterParser.NAMESPACE, "AttributeRule"));
-        BaseFilterParser.parseCustomElements(children, context);
+        SpringSupport.parseCustomElements(children, context);
 
         children = childrenMap.get(new QName(BaseFilterParser.NAMESPACE, "PermitValueRule"));
-        BaseFilterParser.parseCustomElements(children, context);
+        SpringSupport.parseCustomElements(children, context);
 
         children = childrenMap.get(new QName(BaseFilterParser.NAMESPACE, "DenyValueRule"));
-        BaseFilterParser.parseCustomElements(children, context);
+        SpringSupport.parseCustomElements(children, context);
 
         //
         // The actual policies
         //
         children = childrenMap.get(new QName(BaseFilterParser.NAMESPACE, "AttributeFilterPolicy"));
 
-        BaseFilterParser.parseCustomElements(children, context);
+        SpringSupport.parseCustomElements(children, context);
         return null;
     }
 }
\ No newline at end of file

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.


More information about the commits mailing list