[java-identity-provider COMMIT] /trunk/idp-attribute-resolver-api/src/main/java/net/shibboleth/idp/attribute/resolver...

noreply at shibboleth.net noreply at shibboleth.net
Wed Aug 14 06:34:26 EDT 2013


Author: rdw
Date: Wed Aug 14 06:34:26 2013
New Revision: 4685

URL: http://svn.shibboleth.net/view/java-identity-provider?rev=4685&view=rev
Log:
IDP-273 partial cleanup

Modified:
    trunk/idp-attribute-resolver-api/src/main/java/net/shibboleth/idp/attribute/resolver/AttributeResolver.java

Modified: trunk/idp-attribute-resolver-api/src/main/java/net/shibboleth/idp/attribute/resolver/AttributeResolver.java
URL: http://svn.shibboleth.net/view/java-identity-provider/trunk/idp-attribute-resolver-api/src/main/java/net/shibboleth/idp/attribute/resolver/AttributeResolver.java?rev=4685&r1=4684&r2=4685&view=diff
==============================================================================
--- trunk/idp-attribute-resolver-api/src/main/java/net/shibboleth/idp/attribute/resolver/AttributeResolver.java (original)
+++ trunk/idp-attribute-resolver-api/src/main/java/net/shibboleth/idp/attribute/resolver/AttributeResolver.java Wed Aug 14 06:34:26 2013
@@ -18,6 +18,7 @@
 package net.shibboleth.idp.attribute.resolver;
 
 import java.util.Collection;
+import java.util.Collections;
 import java.util.HashMap;
 import java.util.HashSet;
 import java.util.Map;
@@ -67,7 +68,7 @@
     private final Map<String, BaseDataConnector> dataConnectors;
 
     /** cache for the log prefix - to save multiple recalculations. */
-    private String logPrefix;
+    private final String logPrefix;
 
     /**
      * Constructor.
@@ -83,8 +84,9 @@
 
         logPrefix = new StringBuilder("Attribute Resolver '").append(getId()).append("':").toString();
 
-        HashMap<String, BaseAttributeDefinition> checkedDefinitions = new HashMap<String, BaseAttributeDefinition>();
+        Map<String, BaseAttributeDefinition> checkedDefinitions;
         if (definitions != null) {
+            checkedDefinitions = new HashMap<String, BaseAttributeDefinition>(definitions.size());
             for (BaseAttributeDefinition definition : definitions) {
                 if (definition != null) {
                     if (checkedDefinitions.containsKey(definition.getId())) {
@@ -94,11 +96,14 @@
                     checkedDefinitions.put(definition.getId(), definition);
                 }
             }
+        } else {
+            checkedDefinitions = Collections.EMPTY_MAP;
         }
         attributeDefinitions = ImmutableMap.copyOf(checkedDefinitions);
 
-        HashMap<String, BaseDataConnector> checkedConnectors = new HashMap<String, BaseDataConnector>();
+        Map<String, BaseDataConnector> checkedConnectors;
         if (connectors != null) {
+            checkedConnectors = new HashMap<String, BaseDataConnector>(connectors.size());
             for (BaseDataConnector connector : connectors) {
                 if (connector != null) {
                     if (checkedConnectors.containsKey(connector.getId())) {
@@ -108,6 +113,8 @@
                     checkedConnectors.put(connector.getId(), connector);
                 }
             }
+        } else {
+            checkedConnectors = Collections.EMPTY_MAP;
         }
         dataConnectors = ImmutableMap.copyOf(checkedConnectors);
     }
@@ -169,6 +176,17 @@
         }
     }
 
+    /** {@inheritDoc} */
+    protected void doDestroy() {
+        for (BaseResolverPlugin plugin : attributeDefinitions.values()) {
+            plugin.destroy();
+        }
+
+        for (BaseResolverPlugin plugin : dataConnectors.values()) {
+            plugin.destroy();
+        }
+    }
+
     /**
      * Resolves the attribute for the give request. Note, if attributes are requested,
      * {@link AttributeResolutionContext#getRequestedAttributes()}, the resolver will <strong>not</strong> fail if they
@@ -210,17 +228,6 @@
         return;
     }
 
-    /** {@inheritDoc} */
-    protected void doDestroy() {
-        for (BaseResolverPlugin plugin : attributeDefinitions.values()) {
-            plugin.destroy();
-        }
-
-        for (BaseResolverPlugin plugin : dataConnectors.values()) {
-            plugin.destroy();
-        }
-    }
-
     /**
      * Gets the list of attributes, identified by IDs, that should be resolved. If the
      * {@link AttributeResolutionContext#getRequestedAttributes()} is not empty then those attributes are the ones to be
@@ -282,7 +289,6 @@
 
         if (null == resolvedAttribute) {
             log.debug("{} attribute definition {} produced no attribute", logPrefix, attributeId);
-            // TODO why would we record this?
         } else {
             log.debug("{} attribute definition {} produced an attribute with {} values", new Object[] {logPrefix,
                     attributeId, resolvedAttribute.getValues().size(),});



More information about the commits mailing list