Author: kwall
Date: Fri Dec 23 10:42:25 2016
New Revision: 1775810

URL: http://svn.apache.org/viewvc?rev=1775810&view=rev
Log:
QPID-6028 : Refactor ACO constructors etc to accept only a single parent

Modified:
    
qpid/java/trunk/bdbstore/src/main/java/org/apache/qpid/server/virtualhost/berkeleydb/BDBHAReplicaVirtualHostImpl.java
    
qpid/java/trunk/bdbstore/src/main/java/org/apache/qpid/server/virtualhostnode/berkeleydb/BDBHARemoteReplicationNodeImpl.java
    
qpid/java/trunk/broker-codegen/src/main/java/org/apache/qpid/server/model/ConfiguredObjectFactoryGenerator.java
    
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/exchange/AbstractExchange.java
    
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/model/AbstractConfiguredObject.java
    
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/model/AbstractConfiguredObjectTypeFactory.java
    
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/model/AbstractContainer.java
    
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/model/AbstractSystemConfig.java
    
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/model/AbstractUnresolvedObject.java
    
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/model/BrokerImpl.java
    
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/model/ConfiguredObjectFactory.java
    
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/model/ConfiguredObjectFactoryImpl.java
    
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/model/adapter/AbstractPluginAdapter.java
    
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/model/adapter/FileBasedGroupProviderImpl.java
    
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/model/adapter/SessionAdapter.java
    
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/model/port/AbstractPort.java
    
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/model/port/PortFactory.java
    
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/plugin/ConfiguredObjectTypeFactory.java
    
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/queue/AbstractQueue.java
    
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/queue/QueueConsumerImpl.java
    
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/queue/QueueFactory.java
    
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/security/AbstractKeyStore.java
    
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/security/AllowAllAccessControlProviderImpl.java
    
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/security/AutoGeneratedSelfSignedKeyStoreImpl.java
    
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/security/FileTrustStoreImpl.java
    
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/security/ManagedPeerCertificateTrustStoreImpl.java
    
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/security/NonJavaTrustStoreImpl.java
    
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/security/SiteSpecificTrustStoreImpl.java
    
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/security/access/AbstractAccessControlProvider.java
    
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/security/auth/manager/AbstractAuthenticationManager.java
    
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/security/auth/manager/ManagedUser.java
    
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/security/auth/manager/PrincipalDatabaseAuthenticationManager.java
    
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/security/group/GroupImpl.java
    
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/security/group/GroupMemberImpl.java
    
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/security/group/GroupProviderImpl.java
    
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/security/group/cloudfoundry/CloudFoundryDashboardManagementGroupProviderImpl.java
    
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/store/GenericRecoverer.java
    
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/store/UnresolvedConfiguredObject.java
    
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/transport/AbstractAMQPConnection.java
    
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/virtualhost/AbstractNonConnectionAcceptingVirtualHost.java
    
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/virtualhost/AbstractVirtualHost.java
    
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/virtualhostalias/AbstractVirtualHostAlias.java
    
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/virtualhostnode/AbstractVirtualHostNode.java
    
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/virtualhostnode/RedirectingVirtualHostImpl.java
    
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/virtualhostnode/RedirectingVirtualHostNodeImpl.java
    
qpid/java/trunk/broker-core/src/test/java/org/apache/qpid/server/model/AttributeValueConverterTest.java
    
qpid/java/trunk/broker-core/src/test/java/org/apache/qpid/server/model/testmodels/hierarchy/AbstractConfiguredObjectTest.java
    
qpid/java/trunk/broker-core/src/test/java/org/apache/qpid/server/model/testmodels/hierarchy/AncestorAttributeResolverTest.java
    
qpid/java/trunk/broker-core/src/test/java/org/apache/qpid/server/model/testmodels/hierarchy/ConfiguredObjectTypeRegistryTest.java
    
qpid/java/trunk/broker-core/src/test/java/org/apache/qpid/server/model/testmodels/hierarchy/TestAbstractEngineImpl.java
    
qpid/java/trunk/broker-core/src/test/java/org/apache/qpid/server/model/testmodels/hierarchy/TestElecEngineImpl.java
    
qpid/java/trunk/broker-core/src/test/java/org/apache/qpid/server/model/testmodels/hierarchy/TestHybridEngineImpl.java
    
qpid/java/trunk/broker-core/src/test/java/org/apache/qpid/server/model/testmodels/hierarchy/TestKitCarImpl.java
    
qpid/java/trunk/broker-core/src/test/java/org/apache/qpid/server/model/testmodels/hierarchy/TestPetrolEngineImpl.java
    
qpid/java/trunk/broker-core/src/test/java/org/apache/qpid/server/model/testmodels/hierarchy/TestStandardCarImpl.java
    
qpid/java/trunk/broker-core/src/test/java/org/apache/qpid/server/model/testmodels/lifecycle/TestConfiguredObject.java
    
qpid/java/trunk/broker-core/src/test/java/org/apache/qpid/server/model/testmodels/singleton/AbstractConfiguredObjectTest.java
    
qpid/java/trunk/broker-core/src/test/java/org/apache/qpid/server/model/testmodels/singleton/PreferencesTest.java
    
qpid/java/trunk/broker-core/src/test/java/org/apache/qpid/server/model/testmodels/singleton/TestSingletonImpl.java
    
qpid/java/trunk/broker-core/src/test/java/org/apache/qpid/server/store/preferences/PreferencesRecovererTest.java
    
qpid/java/trunk/broker-core/src/test/java/org/apache/qpid/server/virtualhostnode/TestVirtualHostNodeFactory.java
    
qpid/java/trunk/broker-plugins/logging-logback/src/main/java/org/apache/qpid/server/logging/logback/AbstractLogger.java
    
qpid/java/trunk/broker-plugins/logging-logback/src/main/java/org/apache/qpid/server/logging/logback/AbstractNameAndLevelLogInclusionRule.java
    
qpid/java/trunk/broker-plugins/logging-logback/src/main/java/org/apache/qpid/server/logging/logback/AbstractPredicateLogInclusionRule.java
    
qpid/java/trunk/broker-plugins/logging-logback/src/main/java/org/apache/qpid/server/logging/logback/BrokerNameAndLevelLogInclusionRuleImpl.java
    
qpid/java/trunk/broker-plugins/logging-logback/src/main/java/org/apache/qpid/server/logging/logback/BrokerUserOrConnectionLogInclusionRuleImpl.java
    
qpid/java/trunk/broker-plugins/logging-logback/src/main/java/org/apache/qpid/server/logging/logback/VirtualHostNameAndLevelLogInclusionRuleImpl.java
    
qpid/java/trunk/broker-plugins/logging-logback/src/main/java/org/apache/qpid/server/logging/logback/VirtualHostUserOrConnectionLogInclusionRuleImpl.java
    
qpid/java/trunk/broker-plugins/management-http/src/test/java/org/apache/qpid/server/management/plugin/servlet/rest/ConfiguredObjectToMapConverterTest.java

Modified: 
qpid/java/trunk/bdbstore/src/main/java/org/apache/qpid/server/virtualhost/berkeleydb/BDBHAReplicaVirtualHostImpl.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/bdbstore/src/main/java/org/apache/qpid/server/virtualhost/berkeleydb/BDBHAReplicaVirtualHostImpl.java?rev=1775810&r1=1775809&r2=1775810&view=diff
==============================================================================
--- 
qpid/java/trunk/bdbstore/src/main/java/org/apache/qpid/server/virtualhost/berkeleydb/BDBHAReplicaVirtualHostImpl.java
 (original)
+++ 
qpid/java/trunk/bdbstore/src/main/java/org/apache/qpid/server/virtualhost/berkeleydb/BDBHAReplicaVirtualHostImpl.java
 Fri Dec 23 10:42:25 2016
@@ -40,7 +40,7 @@ public class BDBHAReplicaVirtualHostImpl
     @ManagedObjectFactoryConstructor(conditionallyAvailable = true, condition 
= "org.apache.qpid.server.JECheck#isAvailable()")
     public BDBHAReplicaVirtualHostImpl(final Map<String, Object> attributes, 
VirtualHostNode<?> virtualHostNode)
     {
-        super(parentsMap(virtualHostNode), attributes);
+        super(virtualHostNode, attributes);
 
     }
 

Modified: 
qpid/java/trunk/bdbstore/src/main/java/org/apache/qpid/server/virtualhostnode/berkeleydb/BDBHARemoteReplicationNodeImpl.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/bdbstore/src/main/java/org/apache/qpid/server/virtualhostnode/berkeleydb/BDBHARemoteReplicationNodeImpl.java?rev=1775810&r1=1775809&r2=1775810&view=diff
==============================================================================
--- 
qpid/java/trunk/bdbstore/src/main/java/org/apache/qpid/server/virtualhostnode/berkeleydb/BDBHARemoteReplicationNodeImpl.java
 (original)
+++ 
qpid/java/trunk/bdbstore/src/main/java/org/apache/qpid/server/virtualhostnode/berkeleydb/BDBHARemoteReplicationNodeImpl.java
 Fri Dec 23 10:42:25 2016
@@ -36,7 +36,6 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 import org.apache.qpid.server.logging.EventLogger;
-import org.apache.qpid.server.logging.OperationLogMessage;
 import org.apache.qpid.server.logging.messages.HighAvailabilityMessages;
 import org.apache.qpid.server.logging.subjects.BDBHAVirtualHostNodeLogSubject;
 import org.apache.qpid.server.logging.subjects.GroupLogSubject;
@@ -73,7 +72,7 @@ public class BDBHARemoteReplicationNodeI
 
     public BDBHARemoteReplicationNodeImpl(BDBHAVirtualHostNode<?> 
virtualHostNode, Map<String, Object> attributes, ReplicatedEnvironmentFacade 
replicatedEnvironmentFacade)
     {
-        super(parentsMap(virtualHostNode), attributes);
+        super(virtualHostNode, attributes);
         _broker = (Broker<?>) virtualHostNode.getParent();
         _address = (String)attributes.get(ADDRESS);
         _replicatedEnvironmentFacade = replicatedEnvironmentFacade;

Modified: 
qpid/java/trunk/broker-codegen/src/main/java/org/apache/qpid/server/model/ConfiguredObjectFactoryGenerator.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/broker-codegen/src/main/java/org/apache/qpid/server/model/ConfiguredObjectFactoryGenerator.java?rev=1775810&r1=1775809&r2=1775810&view=diff
==============================================================================
--- 
qpid/java/trunk/broker-codegen/src/main/java/org/apache/qpid/server/model/ConfiguredObjectFactoryGenerator.java
 (original)
+++ 
qpid/java/trunk/broker-codegen/src/main/java/org/apache/qpid/server/model/ConfiguredObjectFactoryGenerator.java
 Fri Dec 23 10:42:25 2016
@@ -585,7 +585,7 @@ public class ConfiguredObjectFactoryGene
             pw.println("    }");
             pw.println();
             pw.println("    @Override");
-            pw.println("    protected "+objectSimpleName+" 
createInstance(final Map<String, Object> attributes, final 
ConfiguredObject<?>... parents)");
+            pw.println("    protected "+objectSimpleName+" 
createInstance(final Map<String, Object> attributes, final ConfiguredObject<?> 
parent)");
             pw.println("    {");
             pw.print("        return new "+objectSimpleName+ 
"WithAccessChecking(attributes");
             boolean first = true;
@@ -598,7 +598,7 @@ public class ConfiguredObjectFactoryGene
                 else
                 {
                     TypeMirror erasureType = 
processingEnv.getTypeUtils().erasure(param.asType());
-                    pw.print(", 
getParent("+erasureType.toString()+".class,parents)");
+                    pw.print(String.format(", (%s)parent", 
erasureType.toString()));
                 }
             }
             pw.println(");");

Modified: 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/exchange/AbstractExchange.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/exchange/AbstractExchange.java?rev=1775810&r1=1775809&r2=1775810&view=diff
==============================================================================
--- 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/exchange/AbstractExchange.java
 (original)
+++ 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/exchange/AbstractExchange.java
 Fri Dec 23 10:42:25 2016
@@ -122,7 +122,7 @@ public abstract class AbstractExchange<T
 
     public AbstractExchange(Map<String, Object> attributes, 
QueueManagingVirtualHost<?> vhost)
     {
-        super(parentsMap(vhost), attributes);
+        super(vhost, attributes);
         Set<String> providedAttributeNames = new 
HashSet<>(attributes.keySet());
         providedAttributeNames.removeAll(getAttributeNames());
         if(!providedAttributeNames.isEmpty())

Modified: 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/model/AbstractConfiguredObject.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/model/AbstractConfiguredObject.java?rev=1775810&r1=1775809&r2=1775810&view=diff
==============================================================================
--- 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/model/AbstractConfiguredObject.java
 (original)
+++ 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/model/AbstractConfiguredObject.java
 Fri Dec 23 10:42:25 2016
@@ -230,33 +230,21 @@ public abstract class AbstractConfigured
     private volatile Date _lastOpenedTime;
     private volatile int _awaitAttainmentTimeout;
 
-    protected static Map<Class<? extends ConfiguredObject>, 
ConfiguredObject<?>> parentsMap(ConfiguredObject<?>... parents)
-    {
-        final Map<Class<? extends ConfiguredObject>, ConfiguredObject<?>> 
parentsMap =
-                new HashMap<Class<? extends ConfiguredObject>, 
ConfiguredObject<?>>();
-
-        for(ConfiguredObject<?> parent : parents)
-        {
-            parentsMap.put(parent.getCategoryClass(), parent);
-        }
-        return parentsMap;
-    }
-
-    protected AbstractConfiguredObject(final Map<Class<? extends 
ConfiguredObject>, ConfiguredObject<?>> parents,
+    protected AbstractConfiguredObject(final ConfiguredObject<?> parent,
                                        Map<String, Object> attributes)
     {
-        this(parents, attributes, 
parents.values().iterator().next().getChildExecutor());
+        this(parent, attributes, parent.getChildExecutor());
     }
 
 
-    protected AbstractConfiguredObject(final Map<Class<? extends 
ConfiguredObject>, ConfiguredObject<?>> parents,
+    protected AbstractConfiguredObject(final ConfiguredObject<?> parent,
                                        Map<String, Object> attributes,
                                        TaskExecutor taskExecutor)
     {
-        this(parents, attributes, taskExecutor, 
parents.values().iterator().next().getModel());
+        this(parent, attributes, taskExecutor, parent.getModel());
     }
 
-    protected AbstractConfiguredObject(final Map<Class<? extends 
ConfiguredObject>, ConfiguredObject<?>> parents,
+    protected AbstractConfiguredObject(final ConfiguredObject<?> parent,
                                        Map<String, Object> attributes,
                                        TaskExecutor taskExecutor,
                                        Model model)
@@ -267,6 +255,7 @@ public abstract class AbstractConfigured
             throw new NullPointerException("task executor is null");
         }
         _model = model;
+        _parent = parent;
 
         _category = ConfiguredObjectTypeRegistry.getCategory(getClass());
         Class<? extends ConfiguredObject> typeClass = 
model.getTypeRegistry().getTypeClass(getClass());
@@ -276,8 +265,6 @@ public abstract class AbstractConfigured
         _automatedFields = 
model.getTypeRegistry().getAutomatedFields(getClass());
         _stateChangeMethods = 
model.getTypeRegistry().getStateChangeMethods(getClass());
 
-        final Class<? extends ConfiguredObject> parentCategory = 
model.getParentType(_category);
-        _parent = parents.get(parentCategory);
 
         if(_parent instanceof AbstractConfiguredObject && 
((AbstractConfiguredObject)_parent)._encrypter != null)
         {

Modified: 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/model/AbstractConfiguredObjectTypeFactory.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/model/AbstractConfiguredObjectTypeFactory.java?rev=1775810&r1=1775809&r2=1775810&view=diff
==============================================================================
--- 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/model/AbstractConfiguredObjectTypeFactory.java
 (original)
+++ 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/model/AbstractConfiguredObjectTypeFactory.java
 Fri Dec 23 10:42:25 2016
@@ -24,7 +24,6 @@ import java.util.HashMap;
 import java.util.Map;
 
 import com.google.common.util.concurrent.FutureCallback;
-import com.google.common.util.concurrent.Futures;
 import com.google.common.util.concurrent.ListenableFuture;
 import com.google.common.util.concurrent.MoreExecutors;
 import com.google.common.util.concurrent.SettableFuture;
@@ -58,9 +57,9 @@ abstract public class AbstractConfigured
     @Override
     public X create(final ConfiguredObjectFactory factory,
                     final Map<String, Object> attributes,
-                    final ConfiguredObject<?>... parents)
+                    final ConfiguredObject<?> parent)
     {
-        X instance = createInstance(attributes, parents);
+        X instance = createInstance(attributes, parent);
         instance.create();
         return instance;
     }
@@ -69,10 +68,10 @@ abstract public class AbstractConfigured
     @Override
     public ListenableFuture<X> createAsync(final ConfiguredObjectFactory 
factory,
                     final Map<String, Object> attributes,
-                    final ConfiguredObject<?>... parents)
+                    final ConfiguredObject<?> parent)
     {
         final SettableFuture<X> returnVal = SettableFuture.create();
-        final X instance = createInstance(attributes, parents);
+        final X instance = createInstance(attributes, parent);
         final ListenableFuture<Void> createFuture = instance.createAsync();
         AbstractConfiguredObject.addFutureCallback(createFuture, new 
FutureCallback<Void>()
         {
@@ -92,35 +91,23 @@ abstract public class AbstractConfigured
         return returnVal;
     }
 
-    protected abstract X createInstance(Map<String, Object> attributes, 
ConfiguredObject<?>... parents);
-
-    public final <C extends ConfiguredObject<?>> C getParent(Class<C> 
parentClass, ConfiguredObject<?>... parents)
-    {
-        for(ConfiguredObject<?> parent : parents)
-        {
-            if(parentClass.isInstance(parent))
-            {
-                return (C) parent;
-            }
-        }
-        throw new IllegalArgumentException("No parent of class " + 
parentClass.getSimpleName() + " found.");
-    }
+    protected abstract X createInstance(Map<String, Object> attributes, 
ConfiguredObject<?> parent);
 
     @Override
     public UnresolvedConfiguredObject<X> recover(final ConfiguredObjectFactory 
factory,
                                                  final ConfiguredObjectRecord 
record,
-                                                 final ConfiguredObject<?>... 
parents)
+                                                 final ConfiguredObject<?> 
parent)
     {
-        return new GenericUnresolvedConfiguredObject( record, parents );
+        return new GenericUnresolvedConfiguredObject(record, parent);
     }
 
 
     private class GenericUnresolvedConfiguredObject extends 
AbstractUnresolvedObject<X>
     {
         public GenericUnresolvedConfiguredObject(
-                final ConfiguredObjectRecord record, final 
ConfiguredObject<?>[] parents)
+                final ConfiguredObjectRecord record, final ConfiguredObject<?> 
parent)
         {
-            super(_clazz, record, parents);
+            super(_clazz, record, parent);
         }
 
         @Override
@@ -135,7 +122,7 @@ abstract public class AbstractConfigured
         {
             Map<String,Object> attributesWithId = new HashMap<String, 
Object>(getRecord().getAttributes());
             attributesWithId.put(ConfiguredObject.ID, getRecord().getId());
-            X instance = createInstance(attributesWithId, getParents());
+            X instance = createInstance(attributesWithId, getParent());
             instance.registerWithParents();
             return instance;
         }

Modified: 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/model/AbstractContainer.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/model/AbstractContainer.java?rev=1775810&r1=1775809&r2=1775810&view=diff
==============================================================================
--- 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/model/AbstractContainer.java
 (original)
+++ 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/model/AbstractContainer.java
 Fri Dec 23 10:42:25 2016
@@ -78,11 +78,10 @@ public abstract class AbstractContainer<
     private String _preConfidentialConfigurationEncryptionProvider;
 
     AbstractContainer(
-            final Map<Class<? extends ConfiguredObject>, ConfiguredObject<?>> 
parents,
             final Map<String, Object> attributes,
             SystemConfig parent)
     {
-        super(parents, attributes);
+        super(parent, attributes);
         _parent = parent;
         _eventLogger = parent.getEventLogger();
         _jvmArguments = 
ManagementFactory.getRuntimeMXBean().getInputArguments();

Modified: 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/model/AbstractSystemConfig.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/model/AbstractSystemConfig.java?rev=1775810&r1=1775809&r2=1775810&view=diff
==============================================================================
--- 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/model/AbstractSystemConfig.java
 (original)
+++ 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/model/AbstractSystemConfig.java
 Fri Dec 23 10:42:25 2016
@@ -123,7 +123,7 @@ public abstract class AbstractSystemConf
                                 final Principal systemPrincipal,
                                 final Map<String, Object> attributes)
     {
-        super(parentsMap(),
+        super(null,
               updateAttributes(attributes),
               taskExecutor, SystemConfigBootstrapModel.getInstance());
         _eventLogger = eventLogger;

Modified: 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/model/AbstractUnresolvedObject.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/model/AbstractUnresolvedObject.java?rev=1775810&r1=1775809&r2=1775810&view=diff
==============================================================================
--- 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/model/AbstractUnresolvedObject.java
 (original)
+++ 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/model/AbstractUnresolvedObject.java
 Fri Dec 23 10:42:25 2016
@@ -39,18 +39,18 @@ public abstract class AbstractUnresolved
     private final Class<C> _clazz;
     private final Collection<ConfiguredObjectDependency<?>> _unresolvedObjects 
= new ArrayList<ConfiguredObjectDependency<?>>();
     private final ConfiguredObjectRecord _record;
-    private final ConfiguredObject<?>[] _parents;
+    private final ConfiguredObject<?> _parent;
 
     protected AbstractUnresolvedObject(Class<C> clazz,
                                        ConfiguredObjectRecord record,
-                                       ConfiguredObject<?>... parents)
+                                       ConfiguredObject<?> parent)
     {
         _clazz = clazz;
         _record = record;
-        _parents = parents;
+        _parent = parent;
 
         Collection<ConfiguredObjectAttribute<? super C, ?>> attributes =
-                parents[0].getModel().getTypeRegistry().getAttributes(clazz);
+                parent.getModel().getTypeRegistry().getAttributes(clazz);
         for(ConfiguredObjectAttribute<? super C, ?> attribute : attributes)
         {
             if(attribute.isPersisted())
@@ -139,9 +139,9 @@ public abstract class AbstractUnresolved
         return _record;
     }
 
-    public ConfiguredObject<?>[] getParents()
+    public ConfiguredObject<?> getParent()
     {
-        return _parents;
+        return _parent;
     }
 
     private void addUnresolvedObject(final Class<? extends ConfiguredObject> 
clazz,
@@ -169,7 +169,7 @@ public abstract class AbstractUnresolved
         }
         else if(attrValue instanceof String)
         {
-            String interpolatedValue = 
AbstractConfiguredObject.interpolate(_parents[0], (String) attrValue);
+            String interpolatedValue = 
AbstractConfiguredObject.interpolate(_parent, (String) attrValue);
 
             try
             {

Modified: 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/model/BrokerImpl.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/model/BrokerImpl.java?rev=1775810&r1=1775809&r2=1775810&view=diff
==============================================================================
--- 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/model/BrokerImpl.java
 (original)
+++ 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/model/BrokerImpl.java
 Fri Dec 23 10:42:25 2016
@@ -151,7 +151,7 @@ public class BrokerImpl extends Abstract
     public BrokerImpl(Map<String, Object> attributes,
                       SystemConfig parent)
     {
-        super(parentsMap(parent), attributes, parent);
+        super(attributes, parent);
         _principal = new BrokerPrincipal(this);
 
         if (parent.isManagementMode())

Modified: 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/model/ConfiguredObjectFactory.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/model/ConfiguredObjectFactory.java?rev=1775810&r1=1775809&r2=1775810&view=diff
==============================================================================
--- 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/model/ConfiguredObjectFactory.java
 (original)
+++ 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/model/ConfiguredObjectFactory.java
 Fri Dec 23 10:42:25 2016
@@ -32,11 +32,11 @@ import org.apache.qpid.server.store.Unre
 public interface ConfiguredObjectFactory
 {
     <X extends ConfiguredObject<X>> UnresolvedConfiguredObject<X> 
recover(ConfiguredObjectRecord record,
-                                                                          
ConfiguredObject<?>... parents);
+                                                                          
ConfiguredObject<?> parent);
 
-    <X extends ConfiguredObject<X>> X create(Class<X> clazz, Map<String, 
Object> attributes, ConfiguredObject<?>... parents);
+    <X extends ConfiguredObject<X>> X create(Class<X> clazz, Map<String, 
Object> attributes, ConfiguredObject<?> parent);
 
-    <X extends ConfiguredObject<X>> ListenableFuture<X> createAsync(Class<X> 
clazz, Map<String, Object> attributes, ConfiguredObject<?>... parents);
+    <X extends ConfiguredObject<X>> ListenableFuture<X> createAsync(Class<X> 
clazz, Map<String, Object> attributes, ConfiguredObject<?> parent);
 
 
 

Modified: 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/model/ConfiguredObjectFactoryImpl.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/model/ConfiguredObjectFactoryImpl.java?rev=1775810&r1=1775809&r2=1775810&view=diff
==============================================================================
--- 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/model/ConfiguredObjectFactoryImpl.java
 (original)
+++ 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/model/ConfiguredObjectFactoryImpl.java
 Fri Dec 23 10:42:25 2016
@@ -87,7 +87,7 @@ public class ConfiguredObjectFactoryImpl
 
     @Override
     public <X extends ConfiguredObject<X>> UnresolvedConfiguredObject<X> 
recover(ConfiguredObjectRecord record,
-                                                                               
  ConfiguredObject<?>... parents)
+                                                                               
  ConfiguredObject<?> parent)
     {
         String category = record.getType();
 
@@ -101,28 +101,28 @@ public class ConfiguredObjectFactoryImpl
             throw new NoFactoryForTypeException(category, type);
         }
 
-        return factory.recover(this, record, parents);
+        return factory.recover(this, record, parent);
     }
 
     @Override
     public <X extends ConfiguredObject<X>> X create(Class<X> clazz,
                                                     final Map<String, Object> 
attributes,
-                                                    final 
ConfiguredObject<?>... parents)
+                                                    final ConfiguredObject<?> 
parent)
     {
         ConfiguredObjectTypeFactory<X> factory = 
getConfiguredObjectTypeFactory(clazz, attributes);
 
-        return factory.create(this, attributes, parents);
+        return factory.create(this, attributes, parent);
     }
 
 
     @Override
     public <X extends ConfiguredObject<X>> ListenableFuture<X> 
createAsync(Class<X> clazz,
                                                     final Map<String, Object> 
attributes,
-                                                    final 
ConfiguredObject<?>... parents)
+                                                    final ConfiguredObject<?> 
parent)
     {
         ConfiguredObjectTypeFactory<X> factory = 
getConfiguredObjectTypeFactory(clazz, attributes);
 
-        return factory.createAsync(this, attributes, parents);
+        return factory.createAsync(this, attributes, parent);
     }
 
 

Modified: 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/model/adapter/AbstractPluginAdapter.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/model/adapter/AbstractPluginAdapter.java?rev=1775810&r1=1775809&r2=1775810&view=diff
==============================================================================
--- 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/model/adapter/AbstractPluginAdapter.java
 (original)
+++ 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/model/adapter/AbstractPluginAdapter.java
 Fri Dec 23 10:42:25 2016
@@ -35,7 +35,7 @@ public abstract class AbstractPluginAdap
 
     protected AbstractPluginAdapter(Map<String, Object> attributes, Broker 
broker)
     {
-        super(parentsMap(broker), attributes);
+        super((ConfiguredObject<?>) broker, attributes);
         _broker = broker;
     }
 

Modified: 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/model/adapter/FileBasedGroupProviderImpl.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/model/adapter/FileBasedGroupProviderImpl.java?rev=1775810&r1=1775809&r2=1775810&view=diff
==============================================================================
--- 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/model/adapter/FileBasedGroupProviderImpl.java
 (original)
+++ 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/model/adapter/FileBasedGroupProviderImpl.java
 Fri Dec 23 10:42:25 2016
@@ -69,7 +69,7 @@ public class FileBasedGroupProviderImpl
     public FileBasedGroupProviderImpl(Map<String, Object> attributes,
                                       Container<?> container)
     {
-        super(parentsMap(container), attributes);
+        super(container, attributes);
 
 
         _container = container;
@@ -317,7 +317,7 @@ public class FileBasedGroupProviderImpl
     {
         public GroupAdapter(Map<String, Object> attributes)
         {
-            super(parentsMap(FileBasedGroupProviderImpl.this), attributes);
+            super(FileBasedGroupProviderImpl.this, attributes);
         }
 
         @Override
@@ -397,7 +397,7 @@ public class FileBasedGroupProviderImpl
             public GroupMemberAdapter(Map<String, Object> attrMap)
             {
                 // TODO - need to relate to the User object
-                super(parentsMap(GroupAdapter.this),attrMap);
+                super(GroupAdapter.this, attrMap);
             }
 
             @Override

Modified: 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/model/adapter/SessionAdapter.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/model/adapter/SessionAdapter.java?rev=1775810&r1=1775809&r2=1775810&view=diff
==============================================================================
--- 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/model/adapter/SessionAdapter.java
 (original)
+++ 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/model/adapter/SessionAdapter.java
 Fri Dec 23 10:42:25 2016
@@ -62,7 +62,7 @@ public final class SessionAdapter extend
     public SessionAdapter(final AbstractAMQPConnection<?,?> amqpConnection,
                           final AMQSessionModel<?,?> session)
     {
-        super(parentsMap(amqpConnection), createAttributes(session));
+        super(amqpConnection, createAttributes(session));
         _amqpConnection = amqpConnection;
         _session = session;
         _session.addConsumerListener(new ConsumerListener()

Modified: 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/model/port/AbstractPort.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/model/port/AbstractPort.java?rev=1775810&r1=1775809&r2=1775810&view=diff
==============================================================================
--- 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/model/port/AbstractPort.java
 (original)
+++ 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/model/port/AbstractPort.java
 Fri Dec 23 10:42:25 2016
@@ -83,7 +83,7 @@ public abstract class AbstractPort<X ext
     public AbstractPort(Map<String, Object> attributes,
                         Container<?> container)
     {
-        super(parentsMap(container), attributes);
+        super(container, attributes);
 
         _container = container;
         _eventLogger = container.getEventLogger();

Modified: 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/model/port/PortFactory.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/model/port/PortFactory.java?rev=1775810&r1=1775809&r2=1775810&view=diff
==============================================================================
--- 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/model/port/PortFactory.java
 (original)
+++ 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/model/port/PortFactory.java
 Fri Dec 23 10:42:25 2016
@@ -106,25 +106,25 @@ public class PortFactory<X extends Port<
     @Override
     public X create(final ConfiguredObjectFactory factory,
                     final Map<String, Object> attributes,
-                    final ConfiguredObject<?>... parents)
+                    final ConfiguredObject<?> parent)
     {
-        return getPortFactory(factory, attributes, 
(Broker<?>)parents[0]).create(factory, attributes,parents);
+        return getPortFactory(factory, attributes, (Broker<?>) 
parent).create(factory, attributes, parent);
     }
 
     @Override
     public ListenableFuture<X> createAsync(final ConfiguredObjectFactory 
factory,
                                            final Map<String, Object> 
attributes,
-                                           final ConfiguredObject<?>... 
parents)
+                                           final ConfiguredObject<?> parent)
     {
-        return getPortFactory(factory, attributes, 
(Broker<?>)parents[0]).createAsync(factory, attributes,parents);
+        return getPortFactory(factory, attributes, (Broker<?>) 
parent).createAsync(factory, attributes, parent);
     }
 
     @Override
     public UnresolvedConfiguredObject<X> recover(final ConfiguredObjectFactory 
factory,
                                                  final ConfiguredObjectRecord 
record,
-                                                 final ConfiguredObject<?>... 
parents)
+                                                 final ConfiguredObject<?> 
parent)
     {
-        return getPortFactory(factory, record.getAttributes(), 
(Broker<?>)parents[0]).recover(factory, record, parents);
+        return getPortFactory(factory, record.getAttributes(), (Broker<?>) 
parent).recover(factory, record, parent);
     }
 
     public ConfiguredObjectTypeFactory<X> getPortFactory(final 
ConfiguredObjectFactory factory,

Modified: 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/plugin/ConfiguredObjectTypeFactory.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/plugin/ConfiguredObjectTypeFactory.java?rev=1775810&r1=1775809&r2=1775810&view=diff
==============================================================================
--- 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/plugin/ConfiguredObjectTypeFactory.java
 (original)
+++ 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/plugin/ConfiguredObjectTypeFactory.java
 Fri Dec 23 10:42:25 2016
@@ -33,11 +33,11 @@ public interface ConfiguredObjectTypeFac
 {
     Class<? super X> getCategoryClass();
 
-    X create(final ConfiguredObjectFactory factory, Map<String, Object> 
attributes, ConfiguredObject<?>... parents);
+    X create(final ConfiguredObjectFactory factory, Map<String, Object> 
attributes, ConfiguredObject<?> parent);
 
-    ListenableFuture<X> createAsync(final ConfiguredObjectFactory factory, 
Map<String, Object> attributes, ConfiguredObject<?>... parents);
+    ListenableFuture<X> createAsync(final ConfiguredObjectFactory factory, 
Map<String, Object> attributes, ConfiguredObject<?> parent);
 
     UnresolvedConfiguredObject<X> recover(final ConfiguredObjectFactory 
factory,
                                           ConfiguredObjectRecord record,
-                                          ConfiguredObject<?>... parents);
+                                          ConfiguredObject<?> parent);
 }

Modified: 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/queue/AbstractQueue.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/queue/AbstractQueue.java?rev=1775810&r1=1775809&r2=1775810&view=diff
==============================================================================
--- 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/queue/AbstractQueue.java
 (original)
+++ 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/queue/AbstractQueue.java
 Fri Dec 23 10:42:25 2016
@@ -279,7 +279,7 @@ public abstract class AbstractQueue<X ex
 
     protected AbstractQueue(Map<String, Object> attributes, 
QueueManagingVirtualHost<?> virtualHost)
     {
-        super(parentsMap(virtualHost), attributes);
+        super(virtualHost, attributes);
         _queueConsumerManager = new QueueConsumerManagerImpl(this);
 
         _virtualHost = virtualHost;

Modified: 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/queue/QueueConsumerImpl.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/queue/QueueConsumerImpl.java?rev=1775810&r1=1775809&r2=1775810&view=diff
==============================================================================
--- 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/queue/QueueConsumerImpl.java
 (original)
+++ 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/queue/QueueConsumerImpl.java
 Fri Dec 23 10:42:25 2016
@@ -111,7 +111,7 @@ class QueueConsumerImpl<T extends Consum
                       EnumSet<ConsumerOption> optionSet,
                       final Integer priority)
     {
-        super(parentsMap(queue),
+        super(queue,
               createAttributeMap(target.getSessionModel(), consumerName, 
filters, optionSet, priority));
         _messageClass = messageClass;
         _sessionReference = target.getSessionModel().getConnectionReference();

Modified: 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/queue/QueueFactory.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/queue/QueueFactory.java?rev=1775810&r1=1775809&r2=1775810&view=diff
==============================================================================
--- 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/queue/QueueFactory.java
 (original)
+++ 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/queue/QueueFactory.java
 Fri Dec 23 10:42:25 2016
@@ -45,25 +45,25 @@ public class QueueFactory<X extends Queu
     @Override
     public X create(final ConfiguredObjectFactory factory,
                     final Map<String, Object> attributes,
-                    final ConfiguredObject<?>... parents)
+                    final ConfiguredObject<?> parent)
     {
-        return getQueueFactory(factory, attributes).create(factory, 
attributes, parents);
+        return getQueueFactory(factory, attributes).create(factory, 
attributes, parent);
     }
 
     @Override
     public ListenableFuture<X> createAsync(final ConfiguredObjectFactory 
factory,
                                            final Map<String, Object> 
attributes,
-                                           final ConfiguredObject<?>... 
parents)
+                                           final ConfiguredObject<?> parent)
     {
-        return getQueueFactory(factory, attributes).createAsync(factory, 
attributes, parents);
+        return getQueueFactory(factory, attributes).createAsync(factory, 
attributes, parent);
     }
 
     @Override
     public UnresolvedConfiguredObject<X> recover(final ConfiguredObjectFactory 
factory,
                                                  final ConfiguredObjectRecord 
record,
-                                                 final ConfiguredObject<?>... 
parents)
+                                                 final ConfiguredObject<?> 
parent)
     {
-        return getQueueFactory(factory, 
record.getAttributes()).recover(factory, record, parents);
+        return getQueueFactory(factory, 
record.getAttributes()).recover(factory, record, parent);
     }
 
     private ConfiguredObjectTypeFactory<X> getQueueFactory(final 
ConfiguredObjectFactory factory,

Modified: 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/security/AbstractKeyStore.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/security/AbstractKeyStore.java?rev=1775810&r1=1775809&r2=1775810&view=diff
==============================================================================
--- 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/security/AbstractKeyStore.java
 (original)
+++ 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/security/AbstractKeyStore.java
 Fri Dec 23 10:42:25 2016
@@ -61,7 +61,7 @@ public abstract class AbstractKeyStore<X
 
     public AbstractKeyStore(Map<String, Object> attributes, Broker<?> broker)
     {
-        super(parentsMap(broker), attributes);
+        super(broker, attributes);
 
         _broker = broker;
         _eventLogger = broker.getEventLogger();

Modified: 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/security/AllowAllAccessControlProviderImpl.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/security/AllowAllAccessControlProviderImpl.java?rev=1775810&r1=1775809&r2=1775810&view=diff
==============================================================================
--- 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/security/AllowAllAccessControlProviderImpl.java
 (original)
+++ 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/security/AllowAllAccessControlProviderImpl.java
 Fri Dec 23 10:42:25 2016
@@ -29,6 +29,7 @@ import org.apache.qpid.server.logging.me
 import org.apache.qpid.server.model.AbstractConfiguredObject;
 import org.apache.qpid.server.model.AccessControlProvider;
 import org.apache.qpid.server.model.Broker;
+import org.apache.qpid.server.model.ConfiguredObject;
 import org.apache.qpid.server.model.ManagedAttributeField;
 import org.apache.qpid.server.model.ManagedObjectFactoryConstructor;
 import org.apache.qpid.server.model.State;
@@ -43,7 +44,7 @@ public class AllowAllAccessControlProvid
     @ManagedObjectFactoryConstructor
     public AllowAllAccessControlProviderImpl(Map<String, Object> attributes, 
Broker broker)
     {
-        super(parentsMap(broker), attributes);
+        super((ConfiguredObject<?>) broker, attributes);
         _broker = broker;
     }
 

Modified: 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/security/AutoGeneratedSelfSignedKeyStoreImpl.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/security/AutoGeneratedSelfSignedKeyStoreImpl.java?rev=1775810&r1=1775809&r2=1775810&view=diff
==============================================================================
--- 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/security/AutoGeneratedSelfSignedKeyStoreImpl.java
 (original)
+++ 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/security/AutoGeneratedSelfSignedKeyStoreImpl.java
 Fri Dec 23 10:42:25 2016
@@ -124,7 +124,7 @@ public class AutoGeneratedSelfSignedKeyS
     @ManagedObjectFactoryConstructor(conditionallyAvailable = true)
     public AutoGeneratedSelfSignedKeyStoreImpl(final Map<String, Object> 
attributes, Broker<?> broker)
     {
-        super(parentsMap(broker), attributes);
+        super(broker, attributes);
         _broker = broker;
         _eventLogger = _broker.getEventLogger();
         _eventLogger.message(KeyStoreMessages.CREATE(getName()));

Modified: 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/security/FileTrustStoreImpl.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/security/FileTrustStoreImpl.java?rev=1775810&r1=1775809&r2=1775810&view=diff
==============================================================================
--- 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/security/FileTrustStoreImpl.java
 (original)
+++ 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/security/FileTrustStoreImpl.java
 Fri Dec 23 10:42:25 2016
@@ -96,7 +96,7 @@ public class FileTrustStoreImpl extends
     @ManagedObjectFactoryConstructor
     public FileTrustStoreImpl(Map<String, Object> attributes, Broker<?> broker)
     {
-        super(parentsMap(broker), attributes);
+        super(broker, attributes);
         _broker = broker;
         _eventLogger = _broker.getEventLogger();
         _eventLogger.message(TrustStoreMessages.CREATE(getName()));

Modified: 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/security/ManagedPeerCertificateTrustStoreImpl.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/security/ManagedPeerCertificateTrustStoreImpl.java?rev=1775810&r1=1775809&r2=1775810&view=diff
==============================================================================
--- 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/security/ManagedPeerCertificateTrustStoreImpl.java
 (original)
+++ 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/security/ManagedPeerCertificateTrustStoreImpl.java
 Fri Dec 23 10:42:25 2016
@@ -92,7 +92,7 @@ public class ManagedPeerCertificateTrust
     @ManagedObjectFactoryConstructor
     public ManagedPeerCertificateTrustStoreImpl(final Map<String, Object> 
attributes, Broker<?> broker)
     {
-        super(parentsMap(broker), attributes);
+        super(broker, attributes);
         _broker = broker;
         _eventLogger = _broker.getEventLogger();
         _eventLogger.message(TrustStoreMessages.CREATE(getName()));

Modified: 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/security/NonJavaTrustStoreImpl.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/security/NonJavaTrustStoreImpl.java?rev=1775810&r1=1775809&r2=1775810&view=diff
==============================================================================
--- 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/security/NonJavaTrustStoreImpl.java
 (original)
+++ 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/security/NonJavaTrustStoreImpl.java
 Fri Dec 23 10:42:25 2016
@@ -98,7 +98,7 @@ public class NonJavaTrustStoreImpl
     @ManagedObjectFactoryConstructor
     public NonJavaTrustStoreImpl(final Map<String, Object> attributes, 
Broker<?> broker)
     {
-        super(parentsMap(broker), attributes);
+        super(broker, attributes);
         _broker = broker;
         _eventLogger = _broker.getEventLogger();
         _eventLogger.message(TrustStoreMessages.CREATE(getName()));

Modified: 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/security/SiteSpecificTrustStoreImpl.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/security/SiteSpecificTrustStoreImpl.java?rev=1775810&r1=1775809&r2=1775810&view=diff
==============================================================================
--- 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/security/SiteSpecificTrustStoreImpl.java
 (original)
+++ 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/security/SiteSpecificTrustStoreImpl.java
 Fri Dec 23 10:42:25 2016
@@ -95,7 +95,7 @@ public class SiteSpecificTrustStoreImpl
     @ManagedObjectFactoryConstructor
     public SiteSpecificTrustStoreImpl(final Map<String, Object> attributes, 
Broker<?> broker)
     {
-        super(parentsMap(broker), attributes);
+        super(broker, attributes);
         _broker = broker;
         _eventLogger = _broker.getEventLogger();
         _eventLogger.message(TrustStoreMessages.CREATE(getName()));

Modified: 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/security/access/AbstractAccessControlProvider.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/security/access/AbstractAccessControlProvider.java?rev=1775810&r1=1775809&r2=1775810&view=diff
==============================================================================
--- 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/security/access/AbstractAccessControlProvider.java
 (original)
+++ 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/security/access/AbstractAccessControlProvider.java
 Fri Dec 23 10:42:25 2016
@@ -48,7 +48,7 @@ public abstract class AbstractAccessCont
 
     public AbstractAccessControlProvider(Map<String, Object> attributes, T 
parent)
     {
-        super(parentsMap(parent), attributes);
+        super(parent, attributes);
 
         _eventLogger = parent.getEventLogger();
         _eventLogger.message(AccessControlMessages.CREATE(getName()));

Modified: 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/security/auth/manager/AbstractAuthenticationManager.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/security/auth/manager/AbstractAuthenticationManager.java?rev=1775810&r1=1775809&r2=1775810&view=diff
==============================================================================
--- 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/security/auth/manager/AbstractAuthenticationManager.java
 (original)
+++ 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/security/auth/manager/AbstractAuthenticationManager.java
 Fri Dec 23 10:42:25 2016
@@ -33,7 +33,6 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 import org.apache.qpid.server.logging.EventLogger;
-import org.apache.qpid.server.logging.EventLoggerProvider;
 import org.apache.qpid.server.logging.messages.AuthenticationProviderMessages;
 import org.apache.qpid.server.model.AbstractConfiguredObject;
 import org.apache.qpid.server.model.AuthenticationProvider;
@@ -66,7 +65,7 @@ public abstract class AbstractAuthentica
 
     protected AbstractAuthenticationManager(final Map<String, Object> 
attributes, final Container<?> container)
     {
-        super(parentsMap(container), attributes);
+        super(container, attributes);
         _container = container;
         _eventLogger = _container.getEventLogger();
         _eventLogger.message(AuthenticationProviderMessages.CREATE(getName()));

Modified: 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/security/auth/manager/ManagedUser.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/security/auth/manager/ManagedUser.java?rev=1775810&r1=1775809&r2=1775810&view=diff
==============================================================================
--- 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/security/auth/manager/ManagedUser.java
 (original)
+++ 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/security/auth/manager/ManagedUser.java
 Fri Dec 23 10:42:25 2016
@@ -48,7 +48,7 @@ class ManagedUser extends AbstractConfig
     @ManagedObjectFactoryConstructor
     ManagedUser(final Map<String, Object> attributes, 
ConfigModelPasswordManagingAuthenticationProvider<?> parent)
     {
-        super(parentsMap(parent), attributes);
+        super(parent, attributes);
         _authenticationManager = parent;
 
         setState(State.ACTIVE);

Modified: 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/security/auth/manager/PrincipalDatabaseAuthenticationManager.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/security/auth/manager/PrincipalDatabaseAuthenticationManager.java?rev=1775810&r1=1775809&r2=1775810&view=diff
==============================================================================
--- 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/security/auth/manager/PrincipalDatabaseAuthenticationManager.java
 (original)
+++ 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/security/auth/manager/PrincipalDatabaseAuthenticationManager.java
 Fri Dec 23 10:42:25 2016
@@ -385,7 +385,7 @@ public abstract class PrincipalDatabaseA
 
         public PrincipalAdapter(Principal user)
         {
-            
super(parentsMap(PrincipalDatabaseAuthenticationManager.this),createPrincipalAttributes(PrincipalDatabaseAuthenticationManager.this,
 user));
+            super(PrincipalDatabaseAuthenticationManager.this, 
createPrincipalAttributes(PrincipalDatabaseAuthenticationManager.this, user));
             _user = user;
 
         }

Modified: 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/security/group/GroupImpl.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/security/group/GroupImpl.java?rev=1775810&r1=1775809&r2=1775810&view=diff
==============================================================================
--- 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/security/group/GroupImpl.java
 (original)
+++ 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/security/group/GroupImpl.java
 Fri Dec 23 10:42:25 2016
@@ -45,7 +45,7 @@ public class GroupImpl extends AbstractC
     public GroupImpl(Map<String, Object> attributes,
                      GroupProvider<?> provider)
     {
-        super(parentsMap(provider), attributes);
+        super(provider, attributes);
     }
 
     @Override

Modified: 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/security/group/GroupMemberImpl.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/security/group/GroupMemberImpl.java?rev=1775810&r1=1775809&r2=1775810&view=diff
==============================================================================
--- 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/security/group/GroupMemberImpl.java
 (original)
+++ 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/security/group/GroupMemberImpl.java
 Fri Dec 23 10:42:25 2016
@@ -26,6 +26,7 @@ import com.google.common.util.concurrent
 import com.google.common.util.concurrent.ListenableFuture;
 
 import org.apache.qpid.server.model.AbstractConfiguredObject;
+import org.apache.qpid.server.model.ConfiguredObject;
 import org.apache.qpid.server.model.Group;
 import org.apache.qpid.server.model.GroupMember;
 import org.apache.qpid.server.model.ManagedObject;
@@ -41,7 +42,7 @@ public class GroupMemberImpl extends Abs
     @ManagedObjectFactoryConstructor
     public GroupMemberImpl(Map<String, Object> attributes, Group group)
     {
-        super(parentsMap(group), attributes);
+        super((ConfiguredObject<?>) group, attributes);
     }
 
     @StateTransition( currentState = { State.UNINITIALIZED, State.QUIESCED, 
State.ERRORED }, desiredState = State.ACTIVE )

Modified: 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/security/group/GroupProviderImpl.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/security/group/GroupProviderImpl.java?rev=1775810&r1=1775809&r2=1775810&view=diff
==============================================================================
--- 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/security/group/GroupProviderImpl.java
 (original)
+++ 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/security/group/GroupProviderImpl.java
 Fri Dec 23 10:42:25 2016
@@ -51,7 +51,7 @@ public class GroupProviderImpl extends A
     @ManagedObjectFactoryConstructor
     public GroupProviderImpl(Map<String, Object> attributes, Container<?> 
container)
     {
-        super(parentsMap(container), attributes);
+        super(container, attributes);
         _container = container;
     }
 

Modified: 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/security/group/cloudfoundry/CloudFoundryDashboardManagementGroupProviderImpl.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/security/group/cloudfoundry/CloudFoundryDashboardManagementGroupProviderImpl.java?rev=1775810&r1=1775809&r2=1775810&view=diff
==============================================================================
--- 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/security/group/cloudfoundry/CloudFoundryDashboardManagementGroupProviderImpl.java
 (original)
+++ 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/security/group/cloudfoundry/CloudFoundryDashboardManagementGroupProviderImpl.java
 Fri Dec 23 10:42:25 2016
@@ -96,7 +96,7 @@ public class CloudFoundryDashboardManage
     @ManagedObjectFactoryConstructor
     public CloudFoundryDashboardManagementGroupProviderImpl(Map<String, 
Object> attributes, Container<?> container)
     {
-        super(parentsMap(container), attributes);
+        super(container, attributes);
         _container = container;
     }
 

Modified: 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/store/GenericRecoverer.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/store/GenericRecoverer.java?rev=1775810&r1=1775809&r2=1775810&view=diff
==============================================================================
--- 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/store/GenericRecoverer.java
 (original)
+++ 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/store/GenericRecoverer.java
 Fri Dec 23 10:42:25 2016
@@ -176,11 +176,15 @@ public class GenericRecoverer
                         parents.add(resolvedObjects.get(parentId));
                     }
                 }
+                if (parents.size() > 1)
+                {
+                    throw new IllegalStateException(String.format("Unexpected 
number of parents %d for record %s ", parents.size(), record));
+                }
                 if (foundParents)
                 {
                     iter.remove();
                     ConfiguredObject<?>[] parentArray = parents.toArray(new 
ConfiguredObject<?>[parents.size()]);
-                    UnresolvedConfiguredObject<? extends ConfiguredObject> 
recovered =  factory.recover(record, parentArray);
+                    UnresolvedConfiguredObject<? extends ConfiguredObject> 
recovered =  factory.recover(record, parentArray[0]);
                     Collection<ConfiguredObjectDependency<?>> dependencies = 
recovered.getUnresolvedDependencies();
                     if (dependencies.isEmpty())
                     {
@@ -221,14 +225,8 @@ public class GenericRecoverer
                     else if(dependency instanceof 
ConfiguredObjectNameDependency)
                     {
                         ConfiguredObject<?> dependentObject = null;
-                        for(ConfiguredObject<?> parent : 
unresolvedObject.getParents())
-                        {
-                            dependentObject = 
parent.findConfiguredObject(dependency.getCategoryClass(), 
((ConfiguredObjectNameDependency)dependency).getName());
-                            if(dependentObject != null)
-                            {
-                                break;
-                            }
-                        }
+                        ConfiguredObject<?> parent = 
unresolvedObject.getParent();
+                        dependentObject = 
parent.findConfiguredObject(dependency.getCategoryClass(), 
((ConfiguredObjectNameDependency)dependency).getName());
                         if(dependentObject != null)
                         {
                             dependency.resolve(dependentObject);

Modified: 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/store/UnresolvedConfiguredObject.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/store/UnresolvedConfiguredObject.java?rev=1775810&r1=1775809&r2=1775810&view=diff
==============================================================================
--- 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/store/UnresolvedConfiguredObject.java
 (original)
+++ 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/store/UnresolvedConfiguredObject.java
 Fri Dec 23 10:42:25 2016
@@ -26,7 +26,7 @@ import java.util.Collection;
 
 public interface UnresolvedConfiguredObject<X extends ConfiguredObject<X>>
 {
-    ConfiguredObject<?>[] getParents();
+    ConfiguredObject<?> getParent();
 
     Collection<ConfiguredObjectDependency<?>> getUnresolvedDependencies();
 

Modified: 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/transport/AbstractAMQPConnection.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/transport/AbstractAMQPConnection.java?rev=1775810&r1=1775809&r2=1775810&view=diff
==============================================================================
--- 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/transport/AbstractAMQPConnection.java
 (original)
+++ 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/transport/AbstractAMQPConnection.java
 Fri Dec 23 10:42:25 2016
@@ -128,7 +128,7 @@ public abstract class AbstractAMQPConnec
                                   long connectionId,
                                   AggregateTicker aggregateTicker)
     {
-        super(parentsMap(port),createAttributes(connectionId, network));
+        super(port, createAttributes(connectionId, network));
 
         _broker = broker;
         _eventLoggerProvider = broker;

Modified: 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/virtualhost/AbstractNonConnectionAcceptingVirtualHost.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/virtualhost/AbstractNonConnectionAcceptingVirtualHost.java?rev=1775810&r1=1775809&r2=1775810&view=diff
==============================================================================
--- 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/virtualhost/AbstractNonConnectionAcceptingVirtualHost.java
 (original)
+++ 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/virtualhost/AbstractNonConnectionAcceptingVirtualHost.java
 Fri Dec 23 10:42:25 2016
@@ -49,10 +49,10 @@ public abstract class AbstractNonConnect
 {
     private final VirtualHostPrincipal _principal;
 
-    public AbstractNonConnectionAcceptingVirtualHost(final Map<Class<? extends 
ConfiguredObject>, ConfiguredObject<?>> parents,
+    public AbstractNonConnectionAcceptingVirtualHost(final ConfiguredObject<?> 
parent,
                                                      final Map<String, Object> 
attributes)
     {
-        super(parents, attributes);
+        super(parent, attributes);
 
         _principal = new VirtualHostPrincipal(this);
         setState(State.UNAVAILABLE);

Modified: 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/virtualhost/AbstractVirtualHost.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/virtualhost/AbstractVirtualHost.java?rev=1775810&r1=1775809&r2=1775810&view=diff
==============================================================================
--- 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/virtualhost/AbstractVirtualHost.java
 (original)
+++ 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/virtualhost/AbstractVirtualHost.java
 Fri Dec 23 10:42:25 2016
@@ -269,7 +269,7 @@ public abstract class AbstractVirtualHos
 
     public AbstractVirtualHost(final Map<String, Object> attributes, 
VirtualHostNode<?> virtualHostNode)
     {
-        super(parentsMap(virtualHostNode), attributes);
+        super(virtualHostNode, attributes);
         _broker = (Broker<?>) virtualHostNode.getParent();
         _virtualHostNode = virtualHostNode;
 

Modified: 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/virtualhostalias/AbstractVirtualHostAlias.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/virtualhostalias/AbstractVirtualHostAlias.java?rev=1775810&r1=1775809&r2=1775810&view=diff
==============================================================================
--- 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/virtualhostalias/AbstractVirtualHostAlias.java
 (original)
+++ 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/virtualhostalias/AbstractVirtualHostAlias.java
 Fri Dec 23 10:42:25 2016
@@ -26,6 +26,7 @@ import java.util.Map;
 import com.google.common.util.concurrent.ListenableFuture;
 
 import org.apache.qpid.server.model.AbstractConfiguredObject;
+import org.apache.qpid.server.model.ConfiguredObject;
 import org.apache.qpid.server.model.ManagedAttributeField;
 import org.apache.qpid.server.model.Port;
 import org.apache.qpid.server.model.State;
@@ -41,7 +42,7 @@ abstract class AbstractVirtualHostAlias<
 
     protected AbstractVirtualHostAlias(Map<String, Object> attributes, Port 
port)
     {
-        super(parentsMap(port), attributes);
+        super((ConfiguredObject<?>) port, attributes);
         setState(State.ACTIVE);
     }
 

Modified: 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/virtualhostnode/AbstractVirtualHostNode.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/virtualhostnode/AbstractVirtualHostNode.java?rev=1775810&r1=1775809&r2=1775810&view=diff
==============================================================================
--- 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/virtualhostnode/AbstractVirtualHostNode.java
 (original)
+++ 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/virtualhostnode/AbstractVirtualHostNode.java
 Fri Dec 23 10:42:25 2016
@@ -111,8 +111,7 @@ public abstract class AbstractVirtualHos
 
     public AbstractVirtualHostNode(Broker<?> parent, Map<String, Object> 
attributes)
     {
-        super(Collections.<Class<? extends 
ConfiguredObject>,ConfiguredObject<?>>singletonMap(Broker.class, parent),
-              attributes);
+        super(parent, attributes);
         _virtualHostExecutor = 
getTaskExecutor().getFactory().newInstance("VirtualHostNode-" + getName() + 
"-Config", new TaskExecutor.PrincipalAccessor()
         {
             @Override

Modified: 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/virtualhostnode/RedirectingVirtualHostImpl.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/virtualhostnode/RedirectingVirtualHostImpl.java?rev=1775810&r1=1775809&r2=1775810&view=diff
==============================================================================
--- 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/virtualhostnode/RedirectingVirtualHostImpl.java
 (original)
+++ 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/virtualhostnode/RedirectingVirtualHostImpl.java
 Fri Dec 23 10:42:25 2016
@@ -44,7 +44,7 @@ class RedirectingVirtualHostImpl
     @ManagedObjectFactoryConstructor
     public RedirectingVirtualHostImpl(final Map<String, Object> attributes, 
VirtualHostNode<?> virtualHostNode)
     {
-        super(parentsMap(virtualHostNode), attributes);
+        super(virtualHostNode, attributes);
     }
 
     @Override

Modified: 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/virtualhostnode/RedirectingVirtualHostNodeImpl.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/virtualhostnode/RedirectingVirtualHostNodeImpl.java?rev=1775810&r1=1775809&r2=1775810&view=diff
==============================================================================
--- 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/virtualhostnode/RedirectingVirtualHostNodeImpl.java
 (original)
+++ 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/virtualhostnode/RedirectingVirtualHostNodeImpl.java
 Fri Dec 23 10:42:25 2016
@@ -75,8 +75,7 @@ public class RedirectingVirtualHostNodeI
     @ManagedObjectFactoryConstructor
     public RedirectingVirtualHostNodeImpl(Map<String, Object> attributes, 
Broker<?> parent)
     {
-        super(Collections.<Class<? extends 
ConfiguredObject>,ConfiguredObject<?>>singletonMap(Broker.class, parent),
-              attributes);
+        super(parent, attributes);
         _broker = parent;
     }
 

Modified: 
qpid/java/trunk/broker-core/src/test/java/org/apache/qpid/server/model/AttributeValueConverterTest.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/broker-core/src/test/java/org/apache/qpid/server/model/AttributeValueConverterTest.java?rev=1775810&r1=1775809&r2=1775810&view=diff
==============================================================================
--- 
qpid/java/trunk/broker-core/src/test/java/org/apache/qpid/server/model/AttributeValueConverterTest.java
 (original)
+++ 
qpid/java/trunk/broker-core/src/test/java/org/apache/qpid/server/model/AttributeValueConverterTest.java
 Fri Dec 23 10:42:25 2016
@@ -66,7 +66,7 @@ public class AttributeValueConverterTest
         _context.put("mapWithInterpolatedContents", "{\"${mykey}\" : \"b\"}");
         _context.put("mykey", "mykey1");
 
-        ConfiguredObject object = _objectFactory.create(TestCar.class, 
_attributes);
+        ConfiguredObject object = _objectFactory.create(TestCar.class, 
_attributes, null);
 
         AttributeValueConverter<Map> mapConverter = getConverter(Map.class, 
Map.class);
 
@@ -102,7 +102,7 @@ public class AttributeValueConverterTest
         final long nowMillis = System.currentTimeMillis();
         final Date now = new Date(nowMillis);
 
-        ConfiguredObject object = _objectFactory.create(TestCar.class, 
_attributes);
+        ConfiguredObject object = _objectFactory.create(TestCar.class, 
_attributes, null);
 
         AttributeValueConverter<Date> converter = getConverter(Date.class, 
Date.class);
 
@@ -135,7 +135,7 @@ public class AttributeValueConverterTest
     {
         _context.put("simpleCollection", "[\"a\", \"b\"]");
 
-        ConfiguredObject object = _objectFactory.create(TestCar.class, 
_attributes);
+        ConfiguredObject object = _objectFactory.create(TestCar.class, 
_attributes, null);
 
         AttributeValueConverter<Collection> collectionConverter = 
getConverter(Collection.class, Collection.class);
 
@@ -170,7 +170,7 @@ public class AttributeValueConverterTest
     {
         _context.put("simpleList", "[\"a\", \"b\"]");
 
-        ConfiguredObject object = _objectFactory.create(TestCar.class, 
_attributes);
+        ConfiguredObject object = _objectFactory.create(TestCar.class, 
_attributes, null);
 
         AttributeValueConverter<List> listConverter = getConverter(List.class, 
List.class);
 
@@ -203,7 +203,7 @@ public class AttributeValueConverterTest
     {
         _context.put("simpleSet", "[\"a\", \"b\"]");
 
-        ConfiguredObject object = _objectFactory.create(TestCar.class, 
_attributes);
+        ConfiguredObject object = _objectFactory.create(TestCar.class, 
_attributes, null);
 
         AttributeValueConverter<Set> setConverter = getConverter(Set.class, 
Set.class);;
 
@@ -252,7 +252,7 @@ public class AttributeValueConverterTest
 
     public void testBase64EncodedCertificateConverter() throws ParseException
     {
-        ConfiguredObject object = _objectFactory.create(TestCar.class, 
_attributes);
+        ConfiguredObject object = _objectFactory.create(TestCar.class, 
_attributes, null);
         AttributeValueConverter<Certificate> certificateConverter = 
getConverter(Certificate.class, Certificate.class);
         Certificate certificate = 
certificateConverter.convert(BASE_64_ENCODED_CERTIFICATE, object);
         assertTrue("Unexpected certificate", certificate instanceof 
X509Certificate);
@@ -263,7 +263,7 @@ public class AttributeValueConverterTest
 
     public void testPEMCertificateConverter() throws ParseException
     {
-        ConfiguredObject object = _objectFactory.create(TestCar.class, 
_attributes);
+        ConfiguredObject object = _objectFactory.create(TestCar.class, 
_attributes, null);
         AttributeValueConverter<Certificate> certificateConverter = 
getConverter(Certificate.class, Certificate.class);
         StringBuffer pemCertificate = new StringBuffer("-----BEGIN 
CERTIFICATE-----\n");
         int offset = 0;
@@ -284,7 +284,7 @@ public class AttributeValueConverterTest
 
     public void testMapToManagedAttributeValue()
     {
-        ConfiguredObject object = _objectFactory.create(TestCar.class, 
_attributes);
+        ConfiguredObject object = _objectFactory.create(TestCar.class, 
_attributes, null);
 
         final AttributeValueConverter<TestManagedAttributeValue> converter =
                 getConverter(TestManagedAttributeValue.class, 
TestManagedAttributeValue.class);
@@ -323,7 +323,7 @@ public class AttributeValueConverterTest
 
     public void testMapToManagedAttributeValueEquality()
     {
-        ConfiguredObject object = _objectFactory.create(TestCar.class, 
_attributes);
+        ConfiguredObject object = _objectFactory.create(TestCar.class, 
_attributes, null);
 
         final AttributeValueConverter<SimpleTestManagedAttributeValue> 
converter =
                 getConverter(SimpleTestManagedAttributeValue.class, 
SimpleTestManagedAttributeValue.class);

Modified: 
qpid/java/trunk/broker-core/src/test/java/org/apache/qpid/server/model/testmodels/hierarchy/AbstractConfiguredObjectTest.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/broker-core/src/test/java/org/apache/qpid/server/model/testmodels/hierarchy/AbstractConfiguredObjectTest.java?rev=1775810&r1=1775809&r2=1775810&view=diff
==============================================================================
--- 
qpid/java/trunk/broker-core/src/test/java/org/apache/qpid/server/model/testmodels/hierarchy/AbstractConfiguredObjectTest.java
 (original)
+++ 
qpid/java/trunk/broker-core/src/test/java/org/apache/qpid/server/model/testmodels/hierarchy/AbstractConfiguredObjectTest.java
 Fri Dec 23 10:42:25 2016
@@ -53,7 +53,7 @@ public class AbstractConfiguredObjectTes
         final String objectName = "testCreateCategoryDefault";
         Map<String, Object> attributes = Collections.<String, 
Object>singletonMap(ConfiguredObject.NAME, objectName);
 
-        TestCar object = _model.getObjectFactory().create(TestCar.class, 
attributes);
+        TestCar object = _model.getObjectFactory().create(TestCar.class, 
attributes, null);
 
         assertEquals(objectName, object.getName());
         assertEquals(TestStandardCarImpl.TEST_STANDARD_CAR_TYPE, 
object.getType());
@@ -69,7 +69,7 @@ public class AbstractConfiguredObjectTes
 
         try
         {
-            _model.getObjectFactory().create(TestCar.class, attributes);
+            _model.getObjectFactory().create(TestCar.class, attributes, null);
             fail("Exception not thrown");
         }
         catch (IllegalConfigurationException ice)
@@ -85,7 +85,7 @@ public class AbstractConfiguredObjectTes
         carAttributes.put(ConfiguredObject.NAME, carName);
         carAttributes.put(ConfiguredObject.TYPE, 
TestKitCarImpl.TEST_KITCAR_TYPE);
 
-        TestCar car = _model.getObjectFactory().create(TestCar.class, 
carAttributes);
+        TestCar car = _model.getObjectFactory().create(TestCar.class, 
carAttributes, null);
 
         assertEquals(carName, car.getName());
 
@@ -108,7 +108,7 @@ public class AbstractConfiguredObjectTes
 
     public void testGetChildren_NewChild()
     {
-        TestCar car = _model.getObjectFactory().create(TestCar.class, 
Collections.<String, Object>singletonMap(ConfiguredObject.NAME, "myCar"));
+        TestCar car = _model.getObjectFactory().create(TestCar.class, 
Collections.<String, Object>singletonMap(ConfiguredObject.NAME, "myCar"), null);
 
         String engineName = "myEngine";
         Map<String, Object> engineAttributes = new HashMap<>();
@@ -212,7 +212,7 @@ public class AbstractConfiguredObjectTes
     {
         SettableFuture stateChangeFuture = SettableFuture.create();
 
-        TestCar car = _model.getObjectFactory().create(TestCar.class, 
Collections.<String, Object>singletonMap(ConfiguredObject.NAME, "myCar"));
+        TestCar car = _model.getObjectFactory().create(TestCar.class, 
Collections.<String, Object>singletonMap(ConfiguredObject.NAME, "myCar"), null);
 
         Map<String, Object> engineAttributes = new HashMap<>();
         engineAttributes.put(ConfiguredObject.NAME, "myEngine");
@@ -231,7 +231,7 @@ public class AbstractConfiguredObjectTes
         SettableFuture stateChangeFuture = SettableFuture.create();
         RuntimeException stateChangeException = new RuntimeException("state 
change error");
 
-        TestCar car = _model.getObjectFactory().create(TestCar.class, 
Collections.<String, Object>singletonMap(ConfiguredObject.NAME, "myCar"));
+        TestCar car = _model.getObjectFactory().create(TestCar.class, 
Collections.<String, Object>singletonMap(ConfiguredObject.NAME, "myCar"), null);
 
         Map<String, Object> engineAttributes = new HashMap<>();
         engineAttributes.put(ConfiguredObject.NAME, "myEngine");
@@ -258,7 +258,7 @@ public class AbstractConfiguredObjectTes
     {
         RuntimeException stateChangeException = new RuntimeException("state 
change error");
 
-        TestCar car = _model.getObjectFactory().create(TestCar.class, 
Collections.<String, Object>singletonMap(ConfiguredObject.NAME, "myCar"));
+        TestCar car = _model.getObjectFactory().create(TestCar.class, 
Collections.<String, Object>singletonMap(ConfiguredObject.NAME, "myCar"), null);
 
         Map<String, Object> engineAttributes = new HashMap<>();
         engineAttributes.put(ConfiguredObject.NAME, "myEngine");
@@ -284,7 +284,7 @@ public class AbstractConfiguredObjectTes
 
         TestCar car = _model.getObjectFactory().create(TestCar.class,
                                                        Collections.<String, 
Object>singletonMap(ConfiguredObject.NAME,
-                                                                               
                 "myCar"));
+                                                                               
                 "myCar"), null);
 
         String engineName = "myEngine";
         Map<String, Object> engineAttributes = new HashMap<>();
@@ -310,7 +310,7 @@ public class AbstractConfiguredObjectTes
         carAttributes.put(ConfiguredObject.NAME, carName);
         carAttributes.put(ConfiguredObject.TYPE, 
TestKitCarImpl.TEST_KITCAR_TYPE);
 
-        TestCar car = _model.getObjectFactory().create(TestCar.class, 
carAttributes);
+        TestCar car = _model.getObjectFactory().create(TestCar.class, 
carAttributes, null);
 
         assertEquals(carName, car.getName());
 
@@ -343,7 +343,7 @@ public class AbstractConfiguredObjectTes
         carAttributes.put(ConfiguredObject.NAME, "myCar");
         carAttributes.put(ConfiguredObject.TYPE, 
TestStandardCarImpl.TEST_STANDARD_CAR_TYPE);
 
-        TestCar car = _model.getObjectFactory().create(TestCar.class, 
carAttributes);
+        TestCar car = _model.getObjectFactory().create(TestCar.class, 
carAttributes, null);
 
         Map<String, Object> engineAttributes = new HashMap<>();
         engineAttributes.put(ConfiguredObject.NAME, "myEngine");
@@ -372,7 +372,7 @@ public class AbstractConfiguredObjectTes
         carAttributes.put(ConfiguredObject.NAME, carName);
         carAttributes.put(ConfiguredObject.TYPE, 
TestKitCarImpl.TEST_KITCAR_TYPE);
 
-        TestCar car = _model.getObjectFactory().create(TestCar.class, 
carAttributes);
+        TestCar car = _model.getObjectFactory().create(TestCar.class, 
carAttributes, null);
         assertEquals(0, car.getChildren(TestEngine.class).size());
 
         String engineName = "myEngine";

Modified: 
qpid/java/trunk/broker-core/src/test/java/org/apache/qpid/server/model/testmodels/hierarchy/AncestorAttributeResolverTest.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/broker-core/src/test/java/org/apache/qpid/server/model/testmodels/hierarchy/AncestorAttributeResolverTest.java?rev=1775810&r1=1775809&r2=1775810&view=diff
==============================================================================
--- 
qpid/java/trunk/broker-core/src/test/java/org/apache/qpid/server/model/testmodels/hierarchy/AncestorAttributeResolverTest.java
 (original)
+++ 
qpid/java/trunk/broker-core/src/test/java/org/apache/qpid/server/model/testmodels/hierarchy/AncestorAttributeResolverTest.java
 Fri Dec 23 10:42:25 2016
@@ -50,7 +50,7 @@ public class AncestorAttributeResolverTe
         carAttributes.put(ConfiguredObject.NAME, CAR_NAME);
         carAttributes.put(ConfiguredObject.TYPE, 
TestKitCarImpl.TEST_KITCAR_TYPE);
 
-        _car = _model.getObjectFactory().create(TestCar.class, carAttributes);
+        _car = _model.getObjectFactory().create(TestCar.class, carAttributes, 
null);
 
         assertEquals(CAR_NAME, _car.getName());
 
@@ -111,7 +111,7 @@ public class AncestorAttributeResolverTe
         parameters.put("string", "value");
         carAttributes.put("parameters", parameters);
 
-        _car = _model.getObjectFactory().create(TestCar.class, carAttributes);
+        _car = _model.getObjectFactory().create(TestCar.class, carAttributes, 
null);
 
         _ancestorAttributeResolver = new AncestorAttributeResolver(_car);
         String actual = 
_ancestorAttributeResolver.resolve("ancestor:testcar:parameters", null);
@@ -128,7 +128,7 @@ public class AncestorAttributeResolverTe
         carAttributes.put(ConfiguredObject.TYPE, 
TestKitCarImpl.TEST_KITCAR_TYPE);
         carAttributes.put("alternateEngine", _engine);
 
-        _car = _model.getObjectFactory().create(TestCar.class, carAttributes);
+        _car = _model.getObjectFactory().create(TestCar.class, carAttributes, 
null);
 
         _ancestorAttributeResolver = new AncestorAttributeResolver(_car);
         String actual = 
_ancestorAttributeResolver.resolve("ancestor:testcar:alternateEngine", null);

Modified: 
qpid/java/trunk/broker-core/src/test/java/org/apache/qpid/server/model/testmodels/hierarchy/ConfiguredObjectTypeRegistryTest.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/broker-core/src/test/java/org/apache/qpid/server/model/testmodels/hierarchy/ConfiguredObjectTypeRegistryTest.java?rev=1775810&r1=1775809&r2=1775810&view=diff
==============================================================================
--- 
qpid/java/trunk/broker-core/src/test/java/org/apache/qpid/server/model/testmodels/hierarchy/ConfiguredObjectTypeRegistryTest.java
 (original)
+++ 
qpid/java/trunk/broker-core/src/test/java/org/apache/qpid/server/model/testmodels/hierarchy/ConfiguredObjectTypeRegistryTest.java
 Fri Dec 23 10:42:25 2016
@@ -86,7 +86,7 @@ public class ConfiguredObjectTypeRegistr
         attributes.put(ConfiguredObject.NAME, objectName);
         attributes.put(ConfiguredObject.TYPE, TestKitCarImpl.TEST_KITCAR_TYPE);
 
-        TestCar object = 
TestModel.getInstance().getObjectFactory().create(TestCar.class, attributes);
+        TestCar object = 
TestModel.getInstance().getObjectFactory().create(TestCar.class, attributes, 
null);
 
         assertEquals(TestKitCarImpl.class, object.getTypeClass());
 
@@ -132,7 +132,7 @@ public class ConfiguredObjectTypeRegistr
         attributes.put(ConfiguredObject.NAME, objectName);
         attributes.put(ConfiguredObject.TYPE, TestKitCarImpl.TEST_KITCAR_TYPE);
 
-        TestCar object = 
TestModel.getInstance().getObjectFactory().create(TestCar.class, attributes);
+        TestCar object = 
TestModel.getInstance().getObjectFactory().create(TestCar.class, attributes, 
null);
         Map<String, ConfiguredObjectOperation<?>> operations = 
_typeRegistry.getOperations(object.getClass());
 
         ConfiguredObjectOperation<TestCar<?>> operation = 
(ConfiguredObjectOperation<TestCar<?>>) operations.get("startEngine");

Modified: 
qpid/java/trunk/broker-core/src/test/java/org/apache/qpid/server/model/testmodels/hierarchy/TestAbstractEngineImpl.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/broker-core/src/test/java/org/apache/qpid/server/model/testmodels/hierarchy/TestAbstractEngineImpl.java?rev=1775810&r1=1775809&r2=1775810&view=diff
==============================================================================
--- 
qpid/java/trunk/broker-core/src/test/java/org/apache/qpid/server/model/testmodels/hierarchy/TestAbstractEngineImpl.java
 (original)
+++ 
qpid/java/trunk/broker-core/src/test/java/org/apache/qpid/server/model/testmodels/hierarchy/TestAbstractEngineImpl.java
 Fri Dec 23 10:42:25 2016
@@ -43,10 +43,10 @@ public class TestAbstractEngineImpl<X ex
     @ManagedAttributeField
     private RuntimeException _stateChangeException;
 
-    public TestAbstractEngineImpl(final Map<Class<? extends ConfiguredObject>, 
ConfiguredObject<?>> parents,
+    public TestAbstractEngineImpl(final ConfiguredObject<?> parent,
                                   final Map<String, Object> attributes)
     {
-        super(parents, attributes);
+        super(parent, attributes);
     }
 
     @Override



---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to