[java-shib-attribute] 06/06: JSATTR-5 Remove deprecations

Rod Widdowson rdw at steadingsoftware.com
Thu Nov 24 11:02:06 UTC 2022


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

rdw pushed a commit to branch main
in repository java-shib-attribute.

View the commit online:
http://git.shibboleth.net/view/?p=java-shib-attribute.git;a=commit;h=04e95eb1c10294158b94a8fba02e7e5bbe31b54d

commit 04e95eb1c10294158b94a8fba02e7e5bbe31b54d
Author: Rod Widdowson <rdw at steadingsoftware.com>
AuthorDate: Wed Nov 23 16:55:53 2022 +0000

    JSATTR-5 Remove deprecations
    
    https://shibboleth.atlassian.net/browse/JSATTR-5
    
    MappedAttributeInMetadata is deprecated (in preference
    to AttributeInMetadata)
---
 .../impl/AttributeFilterNamespaceHandler.java      | 12 ++--
 .../impl/MappedAttributeInMetadataRuleParser.java  | 58 -----------------
 .../src/main/resources/schema/shibboleth-afp.xsd   | 14 +---
 .../MappedAttributeInMetadataRuleParserTest.java   | 76 ----------------------
 .../attribute/filter/matcher/mappedInMetadata.xml  | 17 -----
 5 files changed, 6 insertions(+), 171 deletions(-)

diff --git a/shib-attribute-filter-spring/src/main/java/net/shibboleth/idp/attribute/filter/spring/impl/AttributeFilterNamespaceHandler.java b/shib-attribute-filter-spring/src/main/java/net/shibboleth/idp/attribute/filter/spring/impl/AttributeFilterNamespaceHandler.java
index 1e9d8e31d..fcda1e84e 100644
--- a/shib-attribute-filter-spring/src/main/java/net/shibboleth/idp/attribute/filter/spring/impl/AttributeFilterNamespaceHandler.java
+++ b/shib-attribute-filter-spring/src/main/java/net/shibboleth/idp/attribute/filter/spring/impl/AttributeFilterNamespaceHandler.java
@@ -48,16 +48,15 @@ import net.shibboleth.idp.attribute.filter.spring.saml.impl.IssuerEntityAttribut
 import net.shibboleth.idp.attribute.filter.spring.saml.impl.IssuerInEntityGroupRuleParser;
 import net.shibboleth.idp.attribute.filter.spring.saml.impl.IssuerNameIDFormatRuleParser;
 import net.shibboleth.idp.attribute.filter.spring.saml.impl.IssuerRegistrationAuthorityRuleParser;
+import net.shibboleth.idp.attribute.filter.spring.saml.impl.ProxiedRequesterEntityAttributeExactRuleParser;
+import net.shibboleth.idp.attribute.filter.spring.saml.impl.ProxiedRequesterEntityAttributeRegexRuleParser;
+import net.shibboleth.idp.attribute.filter.spring.saml.impl.ProxiedRequesterInEntityGroupRuleParser;
+import net.shibboleth.idp.attribute.filter.spring.saml.impl.ProxiedRequesterRegistrationAuthorityRuleParser;
 import net.shibboleth.idp.attribute.filter.spring.saml.impl.RequesterEntityAttributeExactRuleParser;
 import net.shibboleth.idp.attribute.filter.spring.saml.impl.RequesterEntityAttributeRegexRuleParser;
 import net.shibboleth.idp.attribute.filter.spring.saml.impl.RequesterInEntityGroupRuleParser;
 import net.shibboleth.idp.attribute.filter.spring.saml.impl.RequesterNameIDFormatRuleParser;
 import net.shibboleth.idp.attribute.filter.spring.saml.impl.RequesterRegistrationAuthorityRuleParser;
-import net.shibboleth.idp.attribute.filter.spring.saml.impl.MappedAttributeInMetadataRuleParser;
-import net.shibboleth.idp.attribute.filter.spring.saml.impl.ProxiedRequesterEntityAttributeExactRuleParser;
-import net.shibboleth.idp.attribute.filter.spring.saml.impl.ProxiedRequesterEntityAttributeRegexRuleParser;
-import net.shibboleth.idp.attribute.filter.spring.saml.impl.ProxiedRequesterInEntityGroupRuleParser;
-import net.shibboleth.idp.attribute.filter.spring.saml.impl.ProxiedRequesterRegistrationAuthorityRuleParser;
 import net.shibboleth.idp.attribute.filter.spring.saml.impl.ScopeMatchesShibMDScopeParser;
 import net.shibboleth.idp.attribute.filter.spring.saml.impl.ValueMatchesShibMDScopeParser;
 import net.shibboleth.shared.spring.custom.BaseSpringNamespaceHandler;
@@ -173,9 +172,6 @@ public class AttributeFilterNamespaceHandler extends BaseSpringNamespaceHandler
         registerBeanDefinitionParser(AttributeInMetadataRuleParser.SCHEMA_TYPE,
                 new AttributeInMetadataRuleParser());
 
-        registerBeanDefinitionParser(MappedAttributeInMetadataRuleParser.SCHEMA_TYPE,
-                new MappedAttributeInMetadataRuleParser());
-
         registerBeanDefinitionParser(RequesterRegistrationAuthorityRuleParser.SCHEMA_TYPE,
                 new RequesterRegistrationAuthorityRuleParser());
 
diff --git a/shib-attribute-filter-spring/src/main/java/net/shibboleth/idp/attribute/filter/spring/saml/impl/MappedAttributeInMetadataRuleParser.java b/shib-attribute-filter-spring/src/main/java/net/shibboleth/idp/attribute/filter/spring/saml/impl/MappedAttributeInMetadataRuleParser.java
deleted file mode 100644
index afd01978f..000000000
--- a/shib-attribute-filter-spring/src/main/java/net/shibboleth/idp/attribute/filter/spring/saml/impl/MappedAttributeInMetadataRuleParser.java
+++ /dev/null
@@ -1,58 +0,0 @@
-/*
- * Licensed to the University Corporation for Advanced Internet Development,
- * Inc. (UCAID) under one or more contributor license agreements.  See the
- * NOTICE file distributed with this work for additional information regarding
- * copyright ownership. The UCAID licenses this file to You under the Apache
- * License, Version 2.0 (the "License"); you may not use this file except in
- * compliance with the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package net.shibboleth.idp.attribute.filter.spring.saml.impl;
-
-import javax.annotation.Nonnull;
-import javax.xml.namespace.QName;
-
-import net.shibboleth.idp.attribute.filter.matcher.saml.impl.AttributeInMetadataMatcher;
-import net.shibboleth.idp.attribute.filter.spring.BaseFilterParser;
-import net.shibboleth.shared.primitive.DeprecationSupport;
-import net.shibboleth.shared.primitive.DeprecationSupport.ObjectType;
-
-import org.springframework.beans.factory.support.BeanDefinitionBuilder;
-import org.springframework.beans.factory.xml.ParserContext;
-import org.w3c.dom.Element;
-
-/**
- * Bean definition parser for deprecated variant of {@link AttributeInMetadataMatcher}.
- */
-public class MappedAttributeInMetadataRuleParser extends AttributeInMetadataRuleParser {
-
-    /** Schema type. */
-    @Nonnull public static final QName SCHEMA_TYPE = new QName(BaseFilterParser.NAMESPACE,
-            "MappedAttributeInMetadata");
-
-    /** {@inheritDoc} */
-    @Override @Nonnull protected Class<AttributeInMetadataMatcher> getNativeBeanClass() {
-        return AttributeInMetadataMatcher.class;
-    }
-
-    /** {@inheritDoc} */
-    @Override protected void doNativeParse(@Nonnull final Element config, @Nonnull final ParserContext parserContext,
-            @Nonnull final BeanDefinitionBuilder builder) {
-        
-        // V4 deprecation
-        DeprecationSupport.warn(ObjectType.XSITYPE, SCHEMA_TYPE.toString(),
-                parserContext.getReaderContext().getResource().getDescription(),
-                AttributeInMetadataRuleParser.SCHEMA_TYPE.toString());
-        
-        super.doNativeParse(config, parserContext, builder);
-    }
-
-}
\ No newline at end of file
diff --git a/shib-attribute-filter-spring/src/main/resources/schema/shibboleth-afp.xsd b/shib-attribute-filter-spring/src/main/resources/schema/shibboleth-afp.xsd
index 061c38fe3..88ad2d54c 100644
--- a/shib-attribute-filter-spring/src/main/resources/schema/shibboleth-afp.xsd
+++ b/shib-attribute-filter-spring/src/main/resources/schema/shibboleth-afp.xsd
@@ -6,7 +6,8 @@
         version="5.0.0"
         elementFormDefault="qualified">
 
-    <import namespace="http://www.w3.org/2000/09/xmldsig#" schemaLocation="http://www.w3.org/TR/2002/REC-xmldsig-core-20020212/xmldsig-core-schema.xsd"/>
+    <import namespace="http://www.w3.org/2000/09/xmldsig#"
+     schemaLocation="http://www.w3.org/TR/2002/REC-xmldsig-core-20020212/xmldsig-core-schema.xsd" />
 
     <annotation>
         <documentation>Schema for the attribute filter policies.</documentation>
@@ -944,17 +945,6 @@
         </complexContent>
     </complexType>
 
-    <complexType name="MappedAttributeInMetadata">
-        <annotation>
-            <documentation>
-                Deprecated alias for afp:AttributeInMetadata type.
-            </documentation>
-        </annotation>
-        <complexContent>
-            <extension base="afp:AttributeInMetadata" />
-        </complexContent>
-    </complexType>
-
     <simpleType name="anyURIListType">
         <list itemType="string"/>
     </simpleType>
diff --git a/shib-attribute-filter-spring/src/test/java/net/shibboleth/idp/attribute/filter/spring/saml/MappedAttributeInMetadataRuleParserTest.java b/shib-attribute-filter-spring/src/test/java/net/shibboleth/idp/attribute/filter/spring/saml/MappedAttributeInMetadataRuleParserTest.java
deleted file mode 100644
index 89a64299a..000000000
--- a/shib-attribute-filter-spring/src/test/java/net/shibboleth/idp/attribute/filter/spring/saml/MappedAttributeInMetadataRuleParserTest.java
+++ /dev/null
@@ -1,76 +0,0 @@
-/*
- * Licensed to the University Corporation for Advanced Internet Development,
- * Inc. (UCAID) under one or more contributor license agreements.  See the
- * NOTICE file distributed with this work for additional information regarding
- * copyright ownership. The UCAID licenses this file to You under the Apache
- * License, Version 2.0 (the "License"); you may not use this file except in
- * compliance with the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package net.shibboleth.idp.attribute.filter.spring.saml;
-
-import static org.testng.Assert.assertEquals;
-import static org.testng.Assert.assertTrue;
-
-import org.springframework.beans.factory.BeanCreationException;
-import org.springframework.context.support.GenericApplicationContext;
-import org.testng.annotations.Test;
-
-import net.shibboleth.idp.attribute.filter.AttributeRule;
-import net.shibboleth.idp.attribute.filter.PolicyFromMatcher;
-import net.shibboleth.idp.attribute.filter.matcher.saml.impl.AttributeInMetadataMatcher;
-import net.shibboleth.idp.attribute.filter.spring.saml.impl.MappedAttributeInMetadataRuleParser;
-import net.shibboleth.idp.attribute.filter.spring.testing.BaseAttributeFilterParserTest;
-import net.shibboleth.shared.component.ComponentInitializationException;
-
-/**
- * test for {@link MappedAttributeInMetadataRuleParser}.
- */
- at SuppressWarnings("javadoc") 
-public class MappedAttributeInMetadataRuleParserTest extends  BaseAttributeFilterParserTest {
-
-    public void test(final String propValue, final boolean metadataSilentResult, final boolean onlyResult) throws ComponentInitializationException {
-        GenericApplicationContext context = contextWithPropertyValue(propValue);
-        setTestContext(context);
-        context.setDisplayName("ApplicationContext: Matcher");
-
-        final AttributeRule rule = getAttributeRulesAttributeFilterPolicy(MATCHER_PATH + "mappedInMetadata.xml", context).get(0);
-        rule.initialize();
-        AttributeInMetadataMatcher matcher = (AttributeInMetadataMatcher) rule.getMatcher();
-        assert matcher != null;
-        
-        assertTrue(matcher.getId().endsWith(":PermitRule"));
-        assertEquals(matcher.getMatchIfMetadataSilent(), metadataSilentResult);
-        assertTrue(matcher.getOnlyIfRequired());
-
-        final PolicyFromMatcher policyRule = (PolicyFromMatcher) getPolicyRuleFromAttributeFilterPolicy(context);
-        matcher = (AttributeInMetadataMatcher) policyRule.getMatcher();
-        assertTrue(matcher.getId().endsWith(":PRR"));
-        assertTrue(matcher.getMatchIfMetadataSilent());
-        assertEquals(matcher.getOnlyIfRequired(), onlyResult);
-     }
-
-     public void test(final String propValue, final boolean result) throws ComponentInitializationException {
-         test(propValue, result, result);
-     }
-
-     @Test public void testTrue() throws ComponentInitializationException {
-         test("true", true);
-     }
-
-     @Test public void testFalse() throws ComponentInitializationException {
-         test("false", false);
-     }
-
-     @Test(expectedExceptions = {BeanCreationException.class}) public void testEmpty() throws ComponentInitializationException {
-         test("", false, true);
-     }
-}
diff --git a/shib-attribute-filter-spring/src/test/resources/net/shibboleth/idp/attribute/filter/matcher/mappedInMetadata.xml b/shib-attribute-filter-spring/src/test/resources/net/shibboleth/idp/attribute/filter/matcher/mappedInMetadata.xml
deleted file mode 100644
index 82e4642c3..000000000
--- a/shib-attribute-filter-spring/src/test/resources/net/shibboleth/idp/attribute/filter/matcher/mappedInMetadata.xml
+++ /dev/null
@@ -1,17 +0,0 @@
-<AttributeFilterPolicy id="MostBasicExample" xmlns="urn:mace:shibboleth:2.0:afp"
-        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-        xsi:schemaLocation="urn:mace:shibboleth:2.0:afp http://shibboleth.net/schema/idp/shibboleth-afp.xsd">                            
-    <PolicyRequirementRule xsi:type="MappedAttributeInMetadata"
-                           id="PRR"
-                           onlyIfRequired="%{prop}"
-                           matchIfMetadataSilent="true"/>
-                            
-    <AttributeRule attributeID="email">
-		
-		<PermitValueRule xsi:type="MappedAttributeInMetadata"
-                     	     id="PermitRule"
-	                         onlyIfRequired="true"
-	                         matchIfMetadataSilent="%{prop}"
-	                        />
-    </AttributeRule>
-</AttributeFilterPolicy>
\ 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