[java-identity-provider] 04/06: IDP-1121 Remove deprecated JNDIConnectionProperty

Rod Widdowson rdw at steadingsoftware.com
Wed Apr 3 02:29:48 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=98cb1f42925bdbf9a96193bc880fdb3bf3536235

commit 98cb1f42925bdbf9a96193bc880fdb3bf3536235
Author: Rod Widdowson <rdw at steadingsoftware.com>
AuthorDate: Tue Apr 2 16:42:22 2019 +0100

    IDP-1121 Remove deprecated JNDIConnectionProperty
    
    https://issues.shibboleth.net/jira/browse/IDP-1121
---
 .../spring/dc/impl/ManagedConnectionParser.java     | 21 ++-------------------
 .../resolver/spring/dc/ManagedConnectionTest.java   |  4 +---
 .../dc/resolver/containerManagedConnection.xml      |  5 +----
 .../schema/shibboleth-attribute-resolver.xsd        | 10 ----------
 4 files changed, 4 insertions(+), 36 deletions(-)

diff --git a/idp-attribute-resolver-spring/src/main/java/net/shibboleth/idp/attribute/resolver/spring/dc/impl/ManagedConnectionParser.java b/idp-attribute-resolver-spring/src/main/java/net/shibboleth/idp/attribute/resolver/spring/dc/impl/ManagedConnectionParser.java
index 490259d..a5a6f0e 100644
--- a/idp-attribute-resolver-spring/src/main/java/net/shibboleth/idp/attribute/resolver/spring/dc/impl/ManagedConnectionParser.java
+++ b/idp-attribute-resolver-spring/src/main/java/net/shibboleth/idp/attribute/resolver/spring/dc/impl/ManagedConnectionParser.java
@@ -17,9 +17,7 @@
 
 package net.shibboleth.idp.attribute.resolver.spring.dc.impl;
 
-import java.util.Hashtable;
 import java.util.List;
-import java.util.Map;
 
 import javax.annotation.Nonnull;
 import javax.annotation.Nullable;
@@ -34,13 +32,10 @@ import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.BeanCreationException;
 import org.springframework.beans.factory.config.BeanDefinition;
 import org.springframework.beans.factory.support.BeanDefinitionBuilder;
-import org.springframework.beans.factory.support.ManagedMap;
 import org.w3c.dom.Element;
 
 import net.shibboleth.idp.attribute.resolver.spring.impl.AttributeResolverNamespaceHandler;
 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;
@@ -117,19 +112,8 @@ public class ManagedConnectionParser {
         final String resourceName =
                 AttributeSupport.getAttributeValue(containerManagedElement, new QName("resourceName"));
 
-        final ManagedMap<String, String> props = new ManagedMap<>();
-        final List<Element> elements = ElementSupport.getChildElementsByTagNameNS(containerManagedElement,
-                AttributeResolverNamespaceHandler.NAMESPACE, "JNDIConnectionProperty");
-        if (!elements.isEmpty()) {
-            DeprecationSupport.warnOnce(ObjectType.ELEMENT, "<JNDIConnectionProperty>", null, null);
-            for (final Element e : elements) {
-                props.put(AttributeSupport.getAttributeValue(e, new QName("name")),
-                        AttributeSupport.getAttributeValue(e, new QName("value")));
-            }
-        }
         final BeanDefinitionBuilder dataSource =
                 BeanDefinitionBuilder.rootBeanDefinition(ManagedConnectionParser.class, "buildDataSource");
-        dataSource.addConstructorArgValue(props);
         dataSource.addConstructorArgValue(resourceName);
         return dataSource.getBeanDefinition();
     }
@@ -185,14 +169,13 @@ public class ManagedConnectionParser {
     /**
      * Factory builder a container managed datasource.
      *
-     * @param props to create an {@link InitialContext} with
      * @param resourceName of the data source
      *
      * @return data source or null if the data source cannot be looked up
      */
-    @Nullable public static DataSource buildDataSource(final Map<String, String> props, final String resourceName) {
+    @Nullable public static DataSource buildDataSource(final String resourceName) {
         try {
-            final InitialContext initCtx = new InitialContext(new Hashtable<>(props));
+            final InitialContext initCtx = new InitialContext();
             final DataSource dataSource = (DataSource) initCtx.lookup(resourceName);
             return dataSource;
         } catch (final NamingException e) {
diff --git a/idp-attribute-resolver-spring/src/test/java/net/shibboleth/idp/attribute/resolver/spring/dc/ManagedConnectionTest.java b/idp-attribute-resolver-spring/src/test/java/net/shibboleth/idp/attribute/resolver/spring/dc/ManagedConnectionTest.java
index b972537..fda5ff1 100644
--- a/idp-attribute-resolver-spring/src/test/java/net/shibboleth/idp/attribute/resolver/spring/dc/ManagedConnectionTest.java
+++ b/idp-attribute-resolver-spring/src/test/java/net/shibboleth/idp/attribute/resolver/spring/dc/ManagedConnectionTest.java
@@ -57,9 +57,7 @@ public class ManagedConnectionTest extends BaseAttributeDefinitionParserTest {
 
         final PairwiseIdDataConnector connector = getDataConnector("resolver/containerManagedConnection.xml", PairwiseIdDataConnector.class);
         MyDataSource source = (MyDataSource) ((JDBCPairwiseIdStore) connector.getPairwiseIdStore()).getDataSource();
-        assertEquals(source.getEnvironment().size(), 2);
-        assertEquals(source.getEnvironment().get("foo"), "Bar");
-        assertEquals(source.getEnvironment().get("yellow"), "green");
+        assertEquals(source.getEnvironment().size(), 0);
     }
 
     /** Hard wiring for JNDI.  This is an {@link InitialContextFactoryBuilder} Its only job is to return a {@link MyContextFactory} */
diff --git a/idp-attribute-resolver-spring/src/test/resources/net/shibboleth/idp/attribute/resolver/spring/dc/resolver/containerManagedConnection.xml b/idp-attribute-resolver-spring/src/test/resources/net/shibboleth/idp/attribute/resolver/spring/dc/resolver/containerManagedConnection.xml
index b455431..97ca8a8 100644
--- a/idp-attribute-resolver-spring/src/test/resources/net/shibboleth/idp/attribute/resolver/spring/dc/resolver/containerManagedConnection.xml
+++ b/idp-attribute-resolver-spring/src/test/resources/net/shibboleth/idp/attribute/resolver/spring/dc/resolver/containerManagedConnection.xml
@@ -10,10 +10,7 @@
 	salt="abcdefghijklmnopqrst"
 	
 	xsi:schemaLocation="urn:mace:shibboleth:2.0:resolver http://shibboleth.net/schema/idp/shibboleth-attribute-resolver.xsd">
-    <ContainerManagedConnection resourceName="myConnnector">
-	    <JNDIConnectionProperty name="foo" value="Bar"/>
-    	<JNDIConnectionProperty name="yellow" value="green"/>
-    </ContainerManagedConnection>
+    <ContainerManagedConnection resourceName="myConnnector"/>
                
 	<InputAttributeDefinition ref="TheAttributeRemainsTheSame"/>
 </DataConnector>
\ No newline at end of file
diff --git a/idp-schema/src/main/resources/schema/shibboleth-attribute-resolver.xsd b/idp-schema/src/main/resources/schema/shibboleth-attribute-resolver.xsd
index e6adee4..2063adb 100644
--- a/idp-schema/src/main/resources/schema/shibboleth-attribute-resolver.xsd
+++ b/idp-schema/src/main/resources/schema/shibboleth-attribute-resolver.xsd
@@ -1652,16 +1652,6 @@
     </element>
 
     <complexType name="ContainerManagedConnectionType">
-        <sequence>
-            <element name="JNDIConnectionProperty" type="resolver:PropertyType" minOccurs="0" maxOccurs="unbounded">
-                <annotation>
-                    <documentation>
-                        A property used when constructing a JNDI initial context which in turn is used to lookup the
-                        database DataSource.
-                    </documentation>
-                </annotation>
-            </element>
-        </sequence>
         <attribute name="resourceName" type="string" use="required">
             <annotation>
                 <documentation>The resource name the DataSource is bound to in the JNDI tree.</documentation>

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


More information about the commits mailing list