[java-identity-provider] branch master updated: IDP-1172 Deprecate the security: namespace

Rod Widdowson rdw at steadingsoftware.com
Tue Aug 29 09:56:43 EDT 2017


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=6b1e3947109b41ee5de5429d2958efb62ac5865a

The following commit(s) were added to refs/heads/master by this push:
       new  6b1e394   IDP-1172 Deprecate the security: namespace
6b1e394 is described below

commit 6b1e3947109b41ee5de5429d2958efb62ac5865a
Author: Rod Widdowson <rdw at steadingsoftware.com>
AuthorDate: Tue Aug 29 14:54:46 2017 +0100

    IDP-1172 Deprecate the security: namespace
    
    https://issues.shibboleth.net/jira/browse/IDP-1172
---
 .../credential/impl/AbstractCredentialParser.java  | 16 ++++++------
 .../AbstractWarningSecurityParser.java}            | 30 +++++++++++++---------
 .../impl/AbstractPKIXValidationInfoParser.java     | 12 ++++-----
 .../impl/AbstractTrustEngineParser.java            |  8 +++---
 .../impl/PKIXValidationOptionsParser.java          | 10 ++++----
 5 files changed, 41 insertions(+), 35 deletions(-)

diff --git a/idp-profile-spring/src/main/java/net/shibboleth/idp/profile/spring/relyingparty/security/credential/impl/AbstractCredentialParser.java b/idp-profile-spring/src/main/java/net/shibboleth/idp/profile/spring/relyingparty/security/credential/impl/AbstractCredentialParser.java
index 387aa8e..108bb07 100644
--- a/idp-profile-spring/src/main/java/net/shibboleth/idp/profile/spring/relyingparty/security/credential/impl/AbstractCredentialParser.java
+++ b/idp-profile-spring/src/main/java/net/shibboleth/idp/profile/spring/relyingparty/security/credential/impl/AbstractCredentialParser.java
@@ -21,21 +21,21 @@ import java.util.List;
 
 import javax.xml.namespace.QName;
 
-import net.shibboleth.ext.spring.util.SpringSupport;
-import net.shibboleth.idp.profile.spring.relyingparty.metadata.AbstractMetadataProviderParser;
-import net.shibboleth.utilities.java.support.primitive.StringSupport;
-import net.shibboleth.utilities.java.support.xml.ElementSupport;
-
 import org.springframework.beans.factory.support.AbstractBeanDefinition;
 import org.springframework.beans.factory.support.BeanDefinitionBuilder;
-import org.springframework.beans.factory.xml.AbstractSingleBeanDefinitionParser;
 import org.springframework.beans.factory.xml.ParserContext;
 import org.w3c.dom.Element;
 
+import net.shibboleth.ext.spring.util.SpringSupport;
+import net.shibboleth.idp.profile.spring.relyingparty.metadata.AbstractMetadataProviderParser;
+import net.shibboleth.idp.profile.spring.relyingparty.security.impl.AbstractWarningSecurityParser;
+import net.shibboleth.utilities.java.support.primitive.StringSupport;
+import net.shibboleth.utilities.java.support.xml.ElementSupport;
+
 /**
  * Base parser for all <Credential> elements.
  */
-public abstract class AbstractCredentialParser extends AbstractSingleBeanDefinitionParser {
+public abstract class AbstractCredentialParser extends AbstractWarningSecurityParser {
 
     /** <Credential>. */
     public static final QName CREDENTIAL_ELEMENT_NAME = new QName(AbstractMetadataProviderParser.SECURITY_NAMESPACE,
@@ -55,7 +55,7 @@ public abstract class AbstractCredentialParser extends AbstractSingleBeanDefinit
     @Override protected void doParse(final Element element, final ParserContext parserContext,
             final BeanDefinitionBuilder builder) {
         super.doParse(element, parserContext, builder);
-
+        
         builder.setLazyInit(true);
 
         parseAttributes(element, builder);
diff --git a/idp-profile-spring/src/main/java/net/shibboleth/idp/profile/spring/relyingparty/security/trustengine/impl/AbstractTrustEngineParser.java b/idp-profile-spring/src/main/java/net/shibboleth/idp/profile/spring/relyingparty/security/impl/AbstractWarningSecurityParser.java
similarity index 57%
copy from idp-profile-spring/src/main/java/net/shibboleth/idp/profile/spring/relyingparty/security/trustengine/impl/AbstractTrustEngineParser.java
copy to idp-profile-spring/src/main/java/net/shibboleth/idp/profile/spring/relyingparty/security/impl/AbstractWarningSecurityParser.java
index 98eaa57..a881dcf 100644
--- a/idp-profile-spring/src/main/java/net/shibboleth/idp/profile/spring/relyingparty/security/trustengine/impl/AbstractTrustEngineParser.java
+++ b/idp-profile-spring/src/main/java/net/shibboleth/idp/profile/spring/relyingparty/security/impl/AbstractWarningSecurityParser.java
@@ -15,30 +15,36 @@
  * limitations under the License.
  */
 
-package net.shibboleth.idp.profile.spring.relyingparty.security.trustengine.impl;
+package net.shibboleth.idp.profile.spring.relyingparty.security.impl;
 
-import net.shibboleth.utilities.java.support.primitive.StringSupport;
-
-import org.springframework.beans.factory.support.AbstractBeanDefinition;
 import org.springframework.beans.factory.support.BeanDefinitionBuilder;
 import org.springframework.beans.factory.xml.AbstractSingleBeanDefinitionParser;
 import org.springframework.beans.factory.xml.ParserContext;
 import org.w3c.dom.Element;
 
+import net.shibboleth.utilities.java.support.primitive.DeprecationSupport;
+import net.shibboleth.utilities.java.support.primitive.DeprecationSupport.ObjectType;
+
 /**
- * Basis of all parsers for <security:TrustEngine>.
+ * Base class to issue a deprecation warning on activation.
+ * @deprecated remove all super classes in V4. 
  */
-public abstract class AbstractTrustEngineParser extends AbstractSingleBeanDefinitionParser {
+ at Deprecated
+public class AbstractWarningSecurityParser extends AbstractSingleBeanDefinitionParser {
 
     /** {@inheritDoc} */
-    @Override protected String resolveId(final Element element, final AbstractBeanDefinition definition,
-            final ParserContext parserContext) {
-        return StringSupport.trimOrNull(element.getAttributeNS(null, "id"));
+    @Override
+    protected void doParse(final Element element, final BeanDefinitionBuilder builder) {
+        DeprecationSupport.warnOnce(ObjectType.ELEMENT, element.getPrefix() +":" + element.getLocalName(), null, null);
+        super.doParse(element, builder);
     }
-
-    @Override protected void doParse(final Element element, final ParserContext parserContext,
+    
+    /** {@inheritDoc} */
+    @Override
+    protected void doParse(final Element element, final ParserContext parserContext, 
             final BeanDefinitionBuilder builder) {
+        DeprecationSupport.warnOnce(ObjectType.ELEMENT, element.getPrefix() +":" + element.getLocalName(), 
+                parserContext.getReaderContext().getResource().getDescription(), null);
         super.doParse(element, parserContext, builder);
-        builder.setLazyInit(true);
     }
 }
diff --git a/idp-profile-spring/src/main/java/net/shibboleth/idp/profile/spring/relyingparty/security/trustengine/impl/AbstractPKIXValidationInfoParser.java b/idp-profile-spring/src/main/java/net/shibboleth/idp/profile/spring/relyingparty/security/trustengine/impl/AbstractPKIXValidationInfoParser.java
index 40c40ff..9971650 100644
--- a/idp-profile-spring/src/main/java/net/shibboleth/idp/profile/spring/relyingparty/security/trustengine/impl/AbstractPKIXValidationInfoParser.java
+++ b/idp-profile-spring/src/main/java/net/shibboleth/idp/profile/spring/relyingparty/security/trustengine/impl/AbstractPKIXValidationInfoParser.java
@@ -21,22 +21,22 @@ import java.util.List;
 
 import javax.xml.namespace.QName;
 
-import net.shibboleth.idp.profile.spring.relyingparty.metadata.AbstractMetadataProviderParser;
-import net.shibboleth.utilities.java.support.primitive.StringSupport;
-import net.shibboleth.utilities.java.support.xml.ElementSupport;
-
 import org.springframework.beans.factory.support.BeanDefinitionBuilder;
 import org.springframework.beans.factory.support.ManagedList;
-import org.springframework.beans.factory.xml.AbstractSingleBeanDefinitionParser;
 import org.springframework.beans.factory.xml.ParserContext;
 import org.w3c.dom.Element;
 
+import net.shibboleth.idp.profile.spring.relyingparty.metadata.AbstractMetadataProviderParser;
+import net.shibboleth.idp.profile.spring.relyingparty.security.impl.AbstractWarningSecurityParser;
+import net.shibboleth.utilities.java.support.primitive.StringSupport;
+import net.shibboleth.utilities.java.support.xml.ElementSupport;
+
 /**
  * Base parser for all <ValidationInfo> types. This does all the heavy lifting of creating lists of strings from
  * the sub-elements. The derived classes specify which factory bean to create and that in turn converts from string to
  * CRL or Certificate (either inline or from a file).
  */
-public abstract class AbstractPKIXValidationInfoParser extends AbstractSingleBeanDefinitionParser {
+public abstract class AbstractPKIXValidationInfoParser extends AbstractWarningSecurityParser {
 
     /** The element <Certificate>. */
     private static final QName CERTIFICATE =
diff --git a/idp-profile-spring/src/main/java/net/shibboleth/idp/profile/spring/relyingparty/security/trustengine/impl/AbstractTrustEngineParser.java b/idp-profile-spring/src/main/java/net/shibboleth/idp/profile/spring/relyingparty/security/trustengine/impl/AbstractTrustEngineParser.java
index 98eaa57..e3131b2 100644
--- a/idp-profile-spring/src/main/java/net/shibboleth/idp/profile/spring/relyingparty/security/trustengine/impl/AbstractTrustEngineParser.java
+++ b/idp-profile-spring/src/main/java/net/shibboleth/idp/profile/spring/relyingparty/security/trustengine/impl/AbstractTrustEngineParser.java
@@ -17,18 +17,18 @@
 
 package net.shibboleth.idp.profile.spring.relyingparty.security.trustengine.impl;
 
-import net.shibboleth.utilities.java.support.primitive.StringSupport;
-
 import org.springframework.beans.factory.support.AbstractBeanDefinition;
 import org.springframework.beans.factory.support.BeanDefinitionBuilder;
-import org.springframework.beans.factory.xml.AbstractSingleBeanDefinitionParser;
 import org.springframework.beans.factory.xml.ParserContext;
 import org.w3c.dom.Element;
 
+import net.shibboleth.idp.profile.spring.relyingparty.security.impl.AbstractWarningSecurityParser;
+import net.shibboleth.utilities.java.support.primitive.StringSupport;
+
 /**
  * Basis of all parsers for <security:TrustEngine>.
  */
-public abstract class AbstractTrustEngineParser extends AbstractSingleBeanDefinitionParser {
+public abstract class AbstractTrustEngineParser extends AbstractWarningSecurityParser {
 
     /** {@inheritDoc} */
     @Override protected String resolveId(final Element element, final AbstractBeanDefinition definition,
diff --git a/idp-profile-spring/src/main/java/net/shibboleth/idp/profile/spring/relyingparty/security/trustengine/impl/PKIXValidationOptionsParser.java b/idp-profile-spring/src/main/java/net/shibboleth/idp/profile/spring/relyingparty/security/trustengine/impl/PKIXValidationOptionsParser.java
index 7620f17..70dae53 100644
--- a/idp-profile-spring/src/main/java/net/shibboleth/idp/profile/spring/relyingparty/security/trustengine/impl/PKIXValidationOptionsParser.java
+++ b/idp-profile-spring/src/main/java/net/shibboleth/idp/profile/spring/relyingparty/security/trustengine/impl/PKIXValidationOptionsParser.java
@@ -19,19 +19,19 @@ package net.shibboleth.idp.profile.spring.relyingparty.security.trustengine.impl
 
 import javax.xml.namespace.QName;
 
-import net.shibboleth.idp.profile.spring.relyingparty.metadata.AbstractMetadataProviderParser;
-import net.shibboleth.utilities.java.support.primitive.StringSupport;
-
 import org.opensaml.security.x509.PKIXValidationOptions;
 import org.springframework.beans.factory.support.BeanDefinitionBuilder;
-import org.springframework.beans.factory.xml.AbstractSingleBeanDefinitionParser;
 import org.springframework.beans.factory.xml.ParserContext;
 import org.w3c.dom.Element;
 
+import net.shibboleth.idp.profile.spring.relyingparty.metadata.AbstractMetadataProviderParser;
+import net.shibboleth.idp.profile.spring.relyingparty.security.impl.AbstractWarningSecurityParser;
+import net.shibboleth.utilities.java.support.primitive.StringSupport;
+
 /**
  * A Parser for the < ValidationOptions > within a StaticPKIXSignature.
  */
-public class PKIXValidationOptionsParser extends AbstractSingleBeanDefinitionParser {
+public class PKIXValidationOptionsParser extends AbstractWarningSecurityParser {
 
     /** Validation Options. */
     public static final QName ELEMENT_NAME = new QName(AbstractMetadataProviderParser.SECURITY_NAMESPACE,

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


More information about the commits mailing list