[java-identity-provider] branch master updated: IDP-1423 Remove fina deprecations from Metadata namespace handling

Rod Widdowson rdw at steadingsoftware.com
Wed Mar 20 13:30:01 EDT 2019


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

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

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

The following commit(s) were added to refs/heads/master by this push:
       new  6712f20   IDP-1423 Remove fina deprecations from Metadata namespace handling
6712f20 is described below

commit 6712f20a80d30046b429bb7d1fcaa69aefe11e5b
Author: Rod Widdowson <rdw at steadingsoftware.com>
AuthorDate: Wed Mar 20 17:27:14 2019 +0000

    IDP-1423 Remove fina deprecations from Metadata namespace handling
    
    1) An unsued warning for stand alone trust engines (left over froma previous change)
    2) Use of tlsTrustEngineRef as as attribute for the HTTP metadata providers.
    
    https://issues.shibboleth.net/jira/browse/IDP-1423
---
 .../metadata/AbstractMetadataProviderParser.java       | 11 -----------
 .../AbstractDynamicHTTPMetadataProviderParser.java     | 11 +++++------
 .../metadata/impl/HTTPMetadataProviderParser.java      | 11 +++++------
 .../impl/HTTPMetadataProvidersParserSupport.java       | 18 ++----------------
 .../src/main/resources/schema/shibboleth-metadata.xsd  | 12 ++----------
 5 files changed, 14 insertions(+), 49 deletions(-)

diff --git a/idp-profile-spring/src/main/java/net/shibboleth/idp/profile/spring/relyingparty/metadata/AbstractMetadataProviderParser.java b/idp-profile-spring/src/main/java/net/shibboleth/idp/profile/spring/relyingparty/metadata/AbstractMetadataProviderParser.java
index f7050a2..33589d9 100644
--- a/idp-profile-spring/src/main/java/net/shibboleth/idp/profile/spring/relyingparty/metadata/AbstractMetadataProviderParser.java
+++ b/idp-profile-spring/src/main/java/net/shibboleth/idp/profile/spring/relyingparty/metadata/AbstractMetadataProviderParser.java
@@ -34,8 +34,6 @@ import org.w3c.dom.Node;
 
 import net.shibboleth.ext.spring.util.SpringSupport;
 import net.shibboleth.idp.saml.metadata.RelyingPartyMetadataProvider;
-import net.shibboleth.utilities.java.support.primitive.DeprecationSupport;
-import net.shibboleth.utilities.java.support.primitive.DeprecationSupport.ObjectType;
 import net.shibboleth.utilities.java.support.primitive.StringSupport;
 import net.shibboleth.utilities.java.support.xml.DOMTypeSupport;
 import net.shibboleth.utilities.java.support.xml.ElementSupport;
@@ -194,15 +192,6 @@ public abstract class AbstractMetadataProviderParser extends AbstractSingleBeanD
                 builder.addPropertyValue("metadataFilter", chainBuilder.getBeanDefinition());
             }
         }
-
-        final List<Element> trustEngines =
-                ElementSupport.getChildElements(element, TRUST_ENGINE_ELEMENT_NAME);
-        if (trustEngines != null && !trustEngines.isEmpty()) {
-            DeprecationSupport.warn(ObjectType.ELEMENT, "<TrustEngine> inside <MetadataProvider>", 
-                    parserContext.getReaderContext().getResource().getDescription(),
-                    "Inside <Filter>");
-            SpringSupport.parseCustomElements(trustEngines, parserContext);
-        }
     }
 
     /**
diff --git a/idp-profile-spring/src/main/java/net/shibboleth/idp/profile/spring/relyingparty/metadata/impl/AbstractDynamicHTTPMetadataProviderParser.java b/idp-profile-spring/src/main/java/net/shibboleth/idp/profile/spring/relyingparty/metadata/impl/AbstractDynamicHTTPMetadataProviderParser.java
index 797f887..a63ebcb 100644
--- a/idp-profile-spring/src/main/java/net/shibboleth/idp/profile/spring/relyingparty/metadata/impl/AbstractDynamicHTTPMetadataProviderParser.java
+++ b/idp-profile-spring/src/main/java/net/shibboleth/idp/profile/spring/relyingparty/metadata/impl/AbstractDynamicHTTPMetadataProviderParser.java
@@ -65,7 +65,6 @@ public abstract class AbstractDynamicHTTPMetadataProviderParser extends Abstract
             final BeanDefinitionBuilder builder) {
         super.doNativeParse(element, parserContext, builder);
 
-        final String tlsTrustEngineRef = StringSupport.trimOrNull(element.getAttributeNS(null, "tlsTrustEngineRef"));
         final Element tlsTrustEngine = ElementSupport.getFirstChildElement(element,
                 HTTPMetadataProvidersParserSupport.TLS_TRUST_ENGINE_ELEMENT_NAME);
         final String httpClientSecurityParametersRef =
@@ -73,13 +72,13 @@ public abstract class AbstractDynamicHTTPMetadataProviderParser extends Abstract
         BeanDefinition httpClientSecurityParameters = null;
 
         if (httpClientSecurityParametersRef != null) {
-            if (tlsTrustEngine != null || tlsTrustEngineRef != null) {
-                log.warn("httpClientSecurityParametersRef overrides tlsTrustEngineRef or <TrustEngine> subelement");
+            if (tlsTrustEngine != null) {
+                log.warn("httpClientSecurityParametersRef overrides <TrustEngine> subelement");
             }
             builder.addPropertyReference("httpClientSecurityParameters", httpClientSecurityParametersRef);
-        } else if (tlsTrustEngine != null || tlsTrustEngineRef != null) {
-            httpClientSecurityParameters = HTTPMetadataProvidersParserSupport.parseTLSTrustEngine(
-                    tlsTrustEngineRef, tlsTrustEngine, parserContext);
+        } else if (tlsTrustEngine != null) {
+            httpClientSecurityParameters =
+                    HTTPMetadataProvidersParserSupport.parseTLSTrustEngine(tlsTrustEngine, parserContext);
             builder.addPropertyValue("httpClientSecurityParameters", httpClientSecurityParameters);
         }
 
diff --git a/idp-profile-spring/src/main/java/net/shibboleth/idp/profile/spring/relyingparty/metadata/impl/HTTPMetadataProviderParser.java b/idp-profile-spring/src/main/java/net/shibboleth/idp/profile/spring/relyingparty/metadata/impl/HTTPMetadataProviderParser.java
index 9f43ee3..e7ce3b6 100644
--- a/idp-profile-spring/src/main/java/net/shibboleth/idp/profile/spring/relyingparty/metadata/impl/HTTPMetadataProviderParser.java
+++ b/idp-profile-spring/src/main/java/net/shibboleth/idp/profile/spring/relyingparty/metadata/impl/HTTPMetadataProviderParser.java
@@ -49,7 +49,6 @@ public abstract class HTTPMetadataProviderParser extends AbstractReloadingMetada
         
         super.doNativeParse(element, parserContext, builder);
 
-        final String tlsTrustEngineRef = StringSupport.trimOrNull(element.getAttributeNS(null, "tlsTrustEngineRef"));
         final Element tlsTrustEngine = ElementSupport.getFirstChildElement(element,
                 HTTPMetadataProvidersParserSupport.TLS_TRUST_ENGINE_ELEMENT_NAME);
         final String httpClientSecurityParametersRef =
@@ -57,13 +56,13 @@ public abstract class HTTPMetadataProviderParser extends AbstractReloadingMetada
         BeanDefinition httpClientSecurityParameters = null;
 
         if (httpClientSecurityParametersRef != null) {
-            if (tlsTrustEngine != null || tlsTrustEngineRef != null) {
-                log.warn("httpClientSecurityParametersRef overrides tlsTrustEngineRef or <TrustEngine> subelement");
+            if (tlsTrustEngine != null) {
+                log.warn("httpClientSecurityParametersRef overrides <TrustEngine> subelement");
             }
             builder.addPropertyReference("httpClientSecurityParameters", httpClientSecurityParametersRef);
-        } else if (tlsTrustEngine != null || tlsTrustEngineRef != null)  {
-            httpClientSecurityParameters = HTTPMetadataProvidersParserSupport.parseTLSTrustEngine(tlsTrustEngineRef,
-                    tlsTrustEngine, parserContext);
+        } else if (tlsTrustEngine != null)  {
+            httpClientSecurityParameters =
+                    HTTPMetadataProvidersParserSupport.parseTLSTrustEngine(tlsTrustEngine, parserContext);
             builder.addPropertyValue("httpClientSecurityParameters", httpClientSecurityParameters);
         }
 
diff --git a/idp-profile-spring/src/main/java/net/shibboleth/idp/profile/spring/relyingparty/metadata/impl/HTTPMetadataProvidersParserSupport.java b/idp-profile-spring/src/main/java/net/shibboleth/idp/profile/spring/relyingparty/metadata/impl/HTTPMetadataProvidersParserSupport.java
index 0c7a3b4..32eb8fc 100644
--- a/idp-profile-spring/src/main/java/net/shibboleth/idp/profile/spring/relyingparty/metadata/impl/HTTPMetadataProvidersParserSupport.java
+++ b/idp-profile-spring/src/main/java/net/shibboleth/idp/profile/spring/relyingparty/metadata/impl/HTTPMetadataProvidersParserSupport.java
@@ -35,8 +35,6 @@ import net.shibboleth.idp.profile.spring.relyingparty.metadata.HttpClientFactory
 import net.shibboleth.idp.profile.spring.relyingparty.metadata.TLSSocketFactoryFactoryBean;
 import net.shibboleth.utilities.java.support.annotation.constraint.NotEmpty;
 import net.shibboleth.utilities.java.support.logic.Constraint;
-import net.shibboleth.utilities.java.support.primitive.DeprecationSupport;
-import net.shibboleth.utilities.java.support.primitive.DeprecationSupport.ObjectType;
 import net.shibboleth.utilities.java.support.primitive.StringSupport;
 import net.shibboleth.utilities.java.support.xml.ElementSupport;
 
@@ -102,21 +100,17 @@ public final class HTTPMetadataProvidersParserSupport {
      * 
      * <p>One of the first two parameters must be non-null.</p>
      * 
-     * @param tlsTrustEngineRef if present, the reference 
      * @param tlsTrustEngine if present, the TLSTrustEngine element
      * @param parserContext context
      * 
      * @return the bean definition
      */
-    @Nullable protected static BeanDefinition parseTLSTrustEngine(@Nullable final String tlsTrustEngineRef,
-            @Nullable final Element tlsTrustEngine, @Nonnull final ParserContext parserContext) {
+    @Nullable protected static BeanDefinition parseTLSTrustEngine(@Nullable final Element tlsTrustEngine,
+            @Nonnull final ParserContext parserContext) {
 
         final BeanDefinitionBuilder builder =
                 BeanDefinitionBuilder.genericBeanDefinition(HttpClientSecurityParameters.class);
         if (tlsTrustEngine != null) {
-            if (tlsTrustEngineRef != null) {
-                LOG.warn("<TLSTrustEngine> subelement overrides setting of tlsTrustEngineRef ");
-            }
             final Element trustEngine = ElementSupport.getFirstChildElement(tlsTrustEngine,
                             AbstractMetadataProviderParser.TRUST_ENGINE_ELEMENT_NAME);
 
@@ -129,14 +123,6 @@ public final class HTTPMetadataProvidersParserSupport {
                 return null;
             }
             builder.addPropertyValue("tLSTrustEngine", SpringSupport.parseCustomElement(trustEngine, parserContext));
-        } else if (tlsTrustEngineRef == null) {
-            LOG.error("Internal error: tlsTrustEngineRef or TlsTrustEngine required");
-            return null;
-        } else {
-            DeprecationSupport.warn(ObjectType.ATTRIBUTE, "tlsTrustEngineRef",
-                    parserContext.getReaderContext().getResource().getDescription(),
-                    "inline <TrustEngine> element or httpClientSecurityParametersRef attribute");
-            builder.addPropertyReference("tLSTrustEngine", tlsTrustEngineRef); 
         }
 
         return builder.getBeanDefinition();
diff --git a/idp-schema/src/main/resources/schema/shibboleth-metadata.xsd b/idp-schema/src/main/resources/schema/shibboleth-metadata.xsd
index a43e7fb..70d5d0d 100644
--- a/idp-schema/src/main/resources/schema/shibboleth-metadata.xsd
+++ b/idp-schema/src/main/resources/schema/shibboleth-metadata.xsd
@@ -113,8 +113,6 @@
                         <annotation>
                             <documentation>
                                 TrustEngine used to evaluate HTTPS server TLS certificates.
-                            
-                                This element conflicts with and overriddes the tlsTrustEngineRef attribute.
                             </documentation>
                         </annotation>
                         <complexType>
@@ -221,13 +219,11 @@
                         </documentation>
                     </annotation>
                 </attribute>
-                <attribute name="tlsTrustEngineRef" type="string">
+                <attribute name="tlsTrustEngineRefX" type="string">
                     <annotation>
                         <documentation>
                             A reference to an externally-defined Spring bean which specifies an
                             instance of TrustEngine used to evaluate HTTPS server TLS certificates.
-                            
-                            This attribute conflicts with and overrides the TLSTrustEngine child element.
                         </documentation>
                     </annotation>
                 </attribute>
@@ -389,8 +385,6 @@
                         <annotation>
                             <documentation>
                                 TrustEngine used to evaluate HTTPS server TLS certificates.
-                            
-                                This element conflicts with and overrides the tlsTrustEngineRef attribute.
                             </documentation>
                         </annotation>
                         <complexType>
@@ -492,13 +486,11 @@
                         <documentation>Password for the HTTP proxy through which connections will be made.</documentation>
                     </annotation>
                 </attribute>
-                <attribute name="tlsTrustEngineRef" type="string">
+                <attribute name="tlsTrustEngineRefX" type="string">
                     <annotation>
                         <documentation>
                             A reference to an externally-defined Spring bean which specifies an
                             instance of TrustEngine used to evaluate HTTPS server TLS certificates.
-                            
-                            This attribute conflicts with and overrides the TLSTrustEngine child element.
                         </documentation>
                     </annotation>
                 </attribute>

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


More information about the commits mailing list