[jboss-cvs] JBoss Messaging SVN: r5724 - in trunk: src/config and 4 other directories.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Mon Jan 26 08:07:23 EST 2009


Author: jmesnil
Date: 2009-01-26 08:07:23 -0500 (Mon, 26 Jan 2009)
New Revision: 5724

Added:
   trunk/src/config/jbm-queues.xml
   trunk/src/schemas/jbm-queues.xsd
   trunk/tests/src/org/jboss/messaging/tests/unit/core/config/impl/QueueDeployerTest.java
Removed:
   trunk/src/config/queues.xml
   trunk/src/schemas/queues.xsd
Modified:
   trunk/build-messaging.xml
   trunk/src/main/org/jboss/messaging/core/deployers/impl/QueueDeployer.java
   trunk/src/main/org/jboss/messaging/core/deployers/impl/QueueSettingsDeployer.java
   trunk/src/schemas/jbm-configuration.xsd
   trunk/tests/config/ConfigurationTest-full-config.xml
Log:
JBMESSAGING-1301: Provide xml schemas for our xml config

* renamed queue settings file to jbm-queues.xml
* renamed the corresponding schema to jbm-queues.xsd

Modified: trunk/build-messaging.xml
===================================================================
--- trunk/build-messaging.xml	2009-01-26 11:55:47 UTC (rev 5723)
+++ trunk/build-messaging.xml	2009-01-26 13:07:23 UTC (rev 5724)
@@ -551,22 +551,22 @@
    <target name="validate-configuration" description="validate configuration files">
       <echo>validating server configuration</echo>
       <schemavalidate file="src/config/jbm-configuration.xml">
-         <schema namespace="urn:jboss:messaging-configuration" 
+         <schema namespace="urn:jboss:messaging" 
                  file="src/schemas/jbm-configuration.xsd"/>
       </schemavalidate>
       <echo>validating security credentials</echo>
       <schemavalidate file="src/config/jbm-security.xml">
-         <schema namespace="urn:jboss:messaging-security" 
+         <schema namespace="urn:jboss:messaging" 
                  file="src/schemas/jbm-security.xsd"/>
       </schemavalidate>
       <echo>validating queue settings</echo>
-      <schemavalidate file="src/config/queues.xml">
-         <schema namespace="urn:jboss:messaging-queues" 
-                 file="src/schemas/queues.xsd"/>
+      <schemavalidate file="src/config/jbm-queues.xml">
+         <schema namespace="urn:jboss:messaging" 
+                 file="src/schemas/jbm-queues.xsd"/>
       </schemavalidate>
       <echo>validating jms resources</echo>
       <schemavalidate file="src/config/jbm-jms.xml">
-         <schema namespace="urn:jboss:messaging-jms" 
+         <schema namespace="urn:jboss:messaging" 
                  file="src/schemas/jbm-jms.xsd"/>
       </schemavalidate>
    </target>

Copied: trunk/src/config/jbm-queues.xml (from rev 5705, trunk/src/config/queues.xml)
===================================================================
--- trunk/src/config/jbm-queues.xml	                        (rev 0)
+++ trunk/src/config/jbm-queues.xml	2009-01-26 13:07:23 UTC (rev 5724)
@@ -0,0 +1,121 @@
+<settings xmlns="urn:jboss:messaging" 
+            xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
+            xsi:schemaLocation="urn:jboss:messaging ../schemas/jbm-queues.xsd ">
+
+   <security match="topicjms.testTopic">
+      <permission type="create" roles="durpublisher"/>
+      <permission type="read" roles="guest,publisher,durpublisher"/>
+      <permission type="write" roles="guest,publisher,durpublisher"/>
+   </security>
+
+   <security match="topicjms.securedTopic">
+      <permission type="write" roles="publisher"/>
+      <permission type="read" roles="publisher"/>
+   </security>
+
+   <security match="topicjms.testDurableTopic">
+      <permission type="create" roles="durpublisher"/>
+      <permission type="read" roles="guest,publisher,durpublisher"/>
+      <permission type="write" roles="guest,publisher,durpublisher"/>
+   </security>
+
+   <security match="queuejms.testQueue">
+      <permission type="read" roles="guest,publisher"/>
+      <permission type="write" roles="guest,publisher"/>
+   </security>
+
+   <security match="queuejms.NoSuchQueue">
+      <permission type="read" roles="guest,publisher"/>
+      <permission type="write" roles="guest,publisher"/>
+   </security>
+
+   <security match="topicjms.NoSuchTopic">
+      <permission type="read" roles="guest,publisher"/>
+      <permission type="write" roles="guest,publisher"/>
+   </security>
+
+   <security match="queuetempjms.*">
+      <permission type="create" roles="guest,def"/>
+      <permission type="read" roles="guest,def"/>
+      <permission type="write" roles="guest,def"/>
+   </security>
+
+   <security match="topictempjms.*">
+      <permission type="create" roles="guest,def"/>
+      <permission type="read" roles="guest,def"/>
+      <permission type="write" roles="guest,def"/>
+   </security>
+
+   <!--this will catch any word i.e. queuejms.anything-->
+   <!--<security match="queuejms.^">
+      <permission type="read" roles="guest,publisher"/>
+      <permission type="write" roles="guest,publisher"/>
+   </security>-->
+
+   <!--this will catch any word i.e. queuejms.anything-->
+   <!--<security match="topicjms.^">
+      <permission type="read" roles="guest,publisher"/>
+      <permission type="write" roles="guest,publisher"/>
+   </security>-->
+
+   <!--default security to catch all-->
+   <security match="*">
+      <permission type="create" roles="guest,def"/>
+      <permission type="read" roles="guest,def"/>
+      <permission type="write" roles="guest,def"/>
+   </security>
+
+   <queue-settings match="queuejms.QueueWithOwnDLQAndExpiryQueue">
+      <dead-letter-address>queuejms.PrivateDLQ</dead-letter-address>
+      <expiry-address>queuejms.PrivateExpiryQueue</expiry-address>
+   </queue-settings>
+
+   <queue-settings match="topicjms.TopicWithOwnDLQAndExpiryQueue">
+      <dead-letter-address>queuejms.PrivateDLQ</dead-letter-address>
+      <expiry-address>queuejms.PrivateExpiryQueue</expiry-address>
+   </queue-settings>
+
+   <queue-settings match="queuejms.QueueWithOwnRedeliveryDelay">
+      <redelivery-delay>5000</redelivery-delay>
+   </queue-settings>
+
+   <queue-settings match="topicjms.TopicWithOwnRedeliveryDelay">
+      <redelivery-delay>5000</redelivery-delay>
+   </queue-settings>
+
+   <queue-settings match="queuejms.testDistributedQueue">
+      <clustered>true</clustered>
+   </queue-settings>
+
+   <queue-settings match="topicjms.testDistributedTopic">
+      <clustered>true</clustered>
+   </queue-settings>
+
+   <queue-settings match="queuejms.testPerfQueue">
+      <clustered>false</clustered>
+   </queue-settings>
+
+   <queue-settings match="queuejms.MyQueue">
+      <max-size-bytes>-1</max-size-bytes>
+      <page-size-bytes>10485760</page-size-bytes>
+      <drop-messages-when-full>false</drop-messages-when-full>
+   </queue-settings>
+
+   <queue-settings match="queuejms.testGroupQueue">
+      <max-size-bytes>-1</max-size-bytes>
+      <page-size-bytes>10485760</page-size-bytes>
+      <drop-messages-when-full>false</drop-messages-when-full>
+      <distribution-policy-class>org.jboss.messaging.core.server.impl.GroupingRoundRobinDistributor</distribution-policy-class>
+   </queue-settings>
+
+   <!--default for catch all-->
+   <queue-settings match="*">
+      <clustered>false</clustered>
+      <dead-letter-address>queuejms.DLQ</dead-letter-address>
+      <expiry-address>queuejms.ExpiryQueue</expiry-address>
+      <redelivery-delay>0</redelivery-delay>
+      <max-size-bytes>-1</max-size-bytes>
+      <distribution-policy-class>org.jboss.messaging.core.server.impl.RoundRobinDistributor</distribution-policy-class>
+      <message-counter-history-day-limit>10</message-counter-history-day-limit>
+   </queue-settings>
+</settings>


Property changes on: trunk/src/config/jbm-queues.xml
___________________________________________________________________
Name: svn:mergeinfo
   + 

Deleted: trunk/src/config/queues.xml
===================================================================
--- trunk/src/config/queues.xml	2009-01-26 11:55:47 UTC (rev 5723)
+++ trunk/src/config/queues.xml	2009-01-26 13:07:23 UTC (rev 5724)
@@ -1,121 +0,0 @@
-<settings xmlns="urn:jboss:messaging" 
-            xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
-            xsi:schemaLocation="urn:jboss:messaging ../schemas/queues.xsd ">
-
-   <security match="topicjms.testTopic">
-      <permission type="create" roles="durpublisher"/>
-      <permission type="read" roles="guest,publisher,durpublisher"/>
-      <permission type="write" roles="guest,publisher,durpublisher"/>
-   </security>
-
-   <security match="topicjms.securedTopic">
-      <permission type="write" roles="publisher"/>
-      <permission type="read" roles="publisher"/>
-   </security>
-
-   <security match="topicjms.testDurableTopic">
-      <permission type="create" roles="durpublisher"/>
-      <permission type="read" roles="guest,publisher,durpublisher"/>
-      <permission type="write" roles="guest,publisher,durpublisher"/>
-   </security>
-
-   <security match="queuejms.testQueue">
-      <permission type="read" roles="guest,publisher"/>
-      <permission type="write" roles="guest,publisher"/>
-   </security>
-
-   <security match="queuejms.NoSuchQueue">
-      <permission type="read" roles="guest,publisher"/>
-      <permission type="write" roles="guest,publisher"/>
-   </security>
-
-   <security match="topicjms.NoSuchTopic">
-      <permission type="read" roles="guest,publisher"/>
-      <permission type="write" roles="guest,publisher"/>
-   </security>
-
-   <security match="queuetempjms.*">
-      <permission type="create" roles="guest,def"/>
-      <permission type="read" roles="guest,def"/>
-      <permission type="write" roles="guest,def"/>
-   </security>
-
-   <security match="topictempjms.*">
-      <permission type="create" roles="guest,def"/>
-      <permission type="read" roles="guest,def"/>
-      <permission type="write" roles="guest,def"/>
-   </security>
-
-   <!--this will catch any word i.e. queuejms.anything-->
-   <!--<security match="queuejms.^">
-      <permission type="read" roles="guest,publisher"/>
-      <permission type="write" roles="guest,publisher"/>
-   </security>-->
-
-   <!--this will catch any word i.e. queuejms.anything-->
-   <!--<security match="topicjms.^">
-      <permission type="read" roles="guest,publisher"/>
-      <permission type="write" roles="guest,publisher"/>
-   </security>-->
-
-   <!--default security to catch all-->
-   <security match="*">
-      <permission type="create" roles="guest,def"/>
-      <permission type="read" roles="guest,def"/>
-      <permission type="write" roles="guest,def"/>
-   </security>
-
-   <queue-settings match="queuejms.QueueWithOwnDLQAndExpiryQueue">
-      <dead-letter-address>queuejms.PrivateDLQ</dead-letter-address>
-      <expiry-address>queuejms.PrivateExpiryQueue</expiry-address>
-   </queue-settings>
-
-   <queue-settings match="topicjms.TopicWithOwnDLQAndExpiryQueue">
-      <dead-letter-address>queuejms.PrivateDLQ</dead-letter-address>
-      <expiry-address>queuejms.PrivateExpiryQueue</expiry-address>
-   </queue-settings>
-
-   <queue-settings match="queuejms.QueueWithOwnRedeliveryDelay">
-      <redelivery-delay>5000</redelivery-delay>
-   </queue-settings>
-
-   <queue-settings match="topicjms.TopicWithOwnRedeliveryDelay">
-      <redelivery-delay>5000</redelivery-delay>
-   </queue-settings>
-
-   <queue-settings match="queuejms.testDistributedQueue">
-      <clustered>true</clustered>
-   </queue-settings>
-
-   <queue-settings match="topicjms.testDistributedTopic">
-      <clustered>true</clustered>
-   </queue-settings>
-
-   <queue-settings match="queuejms.testPerfQueue">
-      <clustered>false</clustered>
-   </queue-settings>
-
-   <queue-settings match="queuejms.MyQueue">
-      <max-size-bytes>-1</max-size-bytes>
-      <page-size-bytes>10485760</page-size-bytes>
-      <drop-messages-when-full>false</drop-messages-when-full>
-   </queue-settings>
-
-   <queue-settings match="queuejms.testGroupQueue">
-      <max-size-bytes>-1</max-size-bytes>
-      <page-size-bytes>10485760</page-size-bytes>
-      <drop-messages-when-full>false</drop-messages-when-full>
-      <distribution-policy-class>org.jboss.messaging.core.server.impl.GroupingRoundRobinDistributor</distribution-policy-class>
-   </queue-settings>
-
-   <!--default for catch all-->
-   <queue-settings match="*">
-      <clustered>false</clustered>
-      <dead-letter-address>queuejms.DLQ</dead-letter-address>
-      <expiry-address>queuejms.ExpiryQueue</expiry-address>
-      <redelivery-delay>0</redelivery-delay>
-      <max-size-bytes>-1</max-size-bytes>
-      <distribution-policy-class>org.jboss.messaging.core.server.impl.RoundRobinDistributor</distribution-policy-class>
-      <message-counter-history-day-limit>10</message-counter-history-day-limit>
-   </queue-settings>
-</settings>

Modified: trunk/src/main/org/jboss/messaging/core/deployers/impl/QueueDeployer.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/deployers/impl/QueueDeployer.java	2009-01-26 11:55:47 UTC (rev 5723)
+++ trunk/src/main/org/jboss/messaging/core/deployers/impl/QueueDeployer.java	2009-01-26 13:07:23 UTC (rev 5724)
@@ -64,7 +64,7 @@
          XMLUtil.validate(rootNode, "jbm-configuration.xsd");
       } else 
       {
-         XMLUtil.validate(rootNode, "queues.xsd");         
+         XMLUtil.validate(rootNode, "jbm-queues.xsd");         
       }
    }
 
@@ -93,7 +93,7 @@
     */
    public String[] getConfigFileNames()
    {
-      return new String[] {"jbm-configuration.xml", "queues.xml"};
+      return new String[] {"jbm-configuration.xml", "jbm-queues.xml"};
    }
 
    private QueueConfiguration parseQueueConfiguration(final Node node)

Modified: trunk/src/main/org/jboss/messaging/core/deployers/impl/QueueSettingsDeployer.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/deployers/impl/QueueSettingsDeployer.java	2009-01-26 11:55:47 UTC (rev 5723)
+++ trunk/src/main/org/jboss/messaging/core/deployers/impl/QueueSettingsDeployer.java	2009-01-26 13:07:23 UTC (rev 5724)
@@ -79,7 +79,7 @@
          XMLUtil.validate(rootNode, "jbm-configuration.xsd");
       } else 
       {
-         XMLUtil.validate(rootNode, "queues.xsd");         
+         XMLUtil.validate(rootNode, "jbm-queues.xsd");         
       }
    }
 
@@ -145,7 +145,7 @@
 
    public String[] getConfigFileNames()
    {
-      return new String[] {"jbm-configuration", "queues.xml"};
+      return new String[] {"jbm-configuration", "jbm-queues.xml"};
    }
 
    /**

Modified: trunk/src/schemas/jbm-configuration.xsd
===================================================================
--- trunk/src/schemas/jbm-configuration.xsd	2009-01-26 11:55:47 UTC (rev 5723)
+++ trunk/src/schemas/jbm-configuration.xsd	2009-01-26 13:07:23 UTC (rev 5724)
@@ -5,7 +5,7 @@
 	elementFormDefault="qualified" attributeFormDefault="unqualified"
 	version="1.0">
 
-	<xsd:include schemaLocation="queues.xsd"></xsd:include>
+	<xsd:include schemaLocation="jbm-queues.xsd"></xsd:include>
 	<xsd:element name="deployment">
 		<xsd:complexType>
 			<xsd:sequence>

Copied: trunk/src/schemas/jbm-queues.xsd (from rev 5704, trunk/src/schemas/queues.xsd)
===================================================================
--- trunk/src/schemas/jbm-queues.xsd	                        (rev 0)
+++ trunk/src/schemas/jbm-queues.xsd	2009-01-26 13:07:23 UTC (rev 5724)
@@ -0,0 +1,89 @@
+<?xml version='1.0' encoding='UTF-8'?>
+
+<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+   targetNamespace="urn:jboss:messaging"
+   xmlns="urn:jboss:messaging"
+   elementFormDefault="qualified"
+   attributeFormDefault="unqualified"
+   version="1.0">
+   
+   <xsd:element name="settings">
+   	<xsd:complexType>
+   		<xsd:sequence>
+   			<xsd:element ref="security" maxOccurs="unbounded"
+   				minOccurs="0">
+   			</xsd:element>
+   			<xsd:element ref="queue-settings" maxOccurs="unbounded"
+   				minOccurs="0">
+   			</xsd:element>
+            <xsd:element ref="queue" maxOccurs="unbounded"
+                minOccurs="0">
+            </xsd:element>
+   		</xsd:sequence>
+   	</xsd:complexType>
+   </xsd:element>
+
+   <xsd:element name="permission">
+   	<xsd:complexType>
+   		<xsd:attribute name="type" type="xsd:string" use="required"></xsd:attribute>
+   		<xsd:attribute name="roles" type="xsd:string" use="required"></xsd:attribute>
+   	</xsd:complexType>
+   </xsd:element>
+
+   <xsd:element name="security">
+   	<xsd:complexType>
+   		<xsd:sequence>
+   			<xsd:element ref="permission" maxOccurs="unbounded" minOccurs="1"></xsd:element>
+   		</xsd:sequence>
+            <xsd:attribute name="match" type="xsd:string" use="required"></xsd:attribute>
+        </xsd:complexType>
+   </xsd:element>
+
+   <xsd:element name="queue-settings" type="queue-settingsType"></xsd:element>
+
+   <xsd:complexType name="queue-settingsType">
+   	<xsd:sequence>
+        <xsd:element name="clustered" type="xsd:boolean"
+            maxOccurs="1" minOccurs="0">
+        </xsd:element>
+   		<xsd:element name="dead-letter-address" type="xsd:string"
+   			maxOccurs="1" minOccurs="0">
+   		</xsd:element>
+        <xsd:element name="expiry-address" type="xsd:string"
+            maxOccurs="1" minOccurs="0">
+        </xsd:element>
+        <xsd:element name="redelivery-delay" type="xsd:long"
+            maxOccurs="1" minOccurs="0">
+        </xsd:element>
+        <xsd:element name="max-size-bytes" type="xsd:long"
+            maxOccurs="1" minOccurs="0">
+        </xsd:element>
+        <xsd:element name="page-size-bytes" type="xsd:long"
+            maxOccurs="1" minOccurs="0">
+        </xsd:element>
+        <xsd:element name="drop-messages-when-full" type="xsd:boolean"
+            maxOccurs="1" minOccurs="0">
+        </xsd:element>
+        <xsd:element name="distribution-policy-class" type="xsd:string"
+            maxOccurs="1" minOccurs="0">
+        </xsd:element>
+        <xsd:element name="message-counter-history-day-limit" type="xsd:int"
+            maxOccurs="1" minOccurs="0">
+        </xsd:element>
+   	</xsd:sequence>
+   	<xsd:attribute name="match" type="xsd:string" use="required"></xsd:attribute>
+   </xsd:complexType>   
+   
+      <xsd:element name="queue" type="queueType"></xsd:element>
+   
+    <xsd:complexType name="queueType">
+        <xsd:attribute name="name" type="xsd:string" use="required"></xsd:attribute>
+        <xsd:attribute name="address" type="xsd:string"
+            use="required">
+        </xsd:attribute>
+        <xsd:attribute name="filter" type="xsd:string" use="optional"></xsd:attribute>
+        <xsd:attribute name="durable" type="xsd:boolean"
+            use="optional">
+        </xsd:attribute>
+    </xsd:complexType>
+</xsd:schema>


Property changes on: trunk/src/schemas/jbm-queues.xsd
___________________________________________________________________
Name: svn:mergeinfo
   + 

Deleted: trunk/src/schemas/queues.xsd
===================================================================
--- trunk/src/schemas/queues.xsd	2009-01-26 11:55:47 UTC (rev 5723)
+++ trunk/src/schemas/queues.xsd	2009-01-26 13:07:23 UTC (rev 5724)
@@ -1,89 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-
-<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
-   targetNamespace="urn:jboss:messaging"
-   xmlns="urn:jboss:messaging"
-   elementFormDefault="qualified"
-   attributeFormDefault="unqualified"
-   version="1.0">
-   
-   <xsd:element name="settings">
-   	<xsd:complexType>
-   		<xsd:sequence>
-   			<xsd:element ref="security" maxOccurs="unbounded"
-   				minOccurs="0">
-   			</xsd:element>
-   			<xsd:element ref="queue-settings" maxOccurs="unbounded"
-   				minOccurs="0">
-   			</xsd:element>
-            <xsd:element ref="queue" maxOccurs="unbounded"
-                minOccurs="0">
-            </xsd:element>
-   		</xsd:sequence>
-   	</xsd:complexType>
-   </xsd:element>
-
-   <xsd:element name="permission">
-   	<xsd:complexType>
-   		<xsd:attribute name="type" type="xsd:string" use="required"></xsd:attribute>
-   		<xsd:attribute name="roles" type="xsd:string" use="required"></xsd:attribute>
-   	</xsd:complexType>
-   </xsd:element>
-
-   <xsd:element name="security">
-   	<xsd:complexType>
-   		<xsd:sequence>
-   			<xsd:element ref="permission" maxOccurs="unbounded" minOccurs="1"></xsd:element>
-   		</xsd:sequence>
-            <xsd:attribute name="match" type="xsd:string" use="required"></xsd:attribute>
-        </xsd:complexType>
-   </xsd:element>
-
-   <xsd:element name="queue-settings" type="queue-settingsType"></xsd:element>
-
-   <xsd:complexType name="queue-settingsType">
-   	<xsd:sequence>
-        <xsd:element name="clustered" type="xsd:boolean"
-            maxOccurs="1" minOccurs="0">
-        </xsd:element>
-   		<xsd:element name="dead-letter-address" type="xsd:string"
-   			maxOccurs="1" minOccurs="0">
-   		</xsd:element>
-        <xsd:element name="expiry-address" type="xsd:string"
-            maxOccurs="1" minOccurs="0">
-        </xsd:element>
-        <xsd:element name="redelivery-delay" type="xsd:long"
-            maxOccurs="1" minOccurs="0">
-        </xsd:element>
-        <xsd:element name="max-size-bytes" type="xsd:long"
-            maxOccurs="1" minOccurs="0">
-        </xsd:element>
-        <xsd:element name="page-size-bytes" type="xsd:long"
-            maxOccurs="1" minOccurs="0">
-        </xsd:element>
-        <xsd:element name="drop-messages-when-full" type="xsd:boolean"
-            maxOccurs="1" minOccurs="0">
-        </xsd:element>
-        <xsd:element name="distribution-policy-class" type="xsd:string"
-            maxOccurs="1" minOccurs="0">
-        </xsd:element>
-        <xsd:element name="message-counter-history-day-limit" type="xsd:int"
-            maxOccurs="1" minOccurs="0">
-        </xsd:element>
-   	</xsd:sequence>
-   	<xsd:attribute name="match" type="xsd:string" use="required"></xsd:attribute>
-   </xsd:complexType>   
-   
-      <xsd:element name="queue" type="queueType"></xsd:element>
-   
-    <xsd:complexType name="queueType">
-        <xsd:attribute name="name" type="xsd:string" use="required"></xsd:attribute>
-        <xsd:attribute name="address" type="xsd:string"
-            use="required">
-        </xsd:attribute>
-        <xsd:attribute name="filter" type="xsd:string" use="optional"></xsd:attribute>
-        <xsd:attribute name="durable" type="xsd:boolean"
-            use="optional">
-        </xsd:attribute>
-    </xsd:complexType>
-</xsd:schema>

Modified: trunk/tests/config/ConfigurationTest-full-config.xml
===================================================================
--- trunk/tests/config/ConfigurationTest-full-config.xml	2009-01-26 11:55:47 UTC (rev 5723)
+++ trunk/tests/config/ConfigurationTest-full-config.xml	2009-01-26 13:07:23 UTC (rev 5724)
@@ -137,5 +137,9 @@
       <journal-max-aio>56546</journal-max-aio>
       <large-messages-directory>largemessagesdir</large-messages-directory>
    </configuration>
+   
+   <settings>
+    <queue name="foo3" address="bar" />
+   </settings>
 
 </deployment>
\ No newline at end of file

Added: trunk/tests/src/org/jboss/messaging/tests/unit/core/config/impl/QueueDeployerTest.java
===================================================================
--- trunk/tests/src/org/jboss/messaging/tests/unit/core/config/impl/QueueDeployerTest.java	                        (rev 0)
+++ trunk/tests/src/org/jboss/messaging/tests/unit/core/config/impl/QueueDeployerTest.java	2009-01-26 13:07:23 UTC (rev 5724)
@@ -0,0 +1,115 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005-2009, Red Hat Middleware LLC, and individual contributors
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+
+package org.jboss.messaging.tests.unit.core.config.impl;
+
+import junit.framework.TestCase;
+
+import org.jboss.messaging.core.config.Configuration;
+import org.jboss.messaging.core.config.cluster.QueueConfiguration;
+import org.jboss.messaging.core.config.impl.ConfigurationImpl;
+import org.jboss.messaging.core.deployers.impl.FileDeploymentManager;
+import org.jboss.messaging.core.deployers.impl.QueueDeployer;
+import org.jboss.messaging.util.XMLUtil;
+import org.w3c.dom.Element;
+import org.w3c.dom.NodeList;
+
+/**
+ * A QueueDeployerTest
+ *
+ * @author <a href="jmesnil at redhat.com">Jeff Mesnil</a>
+ * 
+ */
+public class QueueDeployerTest extends TestCase
+{
+
+   // Constants -----------------------------------------------------
+
+   // Attributes ----------------------------------------------------
+
+   // Static --------------------------------------------------------
+
+   // Constructors --------------------------------------------------
+
+   // Public --------------------------------------------------------
+
+   public void testParseQueueConfigurationFromQueueSettings() throws Exception
+   {
+      Configuration configuration = new ConfigurationImpl();
+      QueueDeployer deployer = new QueueDeployer(new FileDeploymentManager(500), configuration);
+
+      String xml = "<settings xmlns='urn:jboss:messaging'>"
+                 + "<queue name='foo' address='bar' filter='speed > 88' durable='false' />"
+                 + "</settings>";
+      
+      Element rootNode = XMLUtil.stringToElement(xml);
+      deployer.validate(rootNode);
+      NodeList queueNodes = rootNode.getElementsByTagName("queue");
+      assertEquals(1, queueNodes.getLength());
+      deployer.deploy(queueNodes.item(0));
+      
+      assertEquals(1, configuration.getQueueConfigurations().size());
+      
+      QueueConfiguration queueConfiguration = configuration.getQueueConfigurations().get(0);
+      assertEquals("foo", queueConfiguration.getName());
+      assertEquals("bar", queueConfiguration.getAddress());
+      assertEquals("speed > 88", queueConfiguration.getFilterString());
+      assertEquals(false, queueConfiguration.isDurable());      
+   }
+
+   public void testParseQueueConfigurationFromJBMConfiguration() throws Exception
+   {
+      Configuration configuration = new ConfigurationImpl();
+      QueueDeployer deployer = new QueueDeployer(new FileDeploymentManager(500), configuration);
+
+      String xml = "<deployment xmlns='urn:jboss:messaging'> " 
+                 + "<configuration>"
+                 + "<acceptor><factory-class>FooAcceptor</factory-class></acceptor>"
+                 + "<queue name='foo' address='bar' filter='speed > 88' durable='false' />"
+                 + "</configuration>"
+                 + "<settings>"
+                 + "<queue name='foo2' address='bar2' filter='speed > 88' durable='true' />"
+                 + "</settings>"
+                 + "</deployment>";
+      
+      Element rootNode = XMLUtil.stringToElement(xml);
+      deployer.validate(rootNode);
+      NodeList queueNodes = rootNode.getElementsByTagName("queue");
+      assertEquals(2, queueNodes.getLength());
+      
+      deployer.deploy(queueNodes.item(0));
+      deployer.deploy(queueNodes.item(1));
+      
+      assertEquals(2, configuration.getQueueConfigurations().size());   
+      assertEquals("foo", configuration.getQueueConfigurations().get(0).getName());
+      assertEquals("foo2", configuration.getQueueConfigurations().get(1).getName());
+   }
+
+   // Package protected ---------------------------------------------
+
+   // Protected -----------------------------------------------------
+
+   // Private -------------------------------------------------------
+
+   // Inner classes -------------------------------------------------
+
+}




More information about the jboss-cvs-commits mailing list