[java-identity-provider] 02/02: IDP-1177 A pass though attribute-resolver adding DeprecationSupport calls

Rod Widdowson rdw at steadingsoftware.com
Sun Jul 16 08:29:33 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=6e68809a59aa83c3965e89802e2f96eea8718cd3

commit 6e68809a59aa83c3965e89802e2f96eea8718cd3
Author: Rod Widdowson <rdw at steadingsoftware.com>
AuthorDate: Sun Jul 16 13:27:38 2017 +0100

    IDP-1177  A pass though attribute-resolver adding DeprecationSupport calls
    
    https://issues.shibboleth.net/jira/browse/IDP-1177
    
    Note that some duplication exists (for instance PrinicpalConnector) and in many cases, exlicit logging
    has been replaced by this call.
---
 .../net/shibboleth/idp/attribute/resolver/DataConnector.java  |  2 +-
 .../idp/attribute/resolver/PluginDependencySupport.java       |  7 +++++++
 .../attribute/resolver/ResolverDataConnectorDependency.java   |  5 +++++
 .../resolver/ad/impl/IdPAttributePrincipalValuesFunction.java |  7 ++++---
 .../resolver/dc/ldap/impl/ConnectionFactoryValidator.java     |  6 +++++-
 .../ldap/impl/ParameterizedExecutableSearchFilterBuilder.java |  6 ++++--
 .../attribute/resolver/dc/rdbms/impl/DataSourceValidator.java |  6 ++++--
 .../dc/rdbms/impl/FormatExecutableStatementBuilder.java       |  7 ++++---
 .../resolver/spring/dc/impl/AbstractDataConnectorParser.java  | 11 +++++++++++
 .../resolver/spring/dc/ldap/impl/LDAPDataConnectorParser.java |  6 ++++--
 .../spring/dc/rdbms/impl/RDBMSDataConnectorParser.java        | 10 +++++-----
 .../resolver/spring/impl/AttributeResolverParser.java         |  8 +++++---
 .../spring/pc/impl/AbstractPrincipalConnectorParser.java      |  6 +++++-
 13 files changed, 64 insertions(+), 23 deletions(-)

diff --git a/idp-attribute-resolver-api/src/main/java/net/shibboleth/idp/attribute/resolver/DataConnector.java b/idp-attribute-resolver-api/src/main/java/net/shibboleth/idp/attribute/resolver/DataConnector.java
index 5401666..70cd97c 100644
--- a/idp-attribute-resolver-api/src/main/java/net/shibboleth/idp/attribute/resolver/DataConnector.java
+++ b/idp-attribute-resolver-api/src/main/java/net/shibboleth/idp/attribute/resolver/DataConnector.java
@@ -29,7 +29,7 @@ import net.shibboleth.idp.attribute.IdPAttribute;
  * 
  * This interface should be considered as deprecated, and {@link DataConnectorEx} should be used instead.
  */
- at ThreadSafe
+ at ThreadSafe @Deprecated
 public interface DataConnector extends ResolverPlugin<Map<String, IdPAttribute>> {
 
     /**
diff --git a/idp-attribute-resolver-api/src/main/java/net/shibboleth/idp/attribute/resolver/PluginDependencySupport.java b/idp-attribute-resolver-api/src/main/java/net/shibboleth/idp/attribute/resolver/PluginDependencySupport.java
index 4a2dab1..ff22c90 100644
--- a/idp-attribute-resolver-api/src/main/java/net/shibboleth/idp/attribute/resolver/PluginDependencySupport.java
+++ b/idp-attribute-resolver-api/src/main/java/net/shibboleth/idp/attribute/resolver/PluginDependencySupport.java
@@ -33,6 +33,8 @@ import net.shibboleth.idp.attribute.IdPAttributeValue;
 import net.shibboleth.idp.attribute.resolver.context.AttributeResolverWorkContext;
 import net.shibboleth.utilities.java.support.annotation.constraint.NonnullElements;
 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 org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -71,6 +73,11 @@ public final class PluginDependencySupport {
         Constraint.isNotNull(workContext, "Attribute resolution context cannot be null");
         Constraint.isNotNull(dependencies, "Resolver dependency collection cannot be null");
         
+        DeprecationSupport.warn(ObjectType.METHOD, 
+                "PluginDependencySupport#getMergedAttributeValues(AttributeResolverWorkContext, Collection)", 
+                null, 
+                "PluginDependencySupport#getMergedAttributeValues(AttributeResolverWorkContext, Collection, String)");
+        
         return getMergedAttributeValues(workContext, dependencies, "<unknown>");
     }
 
diff --git a/idp-attribute-resolver-api/src/main/java/net/shibboleth/idp/attribute/resolver/ResolverDataConnectorDependency.java b/idp-attribute-resolver-api/src/main/java/net/shibboleth/idp/attribute/resolver/ResolverDataConnectorDependency.java
index 235f91d..2f50874 100644
--- a/idp-attribute-resolver-api/src/main/java/net/shibboleth/idp/attribute/resolver/ResolverDataConnectorDependency.java
+++ b/idp-attribute-resolver-api/src/main/java/net/shibboleth/idp/attribute/resolver/ResolverDataConnectorDependency.java
@@ -27,6 +27,8 @@ import javax.annotation.Nullable;
 
 import net.shibboleth.utilities.java.support.annotation.constraint.NonnullElements;
 import net.shibboleth.utilities.java.support.annotation.constraint.NotEmpty;
+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;
 
 /**
@@ -93,6 +95,9 @@ public final class ResolverDataConnectorDependency extends ResolverPluginDepende
      * @deprecated("Used SetAttributeNames instead")
      */
     @Override @Deprecated public void setDependencyAttributeId(@Nullable final String attributeId) {
+        DeprecationSupport.warn(ObjectType.METHOD,
+                "ResolverDataConnectorDependency#setDependencyAttributeId(String)",
+                null, null);
         super.setDependencyAttributeId(attributeId);
     }
 
diff --git a/idp-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/ad/impl/IdPAttributePrincipalValuesFunction.java b/idp-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/ad/impl/IdPAttributePrincipalValuesFunction.java
index e82f5fb..20cbecd 100644
--- a/idp-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/ad/impl/IdPAttributePrincipalValuesFunction.java
+++ b/idp-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/ad/impl/IdPAttributePrincipalValuesFunction.java
@@ -29,8 +29,8 @@ import net.shibboleth.idp.authn.principal.IdPAttributePrincipal;
 import net.shibboleth.utilities.java.support.component.AbstractInitializableComponent;
 import net.shibboleth.utilities.java.support.component.ComponentInitializationException;
 import net.shibboleth.utilities.java.support.logic.Constraint;
-
-import org.slf4j.LoggerFactory;
+import net.shibboleth.utilities.java.support.primitive.DeprecationSupport;
+import net.shibboleth.utilities.java.support.primitive.DeprecationSupport.ObjectType;
 
 import com.google.common.base.Function;
 
@@ -49,7 +49,8 @@ public class IdPAttributePrincipalValuesFunction extends AbstractInitializableCo
      */
     @Deprecated public IdPAttributePrincipalValuesFunction(@Nonnull final String attrName) {
         attributeName = Constraint.isNotNull(attrName, "Attribute Name should be non-null");
-        LoggerFactory.getLogger(IdPAttributePrincipalValuesFunction.class).warn("Deprecated Constructor called");
+        DeprecationSupport.warn(ObjectType.METHOD, 
+                "IdPAttributePrincipalValuesFunction(String)", null, null);
     }
 
     /**  Constructor.  */
diff --git a/idp-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/dc/ldap/impl/ConnectionFactoryValidator.java b/idp-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/dc/ldap/impl/ConnectionFactoryValidator.java
index 0e4e85b..6f2065c 100644
--- a/idp-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/dc/ldap/impl/ConnectionFactoryValidator.java
+++ b/idp-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/dc/ldap/impl/ConnectionFactoryValidator.java
@@ -25,6 +25,8 @@ import net.shibboleth.utilities.java.support.component.AbstractInitializableComp
 import net.shibboleth.utilities.java.support.component.ComponentInitializationException;
 import net.shibboleth.utilities.java.support.logic.Constraint;
 import net.shibboleth.utilities.java.support.logic.ConstraintViolationException;
+import net.shibboleth.utilities.java.support.primitive.DeprecationSupport;
+import net.shibboleth.utilities.java.support.primitive.DeprecationSupport.ObjectType;
 
 import org.ldaptive.Connection;
 import org.ldaptive.ConnectionFactory;
@@ -54,6 +56,7 @@ public class ConnectionFactoryValidator extends AbstractInitializableComponent i
      * @deprecated - use the property setters
      */
     @Deprecated public ConnectionFactoryValidator(@Nonnull final ConnectionFactory factory) {
+        DeprecationSupport.warn(ObjectType.METHOD, "ConnectionFactoryValidator(ConnectionFactory)", null, null);
         LoggerFactory.getLogger(ConnectionFactoryValidator.class).warn("Using Deprecated Constructor");
         setConnectionFactory(factory);
         setThrowValidateError(true);
@@ -73,7 +76,8 @@ public class ConnectionFactoryValidator extends AbstractInitializableComponent i
      */
     @Deprecated public ConnectionFactoryValidator(@Nonnull final ConnectionFactory factory, 
             final boolean throwOnError) {
-        LoggerFactory.getLogger(ConnectionFactoryValidator.class).warn("Using Deprecated Constructor");
+        DeprecationSupport.warn(ObjectType.METHOD, "ConnectionFactoryValidator(ConnectionFactory, boolean)",
+                null, null);
         setConnectionFactory(factory);
         setThrowValidateError(throwOnError);
         try {
diff --git a/idp-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/dc/ldap/impl/ParameterizedExecutableSearchFilterBuilder.java b/idp-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/dc/ldap/impl/ParameterizedExecutableSearchFilterBuilder.java
index 39241d8..b285ed7 100644
--- a/idp-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/dc/ldap/impl/ParameterizedExecutableSearchFilterBuilder.java
+++ b/idp-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/dc/ldap/impl/ParameterizedExecutableSearchFilterBuilder.java
@@ -30,9 +30,10 @@ import net.shibboleth.utilities.java.support.component.ComponentInitializationEx
 import net.shibboleth.utilities.java.support.component.ComponentSupport;
 import net.shibboleth.utilities.java.support.logic.Constraint;
 import net.shibboleth.utilities.java.support.logic.ConstraintViolationException;
+import net.shibboleth.utilities.java.support.primitive.DeprecationSupport;
+import net.shibboleth.utilities.java.support.primitive.DeprecationSupport.ObjectType;
 
 import org.ldaptive.SearchFilter;
-import org.slf4j.LoggerFactory;
 
 /**
  * An {@link net.shibboleth.idp.attribute.resolver.dc.impl.ExecutableSearchBuilder} that generates the search filter to
@@ -51,7 +52,8 @@ public class ParameterizedExecutableSearchFilterBuilder extends AbstractExecutab
      * @deprecated - use the property setters
      */
     @Deprecated public ParameterizedExecutableSearchFilterBuilder(@Nonnull final String filter) {
-        LoggerFactory.getLogger(ParameterizedExecutableSearchFilterBuilder.class).warn("Using Deprecated Constructor");
+        DeprecationSupport.warn(ObjectType.METHOD, "ParameterizedExecutableSearchFilterBuilder(String)",
+                null, null);
         setSearchFilter(filter);
         try {
             initialize();
diff --git a/idp-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/dc/rdbms/impl/DataSourceValidator.java b/idp-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/dc/rdbms/impl/DataSourceValidator.java
index dc7e938..9fa2295 100644
--- a/idp-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/dc/rdbms/impl/DataSourceValidator.java
+++ b/idp-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/dc/rdbms/impl/DataSourceValidator.java
@@ -31,6 +31,8 @@ import net.shibboleth.utilities.java.support.component.ComponentInitializationEx
 import net.shibboleth.utilities.java.support.component.ComponentSupport;
 import net.shibboleth.utilities.java.support.logic.Constraint;
 import net.shibboleth.utilities.java.support.logic.ConstraintViolationException;
+import net.shibboleth.utilities.java.support.primitive.DeprecationSupport;
+import net.shibboleth.utilities.java.support.primitive.DeprecationSupport.ObjectType;
 
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -57,7 +59,7 @@ public class DataSourceValidator extends AbstractInitializableComponent implemen
      * @deprecated - use the property setters
      */
     @Deprecated public DataSourceValidator(final DataSource source) {
-        LoggerFactory.getLogger(DataSourceValidator.class).warn("Using Deprecated Constructor");
+        DeprecationSupport.warn(ObjectType.METHOD, "DataSourceValidator(DataSource)", null, null);
         dataSource = source;
         try {
             initialize();
@@ -74,7 +76,7 @@ public class DataSourceValidator extends AbstractInitializableComponent implemen
      * @deprecated - use the property setters
      */
     @Deprecated public DataSourceValidator(final DataSource source, final boolean throwOnError) {
-        LoggerFactory.getLogger(DataSourceValidator.class).warn("Using Deprecated Constructor");
+        DeprecationSupport.warn(ObjectType.METHOD, "DataSourceValidator(DataSource, boolean)", null, null);
         dataSource = source;
         throwOnValidateError = throwOnError;
         try {
diff --git a/idp-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/dc/rdbms/impl/FormatExecutableStatementBuilder.java b/idp-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/dc/rdbms/impl/FormatExecutableStatementBuilder.java
index 24fbb28..ed45389 100644
--- a/idp-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/dc/rdbms/impl/FormatExecutableStatementBuilder.java
+++ b/idp-attribute-resolver-impl/src/main/java/net/shibboleth/idp/attribute/resolver/dc/rdbms/impl/FormatExecutableStatementBuilder.java
@@ -27,9 +27,10 @@ import net.shibboleth.idp.attribute.IdPAttributeValue;
 import net.shibboleth.idp.attribute.resolver.context.AttributeResolutionContext;
 import net.shibboleth.utilities.java.support.component.ComponentInitializationException;
 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 org.apache.commons.lang.StringEscapeUtils;
-import org.slf4j.LoggerFactory;
 
 /**
  * An {@link net.shibboleth.idp.attribute.resolver.dc.impl.ExecutableSearchBuilder}. It generates the SQL statement to
@@ -48,7 +49,7 @@ public class FormatExecutableStatementBuilder extends AbstractExecutableStatemen
      * @deprecated - use the property setters
      */
     @Deprecated public FormatExecutableStatementBuilder(@Nonnull final String query) {
-        LoggerFactory.getLogger(FormatExecutableStatementBuilder.class).warn("Using Deprecated Constructor");
+        DeprecationSupport.warn(ObjectType.METHOD, "FormatExecutableStatementBuilder(String)", null, null);
         sqlQuery = Constraint.isNotNull(query, "SQL query can not be null");
     }
 
@@ -60,7 +61,7 @@ public class FormatExecutableStatementBuilder extends AbstractExecutableStatemen
      * @deprecated - use the property setters
      */
     @Deprecated public FormatExecutableStatementBuilder(@Nonnull final String query, @Nonnull final int timeout) {
-        LoggerFactory.getLogger(FormatExecutableStatementBuilder.class).warn("Using Deprecated Constructor");
+        DeprecationSupport.warn(ObjectType.METHOD, "FormatExecutableStatementBuilder(String, int)", null, null);
         sqlQuery = Constraint.isNotNull(query, "SQL query can not be null");
         setQueryTimeout((int) Constraint.isGreaterThanOrEqual(0, timeout, "Query timeout must be greater than zero"));
     }
diff --git a/idp-attribute-resolver-spring/src/main/java/net/shibboleth/idp/attribute/resolver/spring/dc/impl/AbstractDataConnectorParser.java b/idp-attribute-resolver-spring/src/main/java/net/shibboleth/idp/attribute/resolver/spring/dc/impl/AbstractDataConnectorParser.java
index cf3c714..4ccba82 100644
--- a/idp-attribute-resolver-spring/src/main/java/net/shibboleth/idp/attribute/resolver/spring/dc/impl/AbstractDataConnectorParser.java
+++ b/idp-attribute-resolver-spring/src/main/java/net/shibboleth/idp/attribute/resolver/spring/dc/impl/AbstractDataConnectorParser.java
@@ -17,6 +17,9 @@
 
 package net.shibboleth.idp.attribute.resolver.spring.dc.impl;
 
+import net.shibboleth.utilities.java.support.primitive.DeprecationSupport;
+import net.shibboleth.utilities.java.support.primitive.DeprecationSupport.ObjectType;
+
 /**
  * Place holder to cover up the fact that we went a release 
  * with {@link net.shibboleth.idp.attribute.resolver.spring.dc.AbstractDataConnectorParser} in the impl package.
@@ -25,4 +28,12 @@ package net.shibboleth.idp.attribute.resolver.spring.dc.impl;
 @Deprecated
 public abstract class AbstractDataConnectorParser 
        extends net.shibboleth.idp.attribute.resolver.spring.dc.AbstractDataConnectorParser {
+    
+    /**
+     * Constructor.  Added purely to generate the deprecation warning.
+     */
+    public AbstractDataConnectorParser() {
+        super();
+        DeprecationSupport.warn(ObjectType.CLASS, this.getClass().getName(), null, super.getClass().getName());
+    }
 }
diff --git a/idp-attribute-resolver-spring/src/main/java/net/shibboleth/idp/attribute/resolver/spring/dc/ldap/impl/LDAPDataConnectorParser.java b/idp-attribute-resolver-spring/src/main/java/net/shibboleth/idp/attribute/resolver/spring/dc/ldap/impl/LDAPDataConnectorParser.java
index 1fce93e..a4145bf 100644
--- a/idp-attribute-resolver-spring/src/main/java/net/shibboleth/idp/attribute/resolver/spring/dc/ldap/impl/LDAPDataConnectorParser.java
+++ b/idp-attribute-resolver-spring/src/main/java/net/shibboleth/idp/attribute/resolver/spring/dc/ldap/impl/LDAPDataConnectorParser.java
@@ -36,6 +36,8 @@ import net.shibboleth.idp.attribute.resolver.spring.impl.AttributeResolverNamesp
 import net.shibboleth.idp.profile.spring.factory.BasicX509CredentialFactoryBean;
 import net.shibboleth.utilities.java.support.annotation.Duration;
 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.AttributeSupport;
 import net.shibboleth.utilities.java.support.xml.ElementSupport;
@@ -260,9 +262,9 @@ public class LDAPDataConnectorParser extends AbstractWarningDataConnectorParser
             Constraint.isNotNull(config, "LDAPDirectory element cannot be null");
             configElement = config;
             logPrefix = prefix; 
-            // warn about deprecated schema
+            // warn about deprecated (rmeoved?) attribute
             if (AttributeSupport.hasAttribute(config, new QName("mergeResults"))) {
-                log.warn("{} mergeResults property no longer supported and should be removed", getLogPrefix());
+                DeprecationSupport.warn(ObjectType.ATTRIBUTE,  "mergeResults", prefix, null);
             }
         }
 
diff --git a/idp-attribute-resolver-spring/src/main/java/net/shibboleth/idp/attribute/resolver/spring/dc/rdbms/impl/RDBMSDataConnectorParser.java b/idp-attribute-resolver-spring/src/main/java/net/shibboleth/idp/attribute/resolver/spring/dc/rdbms/impl/RDBMSDataConnectorParser.java
index 3417cad..32c89e9 100644
--- a/idp-attribute-resolver-spring/src/main/java/net/shibboleth/idp/attribute/resolver/spring/dc/rdbms/impl/RDBMSDataConnectorParser.java
+++ b/idp-attribute-resolver-spring/src/main/java/net/shibboleth/idp/attribute/resolver/spring/dc/rdbms/impl/RDBMSDataConnectorParser.java
@@ -35,6 +35,8 @@ import net.shibboleth.idp.attribute.resolver.spring.impl.AttributeResolverNamesp
 import net.shibboleth.utilities.java.support.annotation.Duration;
 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.AttributeSupport;
 import net.shibboleth.utilities.java.support.xml.ElementSupport;
@@ -163,14 +165,12 @@ public class RDBMSDataConnectorParser extends AbstractWarningDataConnectorParser
             Constraint.isNotNull(config, "RelationalDatabase element cannot be null");
             configElement = config;
             logPrefix = prefix;
-            // warn about deprecated schema
+            // warn about deprecated (removed?) attributes
             if (AttributeSupport.hasAttribute(config, new QName("queryUsesStoredProcedure"))) {
-                log.warn("{} queryUsesStoredProcedure property no longer supported and should be removed",
-                        getLogPrefix());
+                DeprecationSupport.warn(ObjectType.ATTRIBUTE,  "queryUsesStoredProcedure", prefix, null);
             }
             if (AttributeSupport.hasAttribute(config, new QName("cacheResults"))) {
-                log.warn("{} cacheResults property no longer supported.  Use the ResultCache element instead",
-                        getLogPrefix());
+                DeprecationSupport.warn(ObjectType.ATTRIBUTE,  "cacheResults", prefix, "<ResultCache>");
             }
 
         }
diff --git a/idp-attribute-resolver-spring/src/main/java/net/shibboleth/idp/attribute/resolver/spring/impl/AttributeResolverParser.java b/idp-attribute-resolver-spring/src/main/java/net/shibboleth/idp/attribute/resolver/spring/impl/AttributeResolverParser.java
index 99e6d16..d29b2b2 100644
--- a/idp-attribute-resolver-spring/src/main/java/net/shibboleth/idp/attribute/resolver/spring/impl/AttributeResolverParser.java
+++ b/idp-attribute-resolver-spring/src/main/java/net/shibboleth/idp/attribute/resolver/spring/impl/AttributeResolverParser.java
@@ -27,6 +27,8 @@ import net.shibboleth.ext.spring.util.SpringSupport;
 import net.shibboleth.idp.attribute.resolver.spring.ad.BaseAttributeDefinitionParser;
 import net.shibboleth.idp.attribute.resolver.spring.dc.AbstractDataConnectorParser;
 import net.shibboleth.idp.attribute.resolver.spring.enc.BaseAttributeEncoderParser;
+import net.shibboleth.utilities.java.support.primitive.DeprecationSupport;
+import net.shibboleth.utilities.java.support.primitive.DeprecationSupport.ObjectType;
 import net.shibboleth.utilities.java.support.xml.ElementSupport;
 
 import org.slf4j.Logger;
@@ -75,9 +77,9 @@ public class AttributeResolverParser implements BeanDefinitionParser {
 
         children = configChildren.get(new QName(AttributeResolverNamespaceHandler.NAMESPACE, "PrincipalConnector"));
         if (null != children && !children.isEmpty()) {
-            log.warn("{} contains deprecated PrincipalConnector elements.  "+
-                    "See https://wiki.shibboleth.net/confluence/display/IDP30/NameIDConsumptionConfiguration",
-                    context.getReaderContext().getResource().getDescription());
+            DeprecationSupport.warn(ObjectType.ELEMENT, "<PrincipalConnector>", 
+                    context.getReaderContext().getResource().getDescription(), 
+                    "(https://wiki.shibboleth.net/confluence/display/IDP30/NameIDConsumptionConfiguration)");
         }
         SpringSupport.parseCustomElements(children, context);
         return null;
diff --git a/idp-attribute-resolver-spring/src/main/java/net/shibboleth/idp/attribute/resolver/spring/pc/impl/AbstractPrincipalConnectorParser.java b/idp-attribute-resolver-spring/src/main/java/net/shibboleth/idp/attribute/resolver/spring/pc/impl/AbstractPrincipalConnectorParser.java
index bfc2964..8aee138 100644
--- a/idp-attribute-resolver-spring/src/main/java/net/shibboleth/idp/attribute/resolver/spring/pc/impl/AbstractPrincipalConnectorParser.java
+++ b/idp-attribute-resolver-spring/src/main/java/net/shibboleth/idp/attribute/resolver/spring/pc/impl/AbstractPrincipalConnectorParser.java
@@ -24,6 +24,8 @@ import javax.xml.namespace.QName;
 
 import net.shibboleth.idp.attribute.resolver.spring.impl.AttributeResolverNamespaceHandler;
 import net.shibboleth.idp.saml.attribute.principalconnector.impl.PrincipalConnector;
+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;
 
@@ -58,7 +60,9 @@ public abstract class AbstractPrincipalConnectorParser extends AbstractSingleBea
     @Override protected void doParse(@Nonnull final Element config, @Nonnull final ParserContext parserContext,
             @Nonnull final BeanDefinitionBuilder builder) {
         
-        log.warn("PrincipalConnector feature is DEPRECATED in favor of subject c14n flows");
+        DeprecationSupport.warn(ObjectType.ELEMENT, "<PrincipalConnector>", 
+                parserContext.getReaderContext().getResource().getDescription(), 
+                "c14n");
         
         builder.setInitMethodName("initialize");
         builder.setDestroyMethodName("destroy");

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


More information about the commits mailing list