Author: kwall
Date: Sat Jun  7 19:01:03 2014
New Revision: 1601163

URL: http://svn.apache.org/r1601163
Log:
QPID-5803: [Java Broker] Add ability for the virtualhostnode to create a 
virtualhost using a blueprint supplied by context variable

* This commit reenables the SplitStoreTest.
* The UI has not been refactored by this commit, so it will not be possible to 
create a non-HA virtualhost from the UI
  (the UI will create only a virtualhostnode).. REST API is okay.

Modified:
    
qpid/trunk/qpid/java/bdbstore/src/main/java/org/apache/qpid/server/virtualhostnode/berkeleydb/BDBVirtualHostNodeImpl.java
    
qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/virtualhostnode/AbstractStandardVirtualHostNode.java
    
qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/virtualhostnode/JsonVirtualHostNodeImpl.java
    qpid/trunk/qpid/java/broker-core/src/main/resources/initial-config.json
    
qpid/trunk/qpid/java/broker-core/src/test/java/org/apache/qpid/server/virtualhostnode/AbstractStandardVirtualHostNodeTest.java
    
qpid/trunk/qpid/java/broker-core/src/test/java/org/apache/qpid/server/virtualhostnode/TestVirtualHostNode.java
    
qpid/trunk/qpid/java/broker-plugins/derby-store/src/main/java/org/apache/qpid/server/virtualhostnode/derby/DerbyVirtualHostNode.java
    
qpid/trunk/qpid/java/broker-plugins/jdbc-store/src/main/java/org/apache/qpid/server/virtualhostnode/jdbc/JDBCVirtualHostNodeImpl.java
    
qpid/trunk/qpid/java/broker-plugins/memory-store/src/main/java/org/apache/qpid/server/virtualhostnode/memory/MemoryVirtualHostNode.java
    qpid/trunk/qpid/java/systests/etc/config-systests.json
    
qpid/trunk/qpid/java/systests/src/main/java/org/apache/qpid/server/store/SplitStoreTest.java
    
qpid/trunk/qpid/java/systests/src/main/java/org/apache/qpid/server/store/VirtualHostMessageStoreTest.java
    
qpid/trunk/qpid/java/systests/src/main/java/org/apache/qpid/systest/management/jmx/MBeanLifeCycleTest.java
    
qpid/trunk/qpid/java/systests/src/main/java/org/apache/qpid/systest/rest/RestTestHelper.java
    
qpid/trunk/qpid/java/systests/src/main/java/org/apache/qpid/systest/rest/VirtualHostNodeRestTest.java
    
qpid/trunk/qpid/java/systests/src/main/java/org/apache/qpid/systest/rest/VirtualHostRestTest.java
    
qpid/trunk/qpid/java/systests/src/main/java/org/apache/qpid/systest/rest/acl/BrokerACLTest.java
    
qpid/trunk/qpid/java/systests/src/main/java/org/apache/qpid/test/utils/QpidBrokerTestCase.java
    qpid/trunk/qpid/java/test-profiles/JavaTransientExcludes

Modified: 
qpid/trunk/qpid/java/bdbstore/src/main/java/org/apache/qpid/server/virtualhostnode/berkeleydb/BDBVirtualHostNodeImpl.java
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/java/bdbstore/src/main/java/org/apache/qpid/server/virtualhostnode/berkeleydb/BDBVirtualHostNodeImpl.java?rev=1601163&r1=1601162&r2=1601163&view=diff
==============================================================================
--- 
qpid/trunk/qpid/java/bdbstore/src/main/java/org/apache/qpid/server/virtualhostnode/berkeleydb/BDBVirtualHostNodeImpl.java
 (original)
+++ 
qpid/trunk/qpid/java/bdbstore/src/main/java/org/apache/qpid/server/virtualhostnode/berkeleydb/BDBVirtualHostNodeImpl.java
 Sat Jun  7 19:01:03 2014
@@ -30,9 +30,11 @@ import org.apache.qpid.server.store.Dura
 import org.apache.qpid.server.store.berkeleydb.BDBConfigurationStore;
 import org.apache.qpid.server.virtualhostnode.AbstractStandardVirtualHostNode;
 
-@ManagedObject( category = false, type = "BDB" )
+@ManagedObject(type = BDBVirtualHostNodeImpl.VIRTUAL_HOST_NODE_TYPE, category 
= false)
 public class BDBVirtualHostNodeImpl extends 
AbstractStandardVirtualHostNode<BDBVirtualHostNodeImpl> implements 
BDBVirtualHostNode<BDBVirtualHostNodeImpl>
 {
+    public static final String VIRTUAL_HOST_NODE_TYPE = "BDB";
+
     @ManagedAttributeField
     private String _storePath;
 

Modified: 
qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/virtualhostnode/AbstractStandardVirtualHostNode.java
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/virtualhostnode/AbstractStandardVirtualHostNode.java?rev=1601163&r1=1601162&r2=1601163&view=diff
==============================================================================
--- 
qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/virtualhostnode/AbstractStandardVirtualHostNode.java
 (original)
+++ 
qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/virtualhostnode/AbstractStandardVirtualHostNode.java
 Sat Jun  7 19:01:03 2014
@@ -20,7 +20,6 @@
  */
 package org.apache.qpid.server.virtualhostnode;
 
-import java.io.File;
 import java.security.PrivilegedAction;
 import java.util.Collection;
 import java.util.Collections;
@@ -39,15 +38,13 @@ import org.apache.qpid.server.model.Remo
 import org.apache.qpid.server.model.VirtualHost;
 import org.apache.qpid.server.model.VirtualHostNode;
 import org.apache.qpid.server.security.SecurityManager;
-import org.apache.qpid.server.store.MessageStore;
-import org.apache.qpid.server.store.MessageStoreProvider;
 import org.apache.qpid.server.store.VirtualHostStoreUpgraderAndRecoverer;
-import org.apache.qpid.server.virtualhost.ProvidedStoreVirtualHost;
 
 public abstract class AbstractStandardVirtualHostNode<X extends 
AbstractStandardVirtualHostNode<X>> extends AbstractVirtualHostNode<X>
                 implements VirtualHostNode<X>
 {
     private static final Logger LOGGER = 
Logger.getLogger(AbstractStandardVirtualHostNode.class);
+    public static final String VIRTUALHOST_BLUEPRINT_CONTEXT_VAR = 
"virtualhostBlueprint";
 
     public AbstractStandardVirtualHostNode(Map<String, Object> attributes,
                                            Broker<?> parent)
@@ -100,25 +97,32 @@ public abstract class AbstractStandardVi
 
         if (host == null)
         {
-            // TODO normal case - we should not create VH,
-            // TODO out if box case - if blueprint vh context variable is set, 
use it to create a VH
-            if (LOGGER.isDebugEnabled())
+            if (getContext() != null && 
getContext().containsKey(VIRTUALHOST_BLUEPRINT_CONTEXT_VAR))
             {
-                LOGGER.debug("Creating new virtualhost with name : " + 
getName());
-            }
-            Map<String, Object> hostAttributes = new HashMap<String, Object>();
-            hostAttributes.put(VirtualHost.MODEL_VERSION, 
BrokerModel.MODEL_VERSION);
-            hostAttributes.put(VirtualHost.NAME, getName());
-            if (getConfigurationStore() instanceof MessageStoreProvider)
-            {
-                hostAttributes.put(VirtualHost.TYPE, 
ProvidedStoreVirtualHost.VIRTUAL_HOST_TYPE);
-            }
-            else
-            {
-                hostAttributes.put(VirtualHost.TYPE, "DERBY");
-                hostAttributes.put(VirtualHost.MESSAGE_STORE_SETTINGS, 
getDefaultMessageStoreSettings());
+                Map<String, Object> virtualhostBlueprint = 
getContextValue(Map.class, VIRTUALHOST_BLUEPRINT_CONTEXT_VAR);
+
+                if (LOGGER.isDebugEnabled())
+                {
+                    LOGGER.debug("Using virtualhost blueprint " + 
virtualhostBlueprint);
+                }
+
+                Map<String, Object> virtualhostAttributes = new HashMap<>();
+                virtualhostAttributes.put(VirtualHost.MODEL_VERSION, 
BrokerModel.MODEL_VERSION);
+                virtualhostAttributes.put(VirtualHost.NAME, getName());
+                virtualhostAttributes.putAll(virtualhostBlueprint);
+
+                if (LOGGER.isDebugEnabled())
+                {
+                    LOGGER.debug("Creating new virtualhost named " + 
virtualhostAttributes.get(VirtualHost.NAME));
+                }
+
+                host = createChild(VirtualHost.class, virtualhostAttributes);
+
+                if (LOGGER.isDebugEnabled())
+                {
+                    LOGGER.debug("Created new virtualhost: " + host);
+                }
             }
-            host = createChild(VirtualHost.class, hostAttributes);
         }
         else
         {
@@ -146,16 +150,4 @@ public abstract class AbstractStandardVi
     {
         return Collections.emptyList();
     }
-
-    // protected for unit testing purposes
-    protected Map<String, Object> getDefaultMessageStoreSettings()
-    {
-        // TODO perhaps look for the MS with the default annotation and 
associated default.
-        Map<String, Object> settings = new HashMap<String, Object>();
-        settings.put(MessageStore.STORE_TYPE, "DERBY");
-        settings.put(MessageStore.STORE_PATH, "${qpid.work_dir}" + 
File.separator + "derbystore" + File.separator + getName());
-        return settings;
-    }
-
-
 }

Modified: 
qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/virtualhostnode/JsonVirtualHostNodeImpl.java
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/virtualhostnode/JsonVirtualHostNodeImpl.java?rev=1601163&r1=1601162&r2=1601163&view=diff
==============================================================================
--- 
qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/virtualhostnode/JsonVirtualHostNodeImpl.java
 (original)
+++ 
qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/virtualhostnode/JsonVirtualHostNodeImpl.java
 Sat Jun  7 19:01:03 2014
@@ -29,9 +29,11 @@ import org.apache.qpid.server.model.Mana
 import org.apache.qpid.server.store.DurableConfigurationStore;
 import org.apache.qpid.server.store.JsonFileConfigStore;
 
-@ManagedObject(category=false, type="JSON")
+@ManagedObject(type=JsonVirtualHostNodeImpl.VIRTUAL_HOST_NODE_TYPE, 
category=false)
 public class JsonVirtualHostNodeImpl extends 
AbstractStandardVirtualHostNode<JsonVirtualHostNodeImpl> implements 
FileBasedVirtualHostNode<JsonVirtualHostNodeImpl>
 {
+    public static final String VIRTUAL_HOST_NODE_TYPE = "JSON";
+
     @ManagedAttributeField
     private String _storePath;
 

Modified: 
qpid/trunk/qpid/java/broker-core/src/main/resources/initial-config.json
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker-core/src/main/resources/initial-config.json?rev=1601163&r1=1601162&r2=1601163&view=diff
==============================================================================
--- qpid/trunk/qpid/java/broker-core/src/main/resources/initial-config.json 
(original)
+++ qpid/trunk/qpid/java/broker-core/src/main/resources/initial-config.json Sat 
Jun  7 19:01:03 2014
@@ -55,7 +55,10 @@
   "virtualhostnodes" : [ {
     "name" : "default",
     "type" : "JSON",
-    "storePath" : "${qpid.work_dir}/json/default"
+    "storePath" : "${qpid.work_dir}/default/config",
+    "context" : {
+        "virtualhostBlueprint" : "{ \"type\" : \"DERBY\", 
\"messageStoreSettings\" : { \"storePath\" : 
\"${qpid.work_dir}/default/messages\" }}"
+    }
   } ],
   "plugins" : [ {
     "type" : "MANAGEMENT-HTTP",

Modified: 
qpid/trunk/qpid/java/broker-core/src/test/java/org/apache/qpid/server/virtualhostnode/AbstractStandardVirtualHostNodeTest.java
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker-core/src/test/java/org/apache/qpid/server/virtualhostnode/AbstractStandardVirtualHostNodeTest.java?rev=1601163&r1=1601162&r2=1601163&view=diff
==============================================================================
--- 
qpid/trunk/qpid/java/broker-core/src/test/java/org/apache/qpid/server/virtualhostnode/AbstractStandardVirtualHostNodeTest.java
 (original)
+++ 
qpid/trunk/qpid/java/broker-core/src/test/java/org/apache/qpid/server/virtualhostnode/AbstractStandardVirtualHostNodeTest.java
 Sat Jun  7 19:01:03 2014
@@ -136,12 +136,8 @@ public class AbstractStandardVirtualHost
         node.start();
 
         VirtualHost<?, ?, ?> virtualHost = node.getVirtualHost();
-        assertNotNull("Virtual host was not created", virtualHost);
+        assertNull("Virtual host should not be automatically created", 
virtualHost);
 
-        // Virtualhost name taken from VHN and ID is random.
-        assertEquals("Unexpected virtual host name", 
TEST_VIRTUAL_HOST_NODE_NAME, virtualHost.getName());
-        assertEquals("Unexpected virtual host state", State.ACTIVE, 
virtualHost.getState());
-        assertNotNull("Unexpected virtual host id", virtualHost.getId());
     }
 
     private ConfiguredObjectRecord createMockVirtualHostCOR(UUID virtualHostId)

Modified: 
qpid/trunk/qpid/java/broker-core/src/test/java/org/apache/qpid/server/virtualhostnode/TestVirtualHostNode.java
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker-core/src/test/java/org/apache/qpid/server/virtualhostnode/TestVirtualHostNode.java?rev=1601163&r1=1601162&r2=1601163&view=diff
==============================================================================
--- 
qpid/trunk/qpid/java/broker-core/src/test/java/org/apache/qpid/server/virtualhostnode/TestVirtualHostNode.java
 (original)
+++ 
qpid/trunk/qpid/java/broker-core/src/test/java/org/apache/qpid/server/virtualhostnode/TestVirtualHostNode.java
 Sat Jun  7 19:01:03 2014
@@ -20,18 +20,17 @@
  */
 package org.apache.qpid.server.virtualhostnode;
 
-import java.util.Collections;
 import java.util.Map;
 
 import org.apache.qpid.server.model.Broker;
 import org.apache.qpid.server.model.ManagedObject;
 import org.apache.qpid.server.store.DurableConfigurationStore;
-import org.apache.qpid.server.store.MessageStore;
-import org.apache.qpid.server.store.TestMemoryMessageStore;
 
-@ManagedObject(type="TestMemory", category=false)
+@ManagedObject(type=TestVirtualHostNode.VIRTUAL_HOST_NODE_TYPE, category=false)
 public class TestVirtualHostNode extends 
AbstractStandardVirtualHostNode<TestVirtualHostNode>
 {
+    public static final String VIRTUAL_HOST_NODE_TYPE = "TestMemory";
+
     private final DurableConfigurationStore _store;
 
     public TestVirtualHostNode(Broker<?> parent, Map<String, Object> 
attributes)
@@ -53,9 +52,4 @@ public class TestVirtualHostNode extends
         return _store;
     }
 
-    @Override
-    public Map<String, Object> getDefaultMessageStoreSettings()
-    {
-        return Collections.<String, 
Object>singletonMap(MessageStore.STORE_TYPE, TestMemoryMessageStore.TYPE);
-    }
 }

Modified: 
qpid/trunk/qpid/java/broker-plugins/derby-store/src/main/java/org/apache/qpid/server/virtualhostnode/derby/DerbyVirtualHostNode.java
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker-plugins/derby-store/src/main/java/org/apache/qpid/server/virtualhostnode/derby/DerbyVirtualHostNode.java?rev=1601163&r1=1601162&r2=1601163&view=diff
==============================================================================
--- 
qpid/trunk/qpid/java/broker-plugins/derby-store/src/main/java/org/apache/qpid/server/virtualhostnode/derby/DerbyVirtualHostNode.java
 (original)
+++ 
qpid/trunk/qpid/java/broker-plugins/derby-store/src/main/java/org/apache/qpid/server/virtualhostnode/derby/DerbyVirtualHostNode.java
 Sat Jun  7 19:01:03 2014
@@ -32,9 +32,11 @@ import org.apache.qpid.server.store.derb
 import org.apache.qpid.server.virtualhostnode.AbstractStandardVirtualHostNode;
 import org.apache.qpid.server.virtualhostnode.FileBasedVirtualHostNode;
 
-@ManagedObject( category = false, type = "DERBY" )
+@ManagedObject( category = false, type = 
DerbyVirtualHostNode.VIRTUAL_HOST_NODE_TYPE )
 public class DerbyVirtualHostNode extends 
AbstractStandardVirtualHostNode<DerbyVirtualHostNode> implements 
FileBasedVirtualHostNode<DerbyVirtualHostNode>
 {
+    public static final String VIRTUAL_HOST_NODE_TYPE = "DERBY";
+
     @ManagedAttributeField
     private String _storePath;
 

Modified: 
qpid/trunk/qpid/java/broker-plugins/jdbc-store/src/main/java/org/apache/qpid/server/virtualhostnode/jdbc/JDBCVirtualHostNodeImpl.java
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker-plugins/jdbc-store/src/main/java/org/apache/qpid/server/virtualhostnode/jdbc/JDBCVirtualHostNodeImpl.java?rev=1601163&r1=1601162&r2=1601163&view=diff
==============================================================================
--- 
qpid/trunk/qpid/java/broker-plugins/jdbc-store/src/main/java/org/apache/qpid/server/virtualhostnode/jdbc/JDBCVirtualHostNodeImpl.java
 (original)
+++ 
qpid/trunk/qpid/java/broker-plugins/jdbc-store/src/main/java/org/apache/qpid/server/virtualhostnode/jdbc/JDBCVirtualHostNodeImpl.java
 Sat Jun  7 19:01:03 2014
@@ -30,9 +30,11 @@ import org.apache.qpid.server.store.Dura
 import org.apache.qpid.server.store.jdbc.JDBCMessageStore;
 import org.apache.qpid.server.virtualhostnode.AbstractStandardVirtualHostNode;
 
-@ManagedObject( category = false, type = "JDBC" )
+@ManagedObject(type = JDBCVirtualHostNodeImpl.VIRTUAL_HOST_NODE_TYPE, category 
= false )
 public class JDBCVirtualHostNodeImpl extends 
AbstractStandardVirtualHostNode<JDBCVirtualHostNodeImpl> implements 
JDBCVirtualHostNode<JDBCVirtualHostNodeImpl>
 {
+    public static final String VIRTUAL_HOST_NODE_TYPE = "JDBC";
+
     @ManagedAttributeField
     private String _connectionUrl;
 

Modified: 
qpid/trunk/qpid/java/broker-plugins/memory-store/src/main/java/org/apache/qpid/server/virtualhostnode/memory/MemoryVirtualHostNode.java
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker-plugins/memory-store/src/main/java/org/apache/qpid/server/virtualhostnode/memory/MemoryVirtualHostNode.java?rev=1601163&r1=1601162&r2=1601163&view=diff
==============================================================================
--- 
qpid/trunk/qpid/java/broker-plugins/memory-store/src/main/java/org/apache/qpid/server/virtualhostnode/memory/MemoryVirtualHostNode.java
 (original)
+++ 
qpid/trunk/qpid/java/broker-plugins/memory-store/src/main/java/org/apache/qpid/server/virtualhostnode/memory/MemoryVirtualHostNode.java
 Sat Jun  7 19:01:03 2014
@@ -29,9 +29,10 @@ import org.apache.qpid.server.store.Dura
 import org.apache.qpid.server.store.MemoryConfigurationStore;
 import org.apache.qpid.server.virtualhostnode.AbstractStandardVirtualHostNode;
 
-@ManagedObject(type="Memory",category=false)
+@ManagedObject(type=MemoryVirtualHostNode.VIRTUAL_HOST_NODE_TYPE, 
category=false)
 public class MemoryVirtualHostNode extends 
AbstractStandardVirtualHostNode<MemoryVirtualHostNode>
 {
+   public static final String VIRTUAL_HOST_NODE_TYPE = "Memory";
 
     @ManagedObjectFactoryConstructor
     public MemoryVirtualHostNode(Map<String, Object> attributes, Broker<?> 
parent)

Modified: qpid/trunk/qpid/java/systests/etc/config-systests.json
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/java/systests/etc/config-systests.json?rev=1601163&r1=1601162&r2=1601163&view=diff
==============================================================================
--- qpid/trunk/qpid/java/systests/etc/config-systests.json (original)
+++ qpid/trunk/qpid/java/systests/etc/config-systests.json Sat Jun  7 19:01:03 
2014
@@ -60,6 +60,9 @@
   "virtualhostnodes" : [ {
     "name" : "test",
     "type" : "${messagestore.type}",
-    "storePath" : "${QPID_WORK}/test/${test.port}"
+    "storePath" : "${QPID_WORK}/${test.port}/test/config",
+    "context" : {
+      "virtualhostBlueprint" : "{ \"type\" : \"ProvidedStore\" }"
+    }
   } ]
 }

Modified: 
qpid/trunk/qpid/java/systests/src/main/java/org/apache/qpid/server/store/SplitStoreTest.java
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/java/systests/src/main/java/org/apache/qpid/server/store/SplitStoreTest.java?rev=1601163&r1=1601162&r2=1601163&view=diff
==============================================================================
--- 
qpid/trunk/qpid/java/systests/src/main/java/org/apache/qpid/server/store/SplitStoreTest.java
 (original)
+++ 
qpid/trunk/qpid/java/systests/src/main/java/org/apache/qpid/server/store/SplitStoreTest.java
 Sat Jun  7 19:01:03 2014
@@ -21,6 +21,7 @@
 package org.apache.qpid.server.store;
 
 import java.io.File;
+import java.util.Collections;
 import java.util.HashMap;
 import java.util.Map;
 
@@ -32,10 +33,11 @@ import javax.jms.Session;
 
 import org.apache.qpid.configuration.ClientProperties;
 import org.apache.qpid.server.model.VirtualHostNode;
+import org.apache.qpid.server.virtualhostnode.AbstractStandardVirtualHostNode;
+import org.apache.qpid.server.virtualhostnode.FileBasedVirtualHostNode;
 import org.apache.qpid.test.utils.QpidBrokerTestCase;
 import org.apache.qpid.test.utils.TestBrokerConfiguration;
 import org.apache.qpid.test.utils.TestFileUtils;
-import org.apache.qpid.test.utils.TestUtils;
 import org.apache.qpid.util.FileUtils;
 
 public class SplitStoreTest extends QpidBrokerTestCase
@@ -72,39 +74,27 @@ public class SplitStoreTest extends Qpid
         // Overridden to prevent QBTC starting the Broker.
     }
 
-    public void testPass()
+    public void testJsonConfigurationStoreWithPersistentMessageStore() throws 
Exception
     {
-
+        doTest(JsonFileConfigStore.TYPE, getTestProfileMessageStoreType());
     }
 
-    // TODO reenable once we can specify a virtualhost blueprint context 
variable with necessary message store location
-    public void xtestJsonConfigurationStoreWithPersistentMessageStore() throws 
Exception
+    public void testSeparateConfigurationAndMessageStoresOfTheSameType() 
throws Exception
     {
-
-        doTest(JsonFileConfigStore.TYPE, _configStorePath);
+        doTest(getTestProfileVirtualHostNodeType(), 
getTestProfileMessageStoreType());
     }
 
-    // TODO test will currently create a provided VH which will share 
config/message store
-    // TODO reenable once we can specify a virtualhost blueprint context 
variable
-    public void xtestSeparateConfigurationAndMessageStoresOfTheSameType() 
throws Exception
+    private void configureAndStartBroker(String virtualHostNodeType, String 
virtualHostType) throws Exception
     {
-        doTest(getTestProfileVirtualHostNodeType(), _configStorePath);
-    }
+        final String blueprint = String.format(
+           "{ \"type\" : \"%s\",  \"messageStoreSettings\" : { \"storePath\" : 
\"%s\" } }", virtualHostType, _messageStorePath);
+        final Map<String, String> contextMap = 
Collections.singletonMap(AbstractStandardVirtualHostNode.VIRTUALHOST_BLUEPRINT_CONTEXT_VAR,
+                                                                        
blueprint);
 
-    private void configureAndStartBroker(String nodeType, String storePath) 
throws Exception
-    {
         TestBrokerConfiguration config = getBrokerConfiguration();
-        config.setObjectAttribute(VirtualHostNode.class, 
TestBrokerConfiguration.ENTRY_NAME_VIRTUAL_HOST, VirtualHostNode.TYPE, 
nodeType);
-        config.setObjectAttribute(VirtualHostNode.class, 
TestBrokerConfiguration.ENTRY_NAME_VIRTUAL_HOST, 
DurableConfigurationStore.STORE_PATH, storePath);
-
-        Map<String, Object> messageStoreSettings = new HashMap<String, 
Object>();
-        messageStoreSettings.put(MessageStore.STORE_TYPE, 
getTestProfileMessageStoreType());
-        messageStoreSettings.put(MessageStore.STORE_PATH, _messageStorePath);
-
-        // TODO initialise the virtualhost with the required attributes using 
the virtualhost blueprint
-        // mechanism.
-
-        //TestUtils.createStoreWithVirtualHostEntry(messageStoreSettings, 
config, nodeType);
+        config.setObjectAttribute(VirtualHostNode.class, 
TestBrokerConfiguration.ENTRY_NAME_VIRTUAL_HOST, VirtualHostNode.TYPE, 
virtualHostNodeType);
+        config.setObjectAttribute(VirtualHostNode.class, 
TestBrokerConfiguration.ENTRY_NAME_VIRTUAL_HOST, VirtualHostNode.CONTEXT, 
contextMap);
+        config.setObjectAttribute(VirtualHostNode.class, 
TestBrokerConfiguration.ENTRY_NAME_VIRTUAL_HOST, 
FileBasedVirtualHostNode.STORE_PATH, _configStorePath);
 
         super.startBroker();
     }

Modified: 
qpid/trunk/qpid/java/systests/src/main/java/org/apache/qpid/server/store/VirtualHostMessageStoreTest.java
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/java/systests/src/main/java/org/apache/qpid/server/store/VirtualHostMessageStoreTest.java?rev=1601163&r1=1601162&r2=1601163&view=diff
==============================================================================
--- 
qpid/trunk/qpid/java/systests/src/main/java/org/apache/qpid/server/store/VirtualHostMessageStoreTest.java
 (original)
+++ 
qpid/trunk/qpid/java/systests/src/main/java/org/apache/qpid/server/store/VirtualHostMessageStoreTest.java
 Sat Jun  7 19:01:03 2014
@@ -30,7 +30,6 @@ import java.util.Collection;
 import java.util.Collections;
 import java.util.HashMap;
 import java.util.Map;
-import java.util.UUID;
 
 import javax.security.auth.Subject;
 
@@ -57,6 +56,7 @@ import org.apache.qpid.server.model.Life
 import org.apache.qpid.server.model.Queue;
 import org.apache.qpid.server.model.State;
 import org.apache.qpid.server.model.UUIDGenerator;
+import org.apache.qpid.server.model.VirtualHost;
 import org.apache.qpid.server.model.VirtualHostNode;
 import org.apache.qpid.server.protocol.AMQConnectionModel;
 import org.apache.qpid.server.protocol.AMQSessionModel;
@@ -121,7 +121,8 @@ public class VirtualHostMessageStoreTest
     {
         super.setUp();
 
-        String hostName = getName();
+        String nodeName = "node" + getName();
+        String hostName = "host" + getName();
         _storePath = System.getProperty("QPID_WORK", TMP_FOLDER + 
File.separator + getTestName()) + File.separator + hostName;
         cleanup(new File(_storePath));
 
@@ -131,14 +132,18 @@ public class VirtualHostMessageStoreTest
         when(broker.getTaskExecutor()).thenReturn(_taskExecutor);
 
         ConfiguredObjectFactory factory = broker.getObjectFactory();
-        Map<String, Object> nodeAttributes = new HashMap<String, Object>();
+        Map<String, Object> nodeAttributes = new HashMap<>();
         nodeAttributes.put(ConfiguredObject.TYPE, 
getTestProfileVirtualHostNodeType());
         nodeAttributes.put(FileBasedVirtualHostNode.STORE_PATH, _storePath);
-        nodeAttributes.put(VirtualHostNode.NAME, hostName);
-        nodeAttributes.put(VirtualHostNode.ID, UUID.randomUUID());
+        nodeAttributes.put(VirtualHostNode.NAME, nodeName);
         _node = factory.create(VirtualHostNode.class, nodeAttributes, broker);
         _node.start();
 
+        final Map<String,Object> virtualHostAttributes = new HashMap<>();
+        virtualHostAttributes.put(VirtualHost.NAME, hostName);
+
+        _node.createChild(VirtualHost.class, virtualHostAttributes, _node);
+
         _virtualHost = (VirtualHostImpl<?,?,?>)_node.getVirtualHost();
 
     }

Modified: 
qpid/trunk/qpid/java/systests/src/main/java/org/apache/qpid/systest/management/jmx/MBeanLifeCycleTest.java
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/java/systests/src/main/java/org/apache/qpid/systest/management/jmx/MBeanLifeCycleTest.java?rev=1601163&r1=1601162&r2=1601163&view=diff
==============================================================================
--- 
qpid/trunk/qpid/java/systests/src/main/java/org/apache/qpid/systest/management/jmx/MBeanLifeCycleTest.java
 (original)
+++ 
qpid/trunk/qpid/java/systests/src/main/java/org/apache/qpid/systest/management/jmx/MBeanLifeCycleTest.java
 Sat Jun  7 19:01:03 2014
@@ -25,14 +25,18 @@ import java.util.HashMap;
 import java.util.Map;
 
 import javax.management.ObjectName;
+import javax.servlet.http.HttpServletResponse;
 
 import org.apache.qpid.management.common.mbeans.ManagedBroker;
 import org.apache.qpid.server.management.plugin.HttpManagement;
 import org.apache.qpid.server.model.AuthenticationProvider;
 import org.apache.qpid.server.model.Plugin;
 import org.apache.qpid.server.model.Port;
+import org.apache.qpid.server.model.VirtualHost;
 import org.apache.qpid.server.model.VirtualHostNode;
 import 
org.apache.qpid.server.security.auth.manager.AnonymousAuthenticationManager;
+import org.apache.qpid.server.virtualhost.ProvidedStoreVirtualHost;
+import org.apache.qpid.server.virtualhostnode.memory.MemoryVirtualHostNode;
 import org.apache.qpid.systest.rest.QpidRestTestCase;
 import org.apache.qpid.test.utils.JMXTestUtils;
 import org.apache.qpid.test.utils.TestBrokerConfiguration;
@@ -81,14 +85,24 @@ public class MBeanLifeCycleTest extends 
 
     public void testVirtualHostMBeanIsRegisteredOnVirtualHostCreation() throws 
Exception
     {
-        String nodeName = "tmp";
-        Map<String, Object> nodeData = new HashMap<String, Object>();
+        String nodeName = "ntmp";
+        String hostName = "htmp";
+
+        Map<String, Object> nodeData = new HashMap<>();
         nodeData.put(VirtualHostNode.NAME, nodeName);
-        nodeData.put(VirtualHostNode.TYPE, "Memory");
-        int status = getRestTestHelper().submitRequest("virtualhostnode/" + 
nodeName, "PUT", nodeData);
-        assertEquals("Unexpected code", 201, status);
+        nodeData.put(VirtualHostNode.TYPE, 
MemoryVirtualHostNode.VIRTUAL_HOST_NODE_TYPE);
+        getRestTestHelper().submitRequest("virtualhostnode/" + nodeName, 
"PUT", nodeData, HttpServletResponse.SC_CREATED);
+
+        Map<String, Object> virtualhostData = new HashMap<>();
+        virtualhostData.put(VirtualHost.NAME, nodeName);
+        virtualhostData.put(VirtualHost.TYPE, 
ProvidedStoreVirtualHost.VIRTUAL_HOST_TYPE);
+        getRestTestHelper().submitRequest("virtualhost/" + nodeName + "/" + 
hostName,
+                                          "PUT",
+                                          virtualhostData,
+                                          HttpServletResponse.SC_CREATED);
+
 
-        ManagedBroker managedBroker = _jmxUtils.getManagedBroker(nodeName);
+        ManagedBroker managedBroker = _jmxUtils.getManagedBroker(hostName);
         assertNotNull("Host mBean is not created", managedBroker);
     }
 
@@ -99,8 +113,7 @@ public class MBeanLifeCycleTest extends 
         boolean mBeanExists =_jmxUtils.doesManagedObjectExist(query);
         assertTrue("Host mBean is not registered", mBeanExists);
 
-        int status = getRestTestHelper().submitRequest("virtualhostnode/" + 
TEST2_VIRTUALHOST, "DELETE");
-        assertEquals("Unexpected code", 200, status);
+        getRestTestHelper().submitRequest("virtualhostnode/" + 
TEST2_VIRTUALHOST, "DELETE", HttpServletResponse.SC_OK);
 
         mBeanExists =_jmxUtils.doesManagedObjectExist(query);
         assertFalse("Host mBean is not unregistered", mBeanExists);

Modified: 
qpid/trunk/qpid/java/systests/src/main/java/org/apache/qpid/systest/rest/RestTestHelper.java
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/java/systests/src/main/java/org/apache/qpid/systest/rest/RestTestHelper.java?rev=1601163&r1=1601162&r2=1601163&view=diff
==============================================================================
--- 
qpid/trunk/qpid/java/systests/src/main/java/org/apache/qpid/systest/rest/RestTestHelper.java
 (original)
+++ 
qpid/trunk/qpid/java/systests/src/main/java/org/apache/qpid/systest/rest/RestTestHelper.java
 Sat Jun  7 19:01:03 2014
@@ -277,7 +277,7 @@ public class RestTestHelper
         List<Map<String, Object>> response = getJsonAsList(path);
 
         Assert.assertNotNull("Response cannot be null", response);
-        Assert.assertEquals("Unexpected response", 1, response.size());
+        Assert.assertEquals("Unexpected response from " + path, 1, 
response.size());
         return response.get(0);
     }
 

Modified: 
qpid/trunk/qpid/java/systests/src/main/java/org/apache/qpid/systest/rest/VirtualHostNodeRestTest.java
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/java/systests/src/main/java/org/apache/qpid/systest/rest/VirtualHostNodeRestTest.java?rev=1601163&r1=1601162&r2=1601163&view=diff
==============================================================================
--- 
qpid/trunk/qpid/java/systests/src/main/java/org/apache/qpid/systest/rest/VirtualHostNodeRestTest.java
 (original)
+++ 
qpid/trunk/qpid/java/systests/src/main/java/org/apache/qpid/systest/rest/VirtualHostNodeRestTest.java
 Sat Jun  7 19:01:03 2014
@@ -31,7 +31,7 @@ import javax.servlet.http.HttpServletRes
 
 import org.apache.qpid.server.model.ConfiguredObject;
 import org.apache.qpid.server.model.VirtualHostNode;
-import org.apache.qpid.server.store.DurableConfigurationStore;
+import org.apache.qpid.server.virtualhostnode.FileBasedVirtualHostNode;
 import org.apache.qpid.test.utils.TestBrokerConfiguration;
 
 /**
@@ -53,7 +53,7 @@ public class VirtualHostNodeRestTest  ex
         }
     }
 
-    public void testCreateAndDeleteNodeWithTestProfileStore() throws Exception
+    public void testCreateAndDeleteVirtualHostNode() throws Exception
     {
         String storeType = getTestProfileVirtualHostNodeType();
         String nodeName = "virtualhostnode-" + getTestName();
@@ -63,17 +63,6 @@ public class VirtualHostNodeRestTest  ex
         assertFalse("Store should not exist after deletion", 
storePathAsFile.exists());
     }
 
-    public void testCreateAndDeleteNodeWithJsonStore() throws Exception
-    {
-        String storeType = "JSON";
-        String nodeName = "virtualhostnode-" + getTestName();
-        File storePathAsFile = new File(getStoreLocation(nodeName));
-
-        createAndDeleteVirtualHostNode(storeType, nodeName, storePathAsFile);
-        // TODO Defect: JSON store currently can't delete itself, uncomment 
once this is resolved
-        //assertFalse("Store should not exist after deletion", 
storePathAsFile.exists());
-    }
-
     public void testRecoverVirtualHostNodeWithDesiredStateStopped() throws 
Exception
     {
         stopBroker();
@@ -118,18 +107,20 @@ public class VirtualHostNodeRestTest  ex
         assertEquals(newDescription, 
virtualhostNode.get(VirtualHostNode.DESCRIPTION));
     }
 
-    private void createAndDeleteVirtualHostNode(final String storeType,
+    private void createAndDeleteVirtualHostNode(final String 
virtualhostNodeType,
                                                 final String nodeName,
                                                 final File storePathAsFile) 
throws Exception
     {
         assertFalse("Store should not exist", storePathAsFile.exists());
 
-        createVirtualHostNode(nodeName, storePathAsFile.getAbsolutePath(), 
storeType);
+        createVirtualHostNode(nodeName, storePathAsFile.getAbsolutePath(), 
virtualhostNodeType);
         assertTrue("Store should exist after creation of node", 
storePathAsFile.exists());
 
         String restUrl = "virtualhostnode/" + nodeName;
         Map<String, Object> virtualhostNode = 
getRestTestHelper().getJsonAsSingletonList(restUrl);
         Asserts.assertVirtualHostNode(nodeName, virtualhostNode);
+        assertNull("Virtualhostnode should not automatically get a virtualhost 
child",
+                   virtualhostNode.get("virtualhosts"));
 
         getRestTestHelper().submitRequest(restUrl, "DELETE", 
HttpServletResponse.SC_OK);
 
@@ -158,7 +149,7 @@ public class VirtualHostNodeRestTest  ex
         Map<String, Object> nodeData = new HashMap<String, Object>();
         nodeData.put(VirtualHostNode.NAME, nodeName);
         nodeData.put(VirtualHostNode.TYPE, storeType);
-        nodeData.put(DurableConfigurationStore.STORE_PATH, configStorePath);
+        nodeData.put(FileBasedVirtualHostNode.STORE_PATH, configStorePath);
 
         getRestTestHelper().submitRequest("virtualhostnode/" + nodeName,
                                           "PUT",

Modified: 
qpid/trunk/qpid/java/systests/src/main/java/org/apache/qpid/systest/rest/VirtualHostRestTest.java
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/java/systests/src/main/java/org/apache/qpid/systest/rest/VirtualHostRestTest.java?rev=1601163&r1=1601162&r2=1601163&view=diff
==============================================================================
--- 
qpid/trunk/qpid/java/systests/src/main/java/org/apache/qpid/systest/rest/VirtualHostRestTest.java
 (original)
+++ 
qpid/trunk/qpid/java/systests/src/main/java/org/apache/qpid/systest/rest/VirtualHostRestTest.java
 Sat Jun  7 19:01:03 2014
@@ -41,8 +41,9 @@ import org.apache.qpid.server.model.Virt
 import org.apache.qpid.server.queue.LastValueQueue;
 import org.apache.qpid.server.queue.PriorityQueue;
 import org.apache.qpid.server.queue.SortedQueue;
-import org.apache.qpid.server.store.DurableConfigurationStore;
 import org.apache.qpid.server.virtualhost.AbstractVirtualHost;
+import org.apache.qpid.server.virtualhost.ProvidedStoreVirtualHost;
+import org.apache.qpid.server.virtualhostnode.FileBasedVirtualHostNode;
 import org.apache.qpid.util.FileUtils;
 
 public class VirtualHostRestTest extends QpidRestTestCase
@@ -105,11 +106,11 @@ public class VirtualHostRestTest extends
         Asserts.assertConnection(connections.get(0), _connection);
     }
 
-    public void testPutCreateVirtualHostUsingStoreType() throws Exception
+    public void testPutCreateVirtualHostUsingProfileNodeType() throws Exception
     {
         String hostName = getTestName();
-        String storeType = getTestProfileVirtualHostNodeType();
-        String storeLocation = createHost(hostName, storeType, null);
+        String virtualhostNodeType = getTestProfileVirtualHostNodeType();
+        String storeLocation = createVirtualHostNodeAndVirtualHost(hostName, 
virtualhostNodeType);
         try
         {
             // make sure that the host is saved in the broker store
@@ -525,12 +526,28 @@ public class VirtualHostRestTest extends
         return getRestTestHelper().submitRequest("queue/test/test/" + 
queueName, "PUT", queueData);
     }
 
-    private String createHost(String hostName, String storeType, String 
configPath) throws IOException, JsonGenerationException,
-            JsonMappingException
+    private String createVirtualHostNodeAndVirtualHost(String virtualHostName,
+                                                       String 
virtualHostNodeType) throws Exception
     {
-        String storePath = getStoreLocation(hostName);
-        int responseCode = tryCreateVirtualHostNode(hostName, storeType, 
storePath, configPath);
-        assertEquals("Unexpected response code", 201, responseCode);
+        String storePath = getStoreLocation(virtualHostName);
+
+        Map<String, Object> nodeData = new HashMap<>();
+        nodeData.put(VirtualHostNode.NAME, virtualHostName);
+        nodeData.put(VirtualHostNode.TYPE, virtualHostNodeType);
+        nodeData.put(FileBasedVirtualHostNode.STORE_PATH, storePath);
+
+        getRestTestHelper().submitRequest("virtualhostnode/" + 
virtualHostName, "PUT", nodeData, HttpServletResponse.SC_CREATED);
+
+        Map<String, Object> virtualhostData = new HashMap<>();
+        virtualhostData.put(VirtualHost.NAME, virtualHostName);
+        virtualhostData.put(VirtualHost.TYPE, 
ProvidedStoreVirtualHost.VIRTUAL_HOST_TYPE);
+
+        getRestTestHelper().submitRequest("virtualhost/" + virtualHostName + 
"/" + virtualHostName,
+                                          "PUT",
+                                          virtualhostData,
+                                          HttpServletResponse.SC_CREATED);
+
+
         return storePath;
     }
 
@@ -539,21 +556,6 @@ public class VirtualHostRestTest extends
         return new File(TMP_FOLDER, "store-" + hostName + "-" + 
System.currentTimeMillis()).getAbsolutePath();
     }
 
-    private int tryCreateVirtualHostNode(String hostName,
-                                         String virtualHostNodeType,
-                                         String storePath,
-                                         String configPath) throws IOException,
-            JsonGenerationException, JsonMappingException
-    {
-
-        Map<String, Object> hostData = new HashMap<String, Object>();
-        hostData.put(VirtualHostNode.NAME, hostName);
-        hostData.put(VirtualHostNode.TYPE, virtualHostNodeType);
-        hostData.put(DurableConfigurationStore.STORE_PATH, storePath);
-
-        return getRestTestHelper().submitRequest("virtualhostnode/" + 
hostName, "PUT", hostData);
-    }
-
     private void assertNewVirtualHost(Map<String, Object> hostDetails)
     {
         @SuppressWarnings("unchecked")

Modified: 
qpid/trunk/qpid/java/systests/src/main/java/org/apache/qpid/systest/rest/acl/BrokerACLTest.java
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/java/systests/src/main/java/org/apache/qpid/systest/rest/acl/BrokerACLTest.java?rev=1601163&r1=1601162&r2=1601163&view=diff
==============================================================================
--- 
qpid/trunk/qpid/java/systests/src/main/java/org/apache/qpid/systest/rest/acl/BrokerACLTest.java
 (original)
+++ 
qpid/trunk/qpid/java/systests/src/main/java/org/apache/qpid/systest/rest/acl/BrokerACLTest.java
 Sat Jun  7 19:01:03 2014
@@ -49,7 +49,7 @@ import org.apache.qpid.server.security.a
 import org.apache.qpid.server.security.acl.AbstractACLTestCase;
 import 
org.apache.qpid.server.security.auth.manager.AnonymousAuthenticationManager;
 import 
org.apache.qpid.server.security.auth.manager.PlainPasswordDatabaseAuthenticationManager;
-import org.apache.qpid.server.store.DurableConfigurationStore;
+import org.apache.qpid.server.virtualhostnode.FileBasedVirtualHostNode;
 import org.apache.qpid.systest.rest.QpidRestTestCase;
 import org.apache.qpid.test.utils.TestBrokerConfiguration;
 import org.apache.qpid.test.utils.TestFileUtils;
@@ -982,7 +982,7 @@ public class BrokerACLTest extends QpidR
         Map<String, Object> data = new HashMap<String, Object>();
         data.put(VirtualHostNode.NAME, virtualHostNodeName);
         data.put(VirtualHostNode.TYPE, getTestProfileVirtualHostNodeType());
-        data.put(DurableConfigurationStore.STORE_PATH, 
getStoreLocation(virtualHostNodeName));
+        data.put(FileBasedVirtualHostNode.STORE_PATH, 
getStoreLocation(virtualHostNodeName));
 
         return getRestTestHelper().submitRequest("virtualhostnode/" + 
virtualHostNodeName, "PUT", data);
     }

Modified: 
qpid/trunk/qpid/java/systests/src/main/java/org/apache/qpid/test/utils/QpidBrokerTestCase.java
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/java/systests/src/main/java/org/apache/qpid/test/utils/QpidBrokerTestCase.java?rev=1601163&r1=1601162&r2=1601163&view=diff
==============================================================================
--- 
qpid/trunk/qpid/java/systests/src/main/java/org/apache/qpid/test/utils/QpidBrokerTestCase.java
 (original)
+++ 
qpid/trunk/qpid/java/systests/src/main/java/org/apache/qpid/test/utils/QpidBrokerTestCase.java
 Sat Jun  7 19:01:03 2014
@@ -22,6 +22,7 @@ import java.io.FileOutputStream;
 import java.io.IOException;
 import java.io.PrintStream;
 import java.util.ArrayList;
+import java.util.Collections;
 import java.util.HashMap;
 import java.util.HashSet;
 import java.util.List;
@@ -63,11 +64,15 @@ import org.apache.qpid.server.BrokerOpti
 import org.apache.qpid.server.configuration.BrokerProperties;
 import org.apache.qpid.server.configuration.updater.TaskExecutor;
 import org.apache.qpid.server.configuration.updater.TaskExecutorImpl;
+import org.apache.qpid.server.model.ConfiguredObject;
 import org.apache.qpid.server.model.Port;
 import org.apache.qpid.server.model.Protocol;
 import org.apache.qpid.server.model.VirtualHostNode;
 import org.apache.qpid.server.store.DurableConfigurationStore;
 import org.apache.qpid.server.store.MemoryConfigurationStore;
+import org.apache.qpid.server.virtualhost.ProvidedStoreVirtualHost;
+import org.apache.qpid.server.virtualhostnode.AbstractStandardVirtualHostNode;
+import org.apache.qpid.server.virtualhostnode.FileBasedVirtualHostNode;
 import org.apache.qpid.url.URLSyntaxException;
 import org.apache.qpid.util.FileUtils;
 import org.apache.qpid.util.SystemUtils;
@@ -859,14 +864,18 @@ public class QpidBrokerTestCase extends 
             storeDir = "${QPID_WORK}" + File.separator + virtualHostNodeName + 
File.separator + brokerPort;
         }
 
-        // add new virtual host configuration to the broker store
+        // add new virtual host node with vhost blueprint configuration to the 
broker store
         Map<String, Object> attributes = new HashMap<String, Object>();
         attributes.put(VirtualHostNode.NAME, virtualHostNodeName);
         attributes.put(VirtualHostNode.TYPE, storeType);
         if (storeDir != null)
         {
-            attributes.put(DurableConfigurationStore.STORE_PATH, storeDir);
+            attributes.put(FileBasedVirtualHostNode.STORE_PATH, storeDir);
         }
+        final String blueprint = String.format("{ \"type\" : \"%s\"  } }", 
ProvidedStoreVirtualHost.VIRTUAL_HOST_TYPE);
+        attributes.put(ConfiguredObject.CONTEXT, 
Collections.singletonMap(AbstractStandardVirtualHostNode.VIRTUALHOST_BLUEPRINT_CONTEXT_VAR,
+                                                                          
blueprint));
+
         int port = getPort(brokerPort);
         
getBrokerConfiguration(port).addObjectConfiguration(VirtualHostNode.class, 
attributes);
     }

Modified: qpid/trunk/qpid/java/test-profiles/JavaTransientExcludes
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/java/test-profiles/JavaTransientExcludes?rev=1601163&r1=1601162&r2=1601163&view=diff
==============================================================================
--- qpid/trunk/qpid/java/test-profiles/JavaTransientExcludes (original)
+++ qpid/trunk/qpid/java/test-profiles/JavaTransientExcludes Sat Jun  7 
19:01:03 2014
@@ -53,8 +53,9 @@ org.apache.qpid.systest.management.jmx.Q
 
 
org.apache.qpid.test.unit.client.MaxDeliveryCountTest#testWhenBrokerIsRestartedAfterEnqeuingMessages
 
+org.apache.qpid.systest.rest.VirtualHostRestTest#testPutCreateVirtualHostUsingProfileNodeType
 
org.apache.qpid.systest.rest.VirtualHostRestTest#testRecoverVirtualHostInDesiredStateStoppedWithDescription
 
-org.apache.qpid.systest.rest.VirtualHostNodeRestTest#testCreateAndDeleteNodeWithTestProfileStore
-org.apache.qpid.systest.rest.VirtualHostNodeRestTest#testCreateAndDeleteNodeWithJsonStore
+org.apache.qpid.systest.rest.VirtualHostNodeRestTest#testCreateAndDeleteVirtualHostNode
+
 



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

Reply via email to