You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by or...@apache.org on 2013/10/05 02:26:25 UTC

svn commit: r1529360 - in /qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/configuration/startup: PreferencesProviderRecoverer.java RecovererHelper.java

Author: orudyy
Date: Sat Oct  5 00:26:24 2013
New Revision: 1529360

URL: http://svn.apache.org/r1529360
Log:
QPID-5138: Optimize code in preferences provider recoverer

Modified:
    qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/configuration/startup/PreferencesProviderRecoverer.java
    qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/configuration/startup/RecovererHelper.java

Modified: qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/configuration/startup/PreferencesProviderRecoverer.java
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/configuration/startup/PreferencesProviderRecoverer.java?rev=1529360&r1=1529359&r2=1529360&view=diff
==============================================================================
--- qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/configuration/startup/PreferencesProviderRecoverer.java (original)
+++ qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/configuration/startup/PreferencesProviderRecoverer.java Sat Oct  5 00:26:24 2013
@@ -38,19 +38,7 @@ public class PreferencesProviderRecovere
     public PreferencesProvider create(RecovererProvider recovererProvider, ConfigurationEntry entry,
             ConfiguredObject... parents)
     {
-        if (parents == null || parents.length == 0)
-        {
-            throw new IllegalArgumentException("AuthenticationProvider parent is not passed!");
-        }
-        if (parents.length != 1)
-        {
-            throw new IllegalArgumentException("Only one parent is expected!");
-        }
-        if (!(parents[0] instanceof AuthenticationProvider))
-        {
-            throw new IllegalArgumentException("Parent is not a AuthenticationProvider");
-        }
-        AuthenticationProvider authenticationProvider = (AuthenticationProvider)parents[0];
+        AuthenticationProvider authenticationProvider = RecovererHelper.verifyOnlyParentIsOfType(AuthenticationProvider.class, parents);
         Map<String, Object> attributes = entry.getAttributes();
         String type = MapValueConverter.getStringAttribute(PreferencesProvider.TYPE, attributes);
         PreferencesProviderFactory factory = PreferencesProviderFactory.FACTORIES.get(type);

Modified: qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/configuration/startup/RecovererHelper.java
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/configuration/startup/RecovererHelper.java?rev=1529360&r1=1529359&r2=1529360&view=diff
==============================================================================
--- qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/configuration/startup/RecovererHelper.java (original)
+++ qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/configuration/startup/RecovererHelper.java Sat Oct  5 00:26:24 2013
@@ -27,18 +27,28 @@ public class RecovererHelper
 {
     public static Broker verifyOnlyBrokerIsParent(ConfiguredObject... parents)
     {
+        return verifyOnlyParentIsOfType(Broker.class, parents);
+    }
+
+    @SuppressWarnings("unchecked")
+    public static <T extends ConfiguredObject> T verifyOnlyParentIsOfType(Class<T> parentClass, ConfiguredObject... parents)
+    {
+        if (parentClass == null)
+        {
+            throw new IllegalArgumentException("Parent class is not specified!");
+        }
         if (parents == null || parents.length == 0)
         {
-            throw new IllegalArgumentException("Broker parent is not passed!");
+            throw new IllegalArgumentException("Parent of type " + parentClass.getSimpleName() +" is not passed!");
         }
         if (parents.length != 1)
         {
             throw new IllegalArgumentException("Only one parent is expected!");
         }
-        if (!(parents[0] instanceof Broker))
+        if (!parentClass.isAssignableFrom(parents[0].getClass()))
         {
-            throw new IllegalArgumentException("Parent is not a broker");
+            throw new IllegalArgumentException("Parent is not instance of " + parentClass.getSimpleName());
         }
-        return (Broker)parents[0];
+        return (T)parents[0];
     }
 }



---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org