diff options
| author | Robert Godfrey <rgodfrey@apache.org> | 2014-04-17 01:07:34 +0000 |
|---|---|---|
| committer | Robert Godfrey <rgodfrey@apache.org> | 2014-04-17 01:07:34 +0000 |
| commit | 7177135ca38651943b3701b171ef29e4fa52ad86 (patch) | |
| tree | 4d221e6969f959b7c0c2a3c0736f71bdf935b459 /qpid/java/systests/src | |
| parent | 359bd6e75abf11027b668d33d2d733b4cd399e38 (diff) | |
| download | qpid-python-7177135ca38651943b3701b171ef29e4fa52ad86.tar.gz | |
QPID-5709 : [Java Broker] Replace exchange registry / factory with use of common configured object mechanism for registration of children
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1588126 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'qpid/java/systests/src')
4 files changed, 54 insertions, 38 deletions
diff --git a/qpid/java/systests/src/main/java/org/apache/qpid/systest/rest/GroupProviderRestTest.java b/qpid/java/systests/src/main/java/org/apache/qpid/systest/rest/GroupProviderRestTest.java index d9320a93d0..7a954c0185 100644 --- a/qpid/java/systests/src/main/java/org/apache/qpid/systest/rest/GroupProviderRestTest.java +++ b/qpid/java/systests/src/main/java/org/apache/qpid/systest/rest/GroupProviderRestTest.java @@ -36,7 +36,8 @@ import org.apache.qpid.server.model.GroupProvider; import org.apache.qpid.server.model.LifetimePolicy; import org.apache.qpid.server.model.State; import org.apache.qpid.server.model.UUIDGenerator; -import org.apache.qpid.server.security.group.FileGroupManagerFactory; +import org.apache.qpid.server.model.adapter.FileBasedGroupProvider; +import org.apache.qpid.server.model.adapter.FileBasedGroupProviderImpl; import org.apache.qpid.test.utils.TestBrokerConfiguration; import org.apache.qpid.test.utils.TestFileUtils; @@ -76,11 +77,11 @@ public class GroupProviderRestTest extends QpidRestTestCase assertEquals("Unexpected number of providers", 1, providerDetails.size()); for (Map<String, Object> provider : providerDetails) { - assertProvider(FILE_GROUP_MANAGER, FileGroupManagerFactory.GROUP_FILE_PROVIDER_TYPE, provider); + assertProvider(FILE_GROUP_MANAGER, FileBasedGroupProviderImpl.GROUP_FILE_PROVIDER_TYPE, provider); Map<String, Object> data = getRestTestHelper().getJsonAsSingletonList("/rest/groupprovider/" + provider.get(GroupProvider.NAME)); assertNotNull("Cannot load data for " + provider.get(GroupProvider.NAME), data); - assertProvider(FILE_GROUP_MANAGER, FileGroupManagerFactory.GROUP_FILE_PROVIDER_TYPE, data); + assertProvider(FILE_GROUP_MANAGER, FileBasedGroupProviderImpl.GROUP_FILE_PROVIDER_TYPE, data); } } @@ -127,16 +128,16 @@ public class GroupProviderRestTest extends QpidRestTestCase String providerName = getTestName(); Map<String, Object> attributes = new HashMap<String, Object>(); attributes.put(GroupProvider.NAME, providerName); - attributes.put(GroupProvider.TYPE, FileGroupManagerFactory.GROUP_FILE_PROVIDER_TYPE); - attributes.put(FileGroupManagerFactory.PATH, groupFile.getAbsolutePath()); + attributes.put(GroupProvider.TYPE, FileBasedGroupProviderImpl.GROUP_FILE_PROVIDER_TYPE); + attributes.put(FileBasedGroupProvider.PATH, groupFile.getAbsolutePath()); int responseCode = getRestTestHelper().submitRequest("/rest/groupprovider/" + providerName, "PUT", attributes); assertEquals("Group provider was not created", 201, responseCode); Map<String, Object> data = getRestTestHelper().getJsonAsSingletonList("/rest/groupprovider/" + providerName + "?depth=2"); - assertProvider(providerName, FileGroupManagerFactory.GROUP_FILE_PROVIDER_TYPE, data); + assertProvider(providerName, FileBasedGroupProviderImpl.GROUP_FILE_PROVIDER_TYPE, data); assertEquals("Unexpected name", providerName, data.get(GroupProvider.NAME)); - assertEquals("Unexpected path", groupFile.getAbsolutePath(), data.get(FileGroupManagerFactory.PATH)); + assertEquals("Unexpected path", groupFile.getAbsolutePath(), data.get(FileBasedGroupProvider.PATH)); @SuppressWarnings("unchecked") List<Map<String, Object>> groups = (List<Map<String, Object>>) data.get("groups"); @@ -174,7 +175,7 @@ public class GroupProviderRestTest extends QpidRestTestCase String providerName = getTestName(); Map<String, Object> attributes = new HashMap<String, Object>(); attributes.put(GroupProvider.NAME, providerName); - attributes.put(GroupProvider.TYPE, FileGroupManagerFactory.GROUP_FILE_PROVIDER_TYPE); + attributes.put(GroupProvider.TYPE, FileBasedGroupProviderImpl.GROUP_FILE_PROVIDER_TYPE); int responseCode = getRestTestHelper().submitRequest("/rest/groupprovider/" + providerName, "PUT", attributes); assertEquals("Group provider was created", 409, responseCode); @@ -189,15 +190,15 @@ public class GroupProviderRestTest extends QpidRestTestCase String providerName = getTestName(); Map<String, Object> attributes = new HashMap<String, Object>(); attributes.put(GroupProvider.NAME, providerName); - attributes.put(GroupProvider.TYPE, FileGroupManagerFactory.GROUP_FILE_PROVIDER_TYPE); - attributes.put(FileGroupManagerFactory.PATH, groupFile.getAbsolutePath()); + attributes.put(GroupProvider.TYPE, FileBasedGroupProviderImpl.GROUP_FILE_PROVIDER_TYPE); + attributes.put(FileBasedGroupProvider.PATH, groupFile.getAbsolutePath()); int responseCode = getRestTestHelper().submitRequest("/rest/groupprovider/" + providerName, "PUT", attributes); assertEquals("Group provider was not created", 201, responseCode); Map<String, Object> data = getRestTestHelper().getJsonAsSingletonList("/rest/groupprovider/" + providerName); assertEquals("Unexpected name", providerName, data.get(GroupProvider.NAME)); - assertEquals("Unexpected path", groupFile.getAbsolutePath(), data.get(FileGroupManagerFactory.PATH)); + assertEquals("Unexpected path", groupFile.getAbsolutePath(), data.get(FileBasedGroupProvider.PATH)); @SuppressWarnings("unchecked") List<Map<String, Object>> groups = (List<Map<String, Object>>) data.get("groups"); @@ -220,8 +221,8 @@ public class GroupProviderRestTest extends QpidRestTestCase { Map<String, Object> attributes = new HashMap<String, Object>(); attributes.put(GroupProvider.NAME, providerName); - attributes.put(GroupProvider.TYPE, FileGroupManagerFactory.GROUP_FILE_PROVIDER_TYPE); - attributes.put(FileGroupManagerFactory.PATH, groupFile.getAbsolutePath()); + attributes.put(GroupProvider.TYPE, FileBasedGroupProviderImpl.GROUP_FILE_PROVIDER_TYPE); + attributes.put(FileBasedGroupProvider.PATH, groupFile.getAbsolutePath()); int responseCode = getRestTestHelper().submitRequest("/rest/groupprovider/" + providerName, "PUT", attributes); assertEquals("Group provider was not created", 201, responseCode); @@ -244,8 +245,8 @@ public class GroupProviderRestTest extends QpidRestTestCase { Map<String, Object> attributes = new HashMap<String, Object>(); attributes.put(GroupProvider.NAME, providerName); - attributes.put(GroupProvider.TYPE, FileGroupManagerFactory.GROUP_FILE_PROVIDER_TYPE); - attributes.put(FileGroupManagerFactory.PATH, groupFile.getAbsolutePath()); + attributes.put(GroupProvider.TYPE, FileBasedGroupProviderImpl.GROUP_FILE_PROVIDER_TYPE); + attributes.put(FileBasedGroupProvider.PATH, groupFile.getAbsolutePath()); int responseCode = getRestTestHelper().submitRequest("/rest/groupprovider/" + providerName, "PUT", attributes); assertEquals("Expected to fail because we can have only one password provider", 201, responseCode); @@ -271,14 +272,14 @@ public class GroupProviderRestTest extends QpidRestTestCase { Map<String, Object> attributes = new HashMap<String, Object>(); attributes.put(GroupProvider.NAME, providerName); - attributes.put(GroupProvider.TYPE, FileGroupManagerFactory.GROUP_FILE_PROVIDER_TYPE); - attributes.put(FileGroupManagerFactory.PATH, groupFile.getAbsolutePath()); + attributes.put(GroupProvider.TYPE, FileBasedGroupProviderImpl.GROUP_FILE_PROVIDER_TYPE); + attributes.put(FileBasedGroupProvider.PATH, groupFile.getAbsolutePath()); int responseCode = getRestTestHelper().submitRequest("/rest/groupprovider/" + providerName, "PUT", attributes); assertEquals("Expected to fail because we can have only one password provider", 201, responseCode); File newGroupFile = new File(TMP_FOLDER + File.separator + getTestName() + File.separator + "groups"); - attributes.put(FileGroupManagerFactory.PATH, newGroupFile.getAbsolutePath()); + attributes.put(FileBasedGroupProvider.PATH, newGroupFile.getAbsolutePath()); responseCode = getRestTestHelper().submitRequest("/rest/groupprovider/" + providerName, "PUT", attributes); assertEquals("Expected to fail because we can have only one password provider", 409, responseCode); @@ -310,7 +311,7 @@ public class GroupProviderRestTest extends QpidRestTestCase Map<String, Object> groupProvider = getRestTestHelper().getJsonAsSingletonList("/rest/groupprovider/" + TestBrokerConfiguration.ENTRY_NAME_GROUP_FILE); assertEquals("Unexpected id", id.toString(), groupProvider.get(GroupProvider.ID)); - assertEquals("Unexpected path", file.getAbsolutePath() , groupProvider.get(FileGroupManagerFactory.PATH)); + assertEquals("Unexpected path", file.getAbsolutePath() , groupProvider.get(FileBasedGroupProvider.PATH)); assertEquals("Unexpected state", State.ERRORED.name() , groupProvider.get(GroupProvider.STATE)); int status = getRestTestHelper().submitRequest("/rest/groupprovider/" + TestBrokerConfiguration.ENTRY_NAME_GROUP_FILE, "DELETE", null); diff --git a/qpid/java/systests/src/main/java/org/apache/qpid/systest/rest/acl/BrokerACLTest.java b/qpid/java/systests/src/main/java/org/apache/qpid/systest/rest/acl/BrokerACLTest.java index 1a39d9c3b0..541160cd80 100644 --- a/qpid/java/systests/src/main/java/org/apache/qpid/systest/rest/acl/BrokerACLTest.java +++ b/qpid/java/systests/src/main/java/org/apache/qpid/systest/rest/acl/BrokerACLTest.java @@ -41,13 +41,14 @@ import org.apache.qpid.server.model.Port; import org.apache.qpid.server.model.Protocol; import org.apache.qpid.server.model.TrustStore; import org.apache.qpid.server.model.VirtualHost; +import org.apache.qpid.server.model.adapter.FileBasedGroupProvider; +import org.apache.qpid.server.model.adapter.FileBasedGroupProviderImpl; import org.apache.qpid.server.security.FileKeyStore; import org.apache.qpid.server.security.FileTrustStore; import org.apache.qpid.server.security.access.FileAccessControlProviderConstants; import org.apache.qpid.server.security.acl.AbstractACLTestCase; import org.apache.qpid.server.security.auth.manager.AnonymousAuthenticationManagerFactory; import org.apache.qpid.server.security.auth.manager.PlainPasswordFileAuthenticationManagerFactory; -import org.apache.qpid.server.security.group.FileGroupManagerFactory; import org.apache.qpid.server.store.MessageStore; import org.apache.qpid.server.virtualhost.StandardVirtualHost; import org.apache.qpid.systest.rest.QpidRestTestCase; @@ -738,8 +739,8 @@ public class BrokerACLTest extends QpidRestTestCase Map<String, Object> attributes = new HashMap<String, Object>(); attributes.put(GroupProvider.NAME, groupProviderName); - attributes.put(GroupProvider.TYPE, FileGroupManagerFactory.GROUP_FILE_PROVIDER_TYPE); - attributes.put(FileGroupManagerFactory.PATH, "/path/to/file"); + attributes.put(GroupProvider.TYPE, FileBasedGroupProviderImpl.GROUP_FILE_PROVIDER_TYPE); + attributes.put(FileBasedGroupProvider.PATH, "/path/to/file"); responseCode = getRestTestHelper().submitRequest("/rest/groupprovider/" + groupProviderName, "PUT", attributes); assertEquals("Setting of group provider attributes should be allowed but not supported", 409, responseCode); } @@ -761,8 +762,8 @@ public class BrokerACLTest extends QpidRestTestCase Map<String, Object> attributes = new HashMap<String, Object>(); attributes.put(GroupProvider.NAME, groupProviderName); - attributes.put(GroupProvider.TYPE, FileGroupManagerFactory.GROUP_FILE_PROVIDER_TYPE); - attributes.put(FileGroupManagerFactory.PATH, "/path/to/file"); + attributes.put(GroupProvider.TYPE, FileBasedGroupProviderImpl.GROUP_FILE_PROVIDER_TYPE); + attributes.put(FileBasedGroupProvider.PATH, "/path/to/file"); responseCode = getRestTestHelper().submitRequest("/rest/groupprovider/" + groupProviderName, "PUT", attributes); assertEquals("Setting of group provider attributes should be denied", 403, responseCode); } @@ -852,8 +853,8 @@ public class BrokerACLTest extends QpidRestTestCase Map<String, Object> attributes = new HashMap<String, Object>(); attributes.put(GroupProvider.NAME, accessControlProviderName); - attributes.put(GroupProvider.TYPE, FileGroupManagerFactory.GROUP_FILE_PROVIDER_TYPE); - attributes.put(FileGroupManagerFactory.PATH, "/path/to/file"); + attributes.put(GroupProvider.TYPE, FileBasedGroupProviderImpl.GROUP_FILE_PROVIDER_TYPE); + attributes.put(FileBasedGroupProvider.PATH, "/path/to/file"); responseCode = getRestTestHelper().submitRequest("/rest/accesscontrolprovider/" + accessControlProviderName, "PUT", attributes); assertEquals("Setting of access control provider attributes should be allowed but not supported", 409, responseCode); } @@ -875,8 +876,8 @@ public class BrokerACLTest extends QpidRestTestCase Map<String, Object> attributes = new HashMap<String, Object>(); attributes.put(GroupProvider.NAME, accessControlProviderName); - attributes.put(GroupProvider.TYPE, FileGroupManagerFactory.GROUP_FILE_PROVIDER_TYPE); - attributes.put(FileGroupManagerFactory.PATH, "/path/to/file"); + attributes.put(GroupProvider.TYPE, FileBasedGroupProviderImpl.GROUP_FILE_PROVIDER_TYPE); + attributes.put(FileBasedGroupProvider.PATH, "/path/to/file"); responseCode = getRestTestHelper().submitRequest("/rest/accesscontrolprovider/" + accessControlProviderName, "PUT", attributes); assertEquals("Setting of access control provider attributes should be denied", 403, responseCode); } @@ -1073,8 +1074,8 @@ public class BrokerACLTest extends QpidRestTestCase File file = TestFileUtils.createTempFile(this, ".groups"); Map<String, Object> attributes = new HashMap<String, Object>(); attributes.put(GroupProvider.NAME, groupProviderName); - attributes.put(GroupProvider.TYPE, FileGroupManagerFactory.GROUP_FILE_PROVIDER_TYPE); - attributes.put(FileGroupManagerFactory.PATH, file.getAbsoluteFile()); + attributes.put(GroupProvider.TYPE, FileBasedGroupProviderImpl.GROUP_FILE_PROVIDER_TYPE); + attributes.put(FileBasedGroupProvider.PATH, file.getAbsoluteFile()); return getRestTestHelper().submitRequest("/rest/groupprovider/" + groupProviderName, "PUT", attributes); } diff --git a/qpid/java/systests/src/main/java/org/apache/qpid/test/utils/QpidBrokerTestCase.java b/qpid/java/systests/src/main/java/org/apache/qpid/test/utils/QpidBrokerTestCase.java index c31f2eed3d..0e9256e1c6 100755 --- a/qpid/java/systests/src/main/java/org/apache/qpid/test/utils/QpidBrokerTestCase.java +++ b/qpid/java/systests/src/main/java/org/apache/qpid/test/utils/QpidBrokerTestCase.java @@ -62,6 +62,7 @@ import org.apache.qpid.jms.ConnectionURL; import org.apache.qpid.server.Broker; import org.apache.qpid.server.BrokerOptions; import org.apache.qpid.server.configuration.BrokerProperties; +import org.apache.qpid.server.configuration.updater.TaskExecutor; import org.apache.qpid.server.model.Port; import org.apache.qpid.server.model.Protocol; import org.apache.qpid.server.model.VirtualHost; @@ -77,6 +78,8 @@ import org.apache.qpid.util.SystemUtils; */ public class QpidBrokerTestCase extends QpidTestCase { + private TaskExecutor _taskExecutor; + public enum BrokerType { EXTERNAL /** Test case relies on a Broker started independently of the test-suite */, @@ -226,7 +229,12 @@ public class QpidBrokerTestCase extends QpidTestCase public TestBrokerConfiguration createBrokerConfiguration(int port) { int actualPort = getPort(port); - TestBrokerConfiguration configuration = new TestBrokerConfiguration(System.getProperty(_brokerStoreType), _configFile.getAbsolutePath()); + if(_taskExecutor == null) + { + _taskExecutor = new TaskExecutor(); + _taskExecutor.start(); + } + TestBrokerConfiguration configuration = new TestBrokerConfiguration(System.getProperty(_brokerStoreType), _configFile.getAbsolutePath(), _taskExecutor); synchronized (_brokerConfigurations) { _brokerConfigurations.put(actualPort, configuration); @@ -341,7 +349,8 @@ public class QpidBrokerTestCase extends QpidTestCase protected void setUp() throws Exception { super.setUp(); - + _taskExecutor = new TaskExecutor(); + _taskExecutor.start(); if (!_configFile.exists()) { fail("Unable to test without config file:" + _configFile); @@ -1192,6 +1201,10 @@ public class QpidBrokerTestCase extends QpidTestCase { c.close(); } + if(_taskExecutor != null) + { + _taskExecutor.stop(); + } } /** diff --git a/qpid/java/systests/src/main/java/org/apache/qpid/test/utils/TestBrokerConfiguration.java b/qpid/java/systests/src/main/java/org/apache/qpid/test/utils/TestBrokerConfiguration.java index fd62ce75b9..3feb2eaab9 100644 --- a/qpid/java/systests/src/main/java/org/apache/qpid/test/utils/TestBrokerConfiguration.java +++ b/qpid/java/systests/src/main/java/org/apache/qpid/test/utils/TestBrokerConfiguration.java @@ -37,15 +37,16 @@ import org.apache.qpid.server.model.AccessControlProvider; import org.apache.qpid.server.model.AuthenticationProvider; import org.apache.qpid.server.model.Broker; 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.server.model.GroupProvider; import org.apache.qpid.server.model.Model; import org.apache.qpid.server.model.Plugin; import org.apache.qpid.server.model.PreferencesProvider; import org.apache.qpid.server.model.SystemContextImpl; import org.apache.qpid.server.model.UUIDGenerator; +import org.apache.qpid.server.model.adapter.FileBasedGroupProvider; +import org.apache.qpid.server.model.adapter.FileBasedGroupProviderImpl; import org.apache.qpid.server.security.access.FileAccessControlProviderConstants; -import org.apache.qpid.server.security.group.FileGroupManagerFactory; import org.apache.qpid.server.store.ConfiguredObjectRecord; import org.apache.qpid.server.store.ConfiguredObjectRecordImpl; import org.apache.qpid.server.store.handler.ConfiguredObjectRecordHandler; @@ -73,9 +74,9 @@ public class TestBrokerConfiguration private MemoryConfigurationEntryStore _store; private boolean _saved; - public TestBrokerConfiguration(String storeType, String intialStoreLocation) + public TestBrokerConfiguration(String storeType, String intialStoreLocation, final TaskExecutor taskExecutor) { - _store = new MemoryConfigurationEntryStore(new SystemContextImpl(new TaskExecutor(), new ConfiguredObjectFactory( + _store = new MemoryConfigurationEntryStore(new SystemContextImpl(taskExecutor, new ConfiguredObjectFactoryImpl( Model.getInstance()), mock(EventLogger.class), mock(LogRecorder.class), mock(BrokerOptions.class)), @@ -163,8 +164,8 @@ public class TestBrokerConfiguration { Map<String, Object> attributes = new HashMap<String, Object>(); attributes.put(GroupProvider.NAME, ENTRY_NAME_GROUP_FILE); - attributes.put(GroupProvider.TYPE, FileGroupManagerFactory.GROUP_FILE_PROVIDER_TYPE); - attributes.put(FileGroupManagerFactory.PATH, groupFilePath); + attributes.put(GroupProvider.TYPE, FileBasedGroupProviderImpl.GROUP_FILE_PROVIDER_TYPE); + attributes.put(FileBasedGroupProvider.PATH, groupFilePath); return addObjectConfiguration(GroupProvider.class, attributes); } |
