summaryrefslogtreecommitdiff
path: root/qpid/java/systests/src
diff options
context:
space:
mode:
authorRobert Godfrey <rgodfrey@apache.org>2014-04-17 01:07:34 +0000
committerRobert Godfrey <rgodfrey@apache.org>2014-04-17 01:07:34 +0000
commit7177135ca38651943b3701b171ef29e4fa52ad86 (patch)
tree4d221e6969f959b7c0c2a3c0736f71bdf935b459 /qpid/java/systests/src
parent359bd6e75abf11027b668d33d2d733b4cd399e38 (diff)
downloadqpid-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')
-rw-r--r--qpid/java/systests/src/main/java/org/apache/qpid/systest/rest/GroupProviderRestTest.java39
-rw-r--r--qpid/java/systests/src/main/java/org/apache/qpid/systest/rest/acl/BrokerACLTest.java23
-rwxr-xr-xqpid/java/systests/src/main/java/org/apache/qpid/test/utils/QpidBrokerTestCase.java17
-rw-r--r--qpid/java/systests/src/main/java/org/apache/qpid/test/utils/TestBrokerConfiguration.java13
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);
}