diff options
| author | Robert Godfrey <rgodfrey@apache.org> | 2014-04-20 17:00:46 +0000 |
|---|---|---|
| committer | Robert Godfrey <rgodfrey@apache.org> | 2014-04-20 17:00:46 +0000 |
| commit | 130ff22d820d9c20a1bc7545031954ae59dad0ef (patch) | |
| tree | bfe88e4d58c61d9f5c0a4e56dc9c5a51f39579d6 /qpid/java/broker-plugins | |
| parent | 3d34526bc2fe159b265d5a7c58ffd687ba00c499 (diff) | |
| download | qpid-python-130ff22d820d9c20a1bc7545031954ae59dad0ef.tar.gz | |
QPID-5713 : [Java Broker] Remove non-test references to model singleton, and instead treat as an instance variable
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1588794 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'qpid/java/broker-plugins')
9 files changed, 62 insertions, 33 deletions
diff --git a/qpid/java/broker-plugins/access-control/src/test/java/org/apache/qpid/server/security/access/plugins/ACLFileAccessControlProviderFactoryTest.java b/qpid/java/broker-plugins/access-control/src/test/java/org/apache/qpid/server/security/access/plugins/ACLFileAccessControlProviderFactoryTest.java index 102cfb4be1..fab6ad1750 100644 --- a/qpid/java/broker-plugins/access-control/src/test/java/org/apache/qpid/server/security/access/plugins/ACLFileAccessControlProviderFactoryTest.java +++ b/qpid/java/broker-plugins/access-control/src/test/java/org/apache/qpid/server/security/access/plugins/ACLFileAccessControlProviderFactoryTest.java @@ -20,6 +20,9 @@ */ package org.apache.qpid.server.security.access.plugins; +import static org.mockito.Mockito.mock; +import static org.mockito.Mockito.when; + import java.io.File; import java.util.HashMap; import java.util.Map; @@ -27,19 +30,32 @@ import java.util.UUID; import java.util.regex.Pattern; import org.apache.qpid.server.configuration.IllegalConfigurationException; -import org.apache.qpid.server.logging.EventLoggerProvider; import org.apache.qpid.server.model.AccessControlProvider; import org.apache.qpid.server.model.Broker; +import org.apache.qpid.server.model.BrokerModel; +import org.apache.qpid.server.model.ConfiguredObjectFactory; +import org.apache.qpid.server.model.ConfiguredObjectFactoryImpl; import org.apache.qpid.server.model.GroupProvider; -import org.apache.qpid.server.security.AccessControl; import org.apache.qpid.server.security.access.FileAccessControlProviderConstants; import org.apache.qpid.test.utils.QpidTestCase; import org.apache.qpid.test.utils.TestFileUtils; -import static org.mockito.Mockito.mock; - public class ACLFileAccessControlProviderFactoryTest extends QpidTestCase { + private Broker _broker; + + @Override + public void setUp() throws Exception + { + super.setUp(); + _broker = mock(Broker.class); + ConfiguredObjectFactory objectFactory = new ConfiguredObjectFactoryImpl(BrokerModel.getInstance()); + + when(_broker.getObjectFactory()).thenReturn(objectFactory); + when(_broker.getModel()).thenReturn(objectFactory.getModel()); + when(_broker.getCategoryClass()).thenReturn(Broker.class); + } + public void testCreateInstanceWhenAclFileIsNotPresent() { ACLFileAccessControlProviderFactory factory = new ACLFileAccessControlProviderFactory(); @@ -48,7 +64,7 @@ public class ACLFileAccessControlProviderFactoryTest extends QpidTestCase attributes.put(AccessControlProvider.NAME, "acl"); try { - AccessControlProvider acl = factory.create(attributes, mock(Broker.class)); + AccessControlProvider acl = factory.create(null, attributes, _broker); fail("ACL was created without a configuration file path specified"); } catch(IllegalArgumentException e) @@ -66,7 +82,7 @@ public class ACLFileAccessControlProviderFactoryTest extends QpidTestCase attributes.put(AccessControlProvider.NAME, "acl"); attributes.put(GroupProvider.TYPE, FileAccessControlProviderConstants.ACL_FILE_PROVIDER_TYPE); attributes.put(FileAccessControlProviderConstants.PATH, aclFile.getAbsolutePath()); - AccessControlProvider acl = factory.create(attributes, mock(Broker.class)); + AccessControlProvider acl = factory.create(null, attributes, _broker); acl.getAccessControl().open(); assertNotNull("ACL was not created from acl file: " + aclFile.getAbsolutePath(), acl); @@ -84,7 +100,7 @@ public class ACLFileAccessControlProviderFactoryTest extends QpidTestCase attributes.put(FileAccessControlProviderConstants.PATH, aclFile.getAbsolutePath()); try { - AccessControlProvider control = factory.create(attributes, mock(Broker.class)); + AccessControlProvider control = factory.create(null, attributes, _broker); control.getAccessControl().open(); fail("It should not be possible to create and initialise ACL with non existing file"); } diff --git a/qpid/java/broker-plugins/management-amqp/src/main/java/org/apache/qpid/server/management/amqp/ManagementNode.java b/qpid/java/broker-plugins/management-amqp/src/main/java/org/apache/qpid/server/management/amqp/ManagementNode.java index 2c6bc1b44e..2cf628e7c5 100644 --- a/qpid/java/broker-plugins/management-amqp/src/main/java/org/apache/qpid/server/management/amqp/ManagementNode.java +++ b/qpid/java/broker-plugins/management-amqp/src/main/java/org/apache/qpid/server/management/amqp/ManagementNode.java @@ -54,7 +54,6 @@ import org.apache.qpid.server.model.AbstractConfiguredObject; import org.apache.qpid.server.model.ConfigurationChangeListener; import org.apache.qpid.server.model.ConfiguredObject; import org.apache.qpid.server.model.ManagedObject; -import org.apache.qpid.server.model.Model; import org.apache.qpid.server.model.State; import org.apache.qpid.server.plugin.MessageConverter; import org.apache.qpid.server.plugin.SystemNodeCreator; @@ -201,7 +200,7 @@ class ManagementNode implements MessageSource, MessageDestination if(entityType.creatable()) { boolean isCreatableChild = false; - for(Class<? extends ConfiguredObject> parentConfig : Model.getInstance().getParentTypes(clazz)) + for(Class<? extends ConfiguredObject> parentConfig : _managedObject.getModel().getParentTypes(clazz)) { isCreatableChild = parentConfig.isAssignableFrom(_managedObject.getClass()); if(isCreatableChild) @@ -243,7 +242,7 @@ class ManagementNode implements MessageSource, MessageDestination if(ConfiguredObject.class.isAssignableFrom(clazz)) { - Collection<Class<? extends ConfiguredObject>> childTypes = Model.getInstance().getChildTypes(clazz); + Collection<Class<? extends ConfiguredObject>> childTypes = _managedObject.getModel().getChildTypes(clazz); for(Class<? extends ConfiguredObject> childClass : childTypes) { populateTypeMetaData(childClass, true); @@ -1214,7 +1213,7 @@ class ManagementNode implements MessageSource, MessageDestination final Class managementClass = getManagementClass(_managedObject.getClass()); _entities.get(_entityTypes.get(managementClass.getName())).put(_managedObject.getName(), _managedObject); - Collection<Class<? extends ConfiguredObject>> childClasses = Model.getInstance().getChildTypes(managementClass); + Collection<Class<? extends ConfiguredObject>> childClasses = object.getModel().getChildTypes(managementClass); for(Class<? extends ConfiguredObject> childClass : childClasses) { if(getManagementClass(childClass) != null) diff --git a/qpid/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/servlet/rest/ConfiguredObjectToMapConverter.java b/qpid/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/servlet/rest/ConfiguredObjectToMapConverter.java index b4e386a685..7c5ba5a6be 100644 --- a/qpid/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/servlet/rest/ConfiguredObjectToMapConverter.java +++ b/qpid/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/servlet/rest/ConfiguredObjectToMapConverter.java @@ -26,15 +26,12 @@ import java.util.List; import java.util.Map; import org.apache.qpid.server.model.ConfiguredObject; -import org.apache.qpid.server.model.Model; public class ConfiguredObjectToMapConverter { /** Name of the key used for the statistics map */ public static final String STATISTICS_MAP_KEY = "statistics"; - private Model _model = Model.getInstance(); - public Map<String, Object> convertObjectToMap(final ConfiguredObject<?> confObject, Class<? extends ConfiguredObject> clazz, int depth) @@ -51,13 +48,6 @@ public class ConfiguredObjectToMapConverter return object; } - /** - * Used for unit test only. - */ - void setModel(Model model) - { - _model = model; - } private void incorporateAttributesIntoMap( final ConfiguredObject<?> confObject, Map<String, Object> object) @@ -110,7 +100,7 @@ public class ConfiguredObjectToMapConverter Class<? extends ConfiguredObject> clazz, int depth, Map<String, Object> object) { - for(Class<? extends ConfiguredObject> childClass : _model.getChildTypes(clazz)) + for(Class<? extends ConfiguredObject> childClass : confObject.getModel().getChildTypes(clazz)) { Collection<? extends ConfiguredObject> children = confObject.getChildren(childClass); if(children != null) diff --git a/qpid/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/servlet/rest/RestServlet.java b/qpid/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/servlet/rest/RestServlet.java index 22316fcf54..0309ecc838 100644 --- a/qpid/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/servlet/rest/RestServlet.java +++ b/qpid/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/servlet/rest/RestServlet.java @@ -43,7 +43,6 @@ import org.codehaus.jackson.map.SerializationConfig; import org.apache.qpid.server.model.Broker; import org.apache.qpid.server.model.ConfiguredObject; -import org.apache.qpid.server.model.Model; import org.apache.qpid.server.model.State; public class RestServlet extends AbstractServlet @@ -152,7 +151,7 @@ public class RestServlet extends AbstractServlet for(int i = 0; i < _hierarchy.length; i++) { - if(i == 0 || Model.getInstance().getChildTypes(_hierarchy[i - 1]).contains(_hierarchy[i])) + if(i == 0 || getBroker().getModel().getChildTypes(_hierarchy[i - 1]).contains(_hierarchy[i])) { for(ConfiguredObject<?> parent : parents) @@ -276,7 +275,7 @@ public class RestServlet extends AbstractServlet ConfiguredObject child) { Collection<ConfiguredObject> ancestors = new HashSet<ConfiguredObject>(); - Collection<Class<? extends ConfiguredObject>> parentTypes = Model.getInstance().getParentTypes(childType); + Collection<Class<? extends ConfiguredObject>> parentTypes = child.getModel().getParentTypes(childType); for(Class<? extends ConfiguredObject> parentClazz : parentTypes) { @@ -406,7 +405,7 @@ public class RestServlet extends AbstractServlet { for(int j = i-1; j >=0; j--) { - if(Model.getInstance().getChildTypes(_hierarchy[j]).contains(_hierarchy[i])) + if(getBroker().getModel().getChildTypes(_hierarchy[j]).contains(_hierarchy[i])) { for(ConfiguredObject<?> parent : objects[j]) { @@ -426,7 +425,7 @@ public class RestServlet extends AbstractServlet } List<ConfiguredObject> parents = new ArrayList<ConfiguredObject>(); Class<? extends ConfiguredObject> objClass = getConfiguredClass(); - Collection<Class<? extends ConfiguredObject>> parentClasses = Model.getInstance().getParentTypes(objClass); + Collection<Class<? extends ConfiguredObject>> parentClasses = getBroker().getModel().getParentTypes(objClass); for(int i = _hierarchy.length-2; i >=0 ; i--) { if(parentClasses.contains(_hierarchy[i])) @@ -488,7 +487,7 @@ public class RestServlet extends AbstractServlet return true; } - Collection<Class<? extends ConfiguredObject>> parentClasses = Model.getInstance().getParentTypes(objClass); + Collection<Class<? extends ConfiguredObject>> parentClasses = obj.getModel().getParentTypes(objClass); for (ConfiguredObject parent : otherParents) { diff --git a/qpid/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/servlet/rest/StructureServlet.java b/qpid/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/servlet/rest/StructureServlet.java index 40d3c02768..907610c8d2 100644 --- a/qpid/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/servlet/rest/StructureServlet.java +++ b/qpid/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/servlet/rest/StructureServlet.java @@ -28,12 +28,12 @@ import javax.servlet.ServletException; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; -import org.apache.qpid.server.model.Broker; -import org.apache.qpid.server.model.ConfiguredObject; -import org.apache.qpid.server.model.Model; import org.codehaus.jackson.map.ObjectMapper; import org.codehaus.jackson.map.SerializationConfig; +import org.apache.qpid.server.model.Broker; +import org.apache.qpid.server.model.ConfiguredObject; + public class StructureServlet extends AbstractServlet { public StructureServlet() @@ -70,7 +70,7 @@ public class StructureServlet extends AbstractServlet structure.put("id", object.getId()); structure.put("name", object.getName()); - for(Class<? extends ConfiguredObject> childClass : Model.getInstance().getChildTypes(clazz)) + for(Class<? extends ConfiguredObject> childClass : object.getModel().getChildTypes(clazz)) { Collection<? extends ConfiguredObject> children = object.getChildren(childClass); if(children != null) diff --git a/qpid/java/broker-plugins/management-http/src/test/java/org/apache/qpid/server/management/plugin/HttpManagementFactoryTest.java b/qpid/java/broker-plugins/management-http/src/test/java/org/apache/qpid/server/management/plugin/HttpManagementFactoryTest.java index fbdb34fb96..809b2405b1 100644 --- a/qpid/java/broker-plugins/management-http/src/test/java/org/apache/qpid/server/management/plugin/HttpManagementFactoryTest.java +++ b/qpid/java/broker-plugins/management-http/src/test/java/org/apache/qpid/server/management/plugin/HttpManagementFactoryTest.java @@ -26,7 +26,10 @@ import java.util.Map; import java.util.UUID; import org.apache.qpid.server.model.Broker; +import org.apache.qpid.server.model.BrokerModel; import org.apache.qpid.server.model.ConfiguredObject; +import org.apache.qpid.server.model.ConfiguredObjectFactory; +import org.apache.qpid.server.model.ConfiguredObjectFactoryImpl; import org.apache.qpid.test.utils.QpidTestCase; public class HttpManagementFactoryTest extends QpidTestCase @@ -46,6 +49,9 @@ public class HttpManagementFactoryTest extends QpidTestCase _attributes.put(HttpManagement.TIME_OUT, SESSION_TIMEOUT); _attributes.put(ConfiguredObject.ID, _id); when(_broker.getCategoryClass()).thenReturn(Broker.class); + ConfiguredObjectFactory objectFactory = new ConfiguredObjectFactoryImpl(BrokerModel.getInstance()); + when(_broker.getObjectFactory()).thenReturn(objectFactory); + when(_broker.getModel()).thenReturn(objectFactory.getModel()); HttpManagement management = _pluginFactory.createInstance(_attributes, _broker); management.open(); diff --git a/qpid/java/broker-plugins/management-http/src/test/java/org/apache/qpid/server/management/plugin/HttpManagementTest.java b/qpid/java/broker-plugins/management-http/src/test/java/org/apache/qpid/server/management/plugin/HttpManagementTest.java index 56dc947482..b747ee5435 100644 --- a/qpid/java/broker-plugins/management-http/src/test/java/org/apache/qpid/server/management/plugin/HttpManagementTest.java +++ b/qpid/java/broker-plugins/management-http/src/test/java/org/apache/qpid/server/management/plugin/HttpManagementTest.java @@ -31,7 +31,10 @@ import java.util.UUID; import org.apache.qpid.server.model.AuthenticationProvider; import org.apache.qpid.server.model.Broker; +import org.apache.qpid.server.model.BrokerModel; import org.apache.qpid.server.model.ConfiguredObject; +import org.apache.qpid.server.model.ConfiguredObjectFactory; +import org.apache.qpid.server.model.ConfiguredObjectFactoryImpl; import org.apache.qpid.test.utils.QpidTestCase; public class HttpManagementTest extends QpidTestCase @@ -46,6 +49,12 @@ public class HttpManagementTest extends QpidTestCase super.setUp(); _id = UUID.randomUUID(); _broker = mock(Broker.class); + ConfiguredObjectFactory objectFactory = new ConfiguredObjectFactoryImpl(BrokerModel.getInstance()); + + when(_broker.getObjectFactory()).thenReturn(objectFactory); + when(_broker.getModel()).thenReturn(objectFactory.getModel()); + when(_broker.getCategoryClass()).thenReturn(Broker.class); + Map<String, Object> attributes = new HashMap<String, Object>(); attributes.put(HttpManagement.HTTP_BASIC_AUTHENTICATION_ENABLED, false); attributes.put(HttpManagement.HTTPS_BASIC_AUTHENTICATION_ENABLED, true); diff --git a/qpid/java/broker-plugins/management-http/src/test/java/org/apache/qpid/server/management/plugin/servlet/rest/ConfiguredObjectToMapConverterTest.java b/qpid/java/broker-plugins/management-http/src/test/java/org/apache/qpid/server/management/plugin/servlet/rest/ConfiguredObjectToMapConverterTest.java index 0c2b6a5385..82c8d01379 100644 --- a/qpid/java/broker-plugins/management-http/src/test/java/org/apache/qpid/server/management/plugin/servlet/rest/ConfiguredObjectToMapConverterTest.java +++ b/qpid/java/broker-plugins/management-http/src/test/java/org/apache/qpid/server/management/plugin/servlet/rest/ConfiguredObjectToMapConverterTest.java @@ -93,9 +93,10 @@ public class ConfiguredObjectToMapConverterTest extends TestCase final String childAttributeValue = "childvalue"; Model model = createTestModel(); - _converter.setModel(model); TestChild mockChild = mock(TestChild.class); + when(mockChild.getModel()).thenReturn(model); + when(_configuredObject.getModel()).thenReturn(model); configureMockToReturnOneAttribute(mockChild, childAttributeName, childAttributeValue); when(_configuredObject.getChildren(TestChild.class)).thenReturn(Arrays.asList(mockChild)); diff --git a/qpid/java/broker-plugins/management-jmx/src/test/java/org/apache/qpid/server/jmx/JMXManagementFactoryTest.java b/qpid/java/broker-plugins/management-jmx/src/test/java/org/apache/qpid/server/jmx/JMXManagementFactoryTest.java index de5b056d9d..3014621913 100644 --- a/qpid/java/broker-plugins/management-jmx/src/test/java/org/apache/qpid/server/jmx/JMXManagementFactoryTest.java +++ b/qpid/java/broker-plugins/management-jmx/src/test/java/org/apache/qpid/server/jmx/JMXManagementFactoryTest.java @@ -19,13 +19,17 @@ package org.apache.qpid.server.jmx; import static org.mockito.Mockito.mock; +import static org.mockito.Mockito.when; import java.util.HashMap; import java.util.Map; import java.util.UUID; import org.apache.qpid.server.model.Broker; +import org.apache.qpid.server.model.BrokerModel; import org.apache.qpid.server.model.ConfiguredObject; +import org.apache.qpid.server.model.ConfiguredObjectFactory; +import org.apache.qpid.server.model.ConfiguredObjectFactoryImpl; import org.apache.qpid.test.utils.QpidTestCase; public class JMXManagementFactoryTest extends QpidTestCase @@ -40,6 +44,11 @@ public class JMXManagementFactoryTest extends QpidTestCase _attributes.put(ConfiguredObject.ID,UUID.randomUUID()); _attributes.put(ConfiguredObject.TYPE, JMXManagementPlugin.PLUGIN_TYPE); _attributes.put(ConfiguredObject.NAME, getName()); + ConfiguredObjectFactory objectFactory = new ConfiguredObjectFactoryImpl(BrokerModel.getInstance()); + + when(_broker.getObjectFactory()).thenReturn(objectFactory); + when(_broker.getModel()).thenReturn(objectFactory.getModel()); + when(_broker.getCategoryClass()).thenReturn(Broker.class); JMXManagementPlugin jmxManagement = _jmxManagementFactory.createInstance( _attributes, _broker); jmxManagement.open(); |
