[hornetq-commits] JBoss hornetq SVN: r10452 - in trunk: hornetq-core and 18 other directories.

do-not-reply at jboss.org do-not-reply at jboss.org
Tue Apr 5 08:59:21 EDT 2011


Author: ataylor
Date: 2011-04-05 08:59:20 -0400 (Tue, 05 Apr 2011)
New Revision: 10452

Added:
   trunk/hornetq-core-client/
   trunk/hornetq-core-client/pom.xml
   trunk/hornetq-core/
   trunk/hornetq-core/pom.xml
   trunk/hornetq-core/src/
   trunk/hornetq-core/src/main/
   trunk/hornetq-core/src/main/java/
   trunk/hornetq-core/src/main/java/org/
   trunk/hornetq-core/src/main/java/org/hornetq/
   trunk/hornetq-core/src/main/java/org/hornetq/api/
   trunk/hornetq-core/src/main/java/org/hornetq/api/core/
   trunk/hornetq-core/src/main/java/org/hornetq/core/
   trunk/hornetq-core/src/main/java/org/hornetq/core/asyncio/
   trunk/hornetq-core/src/main/java/org/hornetq/core/buffers/
   trunk/hornetq-core/src/main/java/org/hornetq/core/client/
   trunk/hornetq-core/src/main/java/org/hornetq/core/cluster/
   trunk/hornetq-core/src/main/java/org/hornetq/core/config/
   trunk/hornetq-core/src/main/java/org/hornetq/core/deployers/
   trunk/hornetq-core/src/main/java/org/hornetq/core/exception/
   trunk/hornetq-core/src/main/java/org/hornetq/core/filter/
   trunk/hornetq-core/src/main/java/org/hornetq/core/journal/
   trunk/hornetq-core/src/main/java/org/hornetq/core/list/
   trunk/hornetq-core/src/main/java/org/hornetq/core/logging/
   trunk/hornetq-core/src/main/java/org/hornetq/core/management/
   trunk/hornetq-core/src/main/java/org/hornetq/core/message/
   trunk/hornetq-core/src/main/java/org/hornetq/core/messagecounter/
   trunk/hornetq-core/src/main/java/org/hornetq/core/paging/
   trunk/hornetq-core/src/main/java/org/hornetq/core/persistence/
   trunk/hornetq-core/src/main/java/org/hornetq/core/postoffice/
   trunk/hornetq-core/src/main/java/org/hornetq/core/protocol/
   trunk/hornetq-core/src/main/java/org/hornetq/core/registry/
   trunk/hornetq-core/src/main/java/org/hornetq/core/remoting/
   trunk/hornetq-core/src/main/java/org/hornetq/core/replication/
   trunk/hornetq-core/src/main/java/org/hornetq/core/security/
   trunk/hornetq-core/src/main/java/org/hornetq/core/server/
   trunk/hornetq-core/src/main/java/org/hornetq/core/settings/
   trunk/hornetq-core/src/main/java/org/hornetq/core/transaction/
   trunk/hornetq-core/src/main/java/org/hornetq/core/version/
   trunk/hornetq-core/src/main/java/org/hornetq/spi/
   trunk/hornetq-core/src/main/java/org/hornetq/utils/
   trunk/hornetq-core/src/main/javacc/
   trunk/hornetq-core/src/main/javacc/FilterParser.jj
   trunk/hornetq-core/src/main/resources/
   trunk/hornetq-core/src/main/resources/hornetq-version.properties
   trunk/hornetq-core/src/main/resources/schema/
   trunk/hornetq-core/src/main/resources/schema/hornetq-configuration.xsd
   trunk/hornetq-core/src/main/resources/schema/hornetq-users.xsd
Removed:
   trunk/src/config/common/hornetq-version.properties
   trunk/src/config/common/schema/hornetq-configuration.xsd
   trunk/src/config/common/schema/hornetq-users.xsd
   trunk/src/main/org/hornetq/api/core/
   trunk/src/main/org/hornetq/core/asyncio/
   trunk/src/main/org/hornetq/core/buffers/
   trunk/src/main/org/hornetq/core/client/
   trunk/src/main/org/hornetq/core/cluster/
   trunk/src/main/org/hornetq/core/config/
   trunk/src/main/org/hornetq/core/deployers/
   trunk/src/main/org/hornetq/core/exception/
   trunk/src/main/org/hornetq/core/filter/
   trunk/src/main/org/hornetq/core/journal/
   trunk/src/main/org/hornetq/core/list/
   trunk/src/main/org/hornetq/core/logging/
   trunk/src/main/org/hornetq/core/management/
   trunk/src/main/org/hornetq/core/message/
   trunk/src/main/org/hornetq/core/messagecounter/
   trunk/src/main/org/hornetq/core/paging/
   trunk/src/main/org/hornetq/core/persistence/
   trunk/src/main/org/hornetq/core/postoffice/
   trunk/src/main/org/hornetq/core/protocol/
   trunk/src/main/org/hornetq/core/registry/
   trunk/src/main/org/hornetq/core/remoting/
   trunk/src/main/org/hornetq/core/replication/
   trunk/src/main/org/hornetq/core/security/
   trunk/src/main/org/hornetq/core/server/
   trunk/src/main/org/hornetq/core/settings/
   trunk/src/main/org/hornetq/core/transaction/
   trunk/src/main/org/hornetq/core/version/
   trunk/src/main/org/hornetq/spi/
   trunk/src/main/org/hornetq/utils/
Modified:
   trunk/build-hornetq.xml
   trunk/hornetq-core/src/main/java/org/hornetq/api/core/management/ObjectNameBuilder.java
   trunk/hornetq-rest/pom.xml
   trunk/hornetq.iml
   trunk/hornetq.ipr
   trunk/pom.xml
Log:
mavenized hornetq-core

Modified: trunk/build-hornetq.xml
===================================================================
--- trunk/build-hornetq.xml	2011-04-04 22:11:03 UTC (rev 10451)
+++ trunk/build-hornetq.xml	2011-04-05 12:59:20 UTC (rev 10452)
@@ -41,8 +41,8 @@
    <!-- ======================================================================================== -->
 
    <property name="module.name" value="hornetq"/>
-	   <!-- Version properties are read from hornetq-version.properties instead of duplicating them here -->
-   <property file="src/config/common/hornetq-version.properties"/>
+	<!-- Version properties are read from hornetq-version.properties instead of duplicating them here -->
+   <property file="hornetq-core/src/main/resources/hornetq-version.properties"/>
    <property name="hornetq.version.revision" value="0" />
    <property name="hornetq.version.svnurl" value="https://svn.jboss.org/repos/hornetq/trunk"/>
    <property name="hornetq.version.string"
@@ -94,7 +94,10 @@
    <!--source and build dirs-->
    <property name="build.dir" value="build"/>
    <property name="build.classes.dir" value="${build.dir}/classes"/>
-   <property name="build.core.classes.dir" value="${build.dir}/classes/core"/>
+   <property name="hornetq.core.module.jar" value="hornetq-core"/>
+   <property name="hornetq.core.client.module.jar" value="hornetq-core-client"/>
+   <property name="target.core.jar.dir" value="${hornetq.core.module.jar}/target"/>
+   <property name="target.core.client.jar.dir" value="${hornetq.core.client.module.jar}/target"/>
    <property name="build.core.client.java5.classes.dir" value="${build.dir}/classes/core-client-java5"/>
    <property name="build.jms.classes.dir" value="${build.dir}/classes/jms"/>
    <property name="build.jms.java5.classes.dir" value="${build.dir}/classes/jms-java5"/>
@@ -119,7 +122,7 @@
    <property name="src.config.jbossas5.non-clustered.dir" value="${src.dir}/config/jboss-as-5/non-clustered"/>
    <property name="src.config.jbossas5.clustered.dir" value="${src.dir}/config/jboss-as-5/clustered"/>
    <property name="src.config.service.dir" value="${src.dir}/config/service"/>
-   <property name="src.schema.dir" value="${src.config.dir}/common/schema"/>
+   <property name="src.schema.dir" value="${hornetq.core.module.jar}/src/main/resources/schema"/>
    <property name="src.bin.dir" value="${src.dir}/bin"/>
    <property name="doc.dir" value="docs"/>
    <property name="logs.dir" value="logs"/>
@@ -208,9 +211,14 @@
       <path refid="org.jboss.netty.classpath"/>
    </path>
 
+   <path id="core.target.jar">
+      <fileset dir="${target.core.jar.dir}">
+         <include name="**/*.jar"/>
+      </fileset>
+   </path>
    <path id="jms.compilation.classpath">
-      <path location="${build.core.classes.dir}"/>
-   	  <path refid="org.jboss.netty.classpath"/>
+      <path refid="core.target.jar"/>
+   	<path refid="org.jboss.netty.classpath"/>
       <path refid="org.jboss.javaee.classpath"/>
       <path refid="org.jboss.integration.classpath"/>
       <path refid="jboss.jbossts.classpath"/>
@@ -228,19 +236,19 @@
 		
 
    <path id="jboss.integration.compilation.classpath">
-      <path location="${build.core.classes.dir}"/>
+      <path refid="core.target.jar"/>
       <path refid="org.jboss.security.classpath"/>
       <path refid="org.jboss.integration.classpath"/>
       <path refid="org.jboss.javaee.classpath"/>
    </path>
 
    <path id="twitter.integration.compilation.classpath">
-      <path location="${build.core.classes.dir}"/>
+      <path refid="core.target.jar"/>
       <path refid="org.twitter4j.classpath"/>
    </path>
 
    <path id="spring.integration.compilation.classpath">
-      <path location="${build.core.classes.dir}"/>
+      <path refid="core.target.jar"/>
       <path location="${build.jms.classes.dir}"/>
       <path refid="org.jboss.javaee.classpath"/>
       <path refid="org.springframework.classpath"/>
@@ -248,17 +256,18 @@
 
    <path id="jboss.service.compilation.classpath">
       <path refid="org.jboss.javaee.classpath"/>
-      <path location="${build.core.classes.dir}"/>
+      <path refid="core.target.jar"/>
       <path location="${build.jboss.integration.classes.dir}"/>
    </path>
 
    <path id="bootstrap.compilation.classpath">
-      <path location="${build.core.classes.dir}"/>
+      <path refid="core.target.jar"/>
       <path refid="org.jboss.microcontainer.classpath"/>
       <path refid="org.jboss.classpath"/>
    </path>
 
    <path id="logging.compilation.classpath">
+      <path refid="core.target.jar"/>
       <path refid="log4j.log4j.classpath"/>
    </path>
 
@@ -404,9 +413,13 @@
       </delete>
       <ant antfile="${examples.dir}/build.xml" target="clean" inheritall="false"/>
       <ant antfile="build-thirdparty.xml" target="maven-install">
-	<property name="maven.opts" value="-f hornetq-rest/pom.xml"/>
-	<property name="maven.goal" value="clean"/>
+         <property name="maven.opts" value="-f hornetq-rest/pom.xml"/>
+         <property name="maven.goal" value="clean"/>
       </ant>
+      <ant antfile="build-thirdparty.xml" target="maven-install">
+         <property name="maven.opts" value="-f hornetq-core/pom.xml"/>
+         <property name="maven.goal" value="clean"/>
+      </ant>
    </target>
 
    <target name="init" depends="createthirdparty">
@@ -447,10 +460,13 @@
    <!-- Compilation targets               -->
    <!-- ================================= -->
 
-   <target name="compile" depends="compile-jms, compile-core-client-java5"/>
+   <target name="compile" depends="compile-jms"/>
 
-   <target name="compile-core" depends="init">
-      <mkdir dir="${build.src.dir}/org/hornetq/core/filter/impl"/>
+   <target name="compile-core" depends="jar-core">
+    <!--  <exec executable="../tools/maven/bin/mvn" dir="hornetq-core">
+         <arg value="package"/>
+      </exec>-->
+     <!-- <mkdir dir="${build.src.dir}/org/hornetq/core/filter/impl"/>
       <javacc target="${src.main.dir}/org/hornetq/core/filter/impl/FilterParser.jj"
               outputdirectory="${build.src.dir}/org/hornetq/core/filter/impl"
               javacchome="${sun.javacc.lib}"
@@ -490,7 +506,7 @@
          <filterset>
                <filter token="NETTY.VERSION" value="${netty.version}"/>
          </filterset>
-      </copy>
+      </copy>-->
 
    </target>
 
@@ -778,7 +794,7 @@
       </schemavalidate>
       <schemavalidate file="${conf.dir}/hornetq-jms.xml">
          <schema namespace="urn:hornetq"
-                 file="${src.schema.dir}/hornetq-jms.xsd"/>
+                 file="src/config/common/schema/hornetq-jms.xsd"/>
       </schemavalidate>
    </target>
 
@@ -791,7 +807,7 @@
    </target>
 
    <target name="jar"
-           depends="jar-core, jar-core-client, jar-core-client-java5, jar-jms, jar-jms-client, jar-jms-client-java5, jar-jboss-integration, jar-jboss-service, jar-bootstrap, jar-logging, jar-ra, jar-mc, jar-jnp-client, jar-resources, sources-jar, jar-twitter-integration, jar-spring-integration, jar-rest, eap-examples">
+           depends="jar-core, jar-core-client, jar-jms, jar-jms-client, jar-jboss-integration, jar-jboss-service, jar-bootstrap, jar-logging, jar-ra, jar-mc, jar-jnp-client, jar-resources, sources-jar, jar-twitter-integration, jar-spring-integration, jar-rest, eap-examples">
    </target>
 
    <target name="jar-jnp-client" depends="init">
@@ -820,20 +836,12 @@
       </jar>
    </target>
 
-   <target name="jar-core" depends="compile-core">
-
-      <jar jarfile="${build.jars.dir}/${core.jar.name}">
-         <fileset dir="${build.core.classes.dir}" includes="**"/>
-         <fileset dir="${src.config.dir}/common">
-            <include name="**/*.xsd"/>
-            <exclude name="**/hornetq-jms.xsd"/>
-         </fileset>
-         <manifest>
-            <attribute name="HornetQ-Version" value="${hornetq.version.string}"/>
-            <attribute name="HornetQ-SVN-URL" value="${hornetq.version.svnurl}"/>
-         </manifest>
-      </jar>
-
+   <target name="jar-core" depends="init">
+      <ant antfile="build-thirdparty.xml" target="maven-install">
+         <property name="maven.opts" value="-Dmaven.test.skip=true"/>
+         <property name="maven.goal" value="install"/>
+         <property name="working.dir" value="hornetq-core"/>
+      </ant>
    </target>
 
    <target name="jar-core-sources">
@@ -1017,36 +1025,11 @@
    </target>
 
    <target name="jar-core-client" depends="compile-core">
-      <jar jarfile="${build.jars.dir}/${core.client.jar.name}">
-         <fileset dir="${build.core.classes.dir}">
-            <include name="hornetq-version.properties"/>
-            <include name="org/hornetq/api/**/*.class"/>
-            <include name="org/hornetq/*.class"/>
-            <include name="org/hornetq/core/buffers/**/*.class"/>
-            <include name="org/hornetq/core/client/**/*.class"/>
-            <include name="org/hornetq/core/filter/**/*.class"/>
-            <include name="org/hornetq/core/exception/**/*.class"/>
-            <include name="org/hornetq/core/remoting/impl/**/*.class"/>
-            <include name="org/hornetq/utils/**/*.class"/>
-            <include name="org/hornetq/core/cluster/**/*.class"/>
-            <include name="org/hornetq/core/list/**/*.class"/>
-            <include name="org/hornetq/core/logging/**/*.class"/>
-            <include name="org/hornetq/core/message/**/*.class"/>
-            <include name="org/hornetq/core/protocol/core/**/*.class"/>
-            <include name="org/hornetq/core/remoting/**/*.class"/>
-            <include name="org/hornetq/core/version/**/*.class"/>
-            <include name="org/hornetq/core/management/*.class"/>
-            <include name="org/hornetq/core/transaction/impl/XidImpl.class"/>
-            <include name="org/hornetq/spi/core/logging/*.class"/>
-            <include name="org/hornetq/spi/core/protocol/*.class"/>
-            <include name="org/hornetq/spi/core/remoting/*.class"/>
-
-         	<!-- required by SessionSendMessage -->
-            <include name="org/hornetq/core/server/ServerMessage.class"/>
-         	<include name="org/hornetq/core/journal/EncodingSupport.class"/>
-         </fileset>
-      </jar>
-
+      <ant antfile="build-thirdparty.xml" target="maven-install">
+         <property name="maven.opts" value="-Dmaven.test.skip=true"/>
+         <property name="maven.goal" value="install"/>
+         <property name="working.dir" value="hornetq-core-client"/>
+      </ant>
    </target>
 
    <target name="jar-core-client-sources">
@@ -1217,16 +1200,16 @@
 
    <target name="jar-rest" depends="jar-rest-init">
       <ant antfile="build-thirdparty.xml" target="maven-install">
-        <property name="maven.opts" value="-Dmaven.test.skip=true"/>
-	<property name="maven.goal" value="install"/>
-	<property name="working.dir" value="hornetq-rest"/>
+         <property name="maven.opts" value="-Dmaven.test.skip=true"/>
+         <property name="maven.goal" value="install"/>
+         <property name="working.dir" value="hornetq-rest"/>
       </ant>
    </target>
 
    <target name="rest-tests" depends="jar-rest">
       <ant antfile="build-thirdparty.xml" target="maven-install">
-	<property name="maven.opts" value="-f hornetq-rest/pom.xml"/>
-	<property name="maven.goal" value="install"/>
+         <property name="maven.opts" value="-f hornetq-rest/pom.xml"/>
+         <property name="maven.goal" value="install"/>
       </ant>
    </target>
 
@@ -1288,6 +1271,8 @@
             <include name="jboss-jms-api.jar"/>
          </fileset>
       </copy>
+      <copy file="${target.core.jar.dir}/hornetq-core-2.2.3-SNAPSHOT.jar" tofile="${build.distro.lib.dir}/hornetq-core.jar"/>
+      <copy file="${target.core.client.jar.dir}/hornetq-core-client-2.2.3-SNAPSHOT.jar" tofile="${build.distro.lib.dir}/hornetq-core-client.jar"/>
       <copy file="${org.jboss.netty.lib}/${netty.jar.name}" tofile="${build.distro.lib.dir}/netty.jar"/>
       <copy file="${org.twitter4j.lib}/${twitter4j.jar.name}" tofile="${build.distro.lib.dir}/${twitter4j.jar.name}"/>
       <copy todir="${build.distro.config.dir}">

Added: trunk/hornetq-core/pom.xml
===================================================================
--- trunk/hornetq-core/pom.xml	                        (rev 0)
+++ trunk/hornetq-core/pom.xml	2011-04-05 12:59:20 UTC (rev 10452)
@@ -0,0 +1,82 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+    <modelVersion>4.0.0</modelVersion>
+
+    <groupId>org.hornetq</groupId>
+    <artifactId>hornetq-core</artifactId>
+    <packaging>jar</packaging>
+    <version>2.2.3-SNAPSHOT</version>
+    <name>HornetQ Core</name>
+
+
+
+    <properties>
+        <netty.version>3.2.3.Final</netty.version>
+        <netty.version.string>3.2.3.Final</netty.version.string>
+        <hornetq.version.versionName>Stripey</hornetq.version.versionName>
+        <hornetq.version.majorVersion>2</hornetq.version.majorVersion>
+        <hornetq.version.minorVersion>2</hornetq.version.minorVersion>
+        <hornetq.version.microVersion>3</hornetq.version.microVersion>
+        <hornetq.version.incrementingVersion>122</hornetq.version.incrementingVersion>
+        <hornetq.version.versionSuffix>SNAPSHOT</hornetq.version.versionSuffix>
+        <hornetq.version.versionTag>SNAPSHOT</hornetq.version.versionTag>
+        <HornetQ-Version>${hornetq.version.majorVersion}.${hornetq.version.minorVersion}.${hornetq.version.microVersion}.${hornetq.version.versionSuffix} (${hornetq.version.versionName}, ${hornetq.version.incrementingVersion})</HornetQ-Version>
+        <HornetQ-SVN-URL>https://svn.jboss.org/repos/hornetq/trunk</HornetQ-SVN-URL>
+    </properties>
+
+    <dependencies>
+        <dependency>
+            <groupId>org.jboss.netty</groupId>
+            <artifactId>netty</artifactId>
+            <version>3.2.3.Final</version>
+        </dependency>
+    </dependencies>
+
+    <build>
+        <resources>
+            <resource>
+                <directory>src/main/resources</directory>
+                <filtering>true</filtering>
+            </resource>
+        </resources>
+        <plugins>
+            <plugin>
+              <groupId>org.apache.maven.plugins</groupId>
+              <artifactId>maven-jar-plugin</artifactId>
+              <version>2.2</version>
+              <configuration>
+                <archive>
+                  <manifestEntries>
+                    <HornetQ-Version>${HornetQ-Version}</HornetQ-Version>
+                    <HornetQ-SVN-URL>${HornetQ-SVN-URL}</HornetQ-SVN-URL>
+                  </manifestEntries>
+                </archive>
+              </configuration>
+            </plugin>
+            <plugin>
+                <groupId>org.codehaus.mojo</groupId>
+                <artifactId>javacc-maven-plugin</artifactId>
+                <executions>
+                    <execution>
+                        <id>javacc</id>
+                        <goals>
+                            <goal>javacc</goal>
+                        </goals>
+                        <configuration>
+                            <isStatic>false</isStatic>
+                        </configuration>
+                    </execution>
+                </executions>
+            </plugin>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-compiler-plugin</artifactId>
+                <configuration>
+                    <source>1.5</source>
+                    <target>1.5</target>
+                </configuration>
+            </plugin>
+        </plugins>
+    </build>
+
+</project>

Modified: trunk/hornetq-core/src/main/java/org/hornetq/api/core/management/ObjectNameBuilder.java
===================================================================
--- trunk/src/main/org/hornetq/api/core/management/ObjectNameBuilder.java	2011-04-04 22:11:03 UTC (rev 10451)
+++ trunk/hornetq-core/src/main/java/org/hornetq/api/core/management/ObjectNameBuilder.java	2011-04-05 12:59:20 UTC (rev 10452)
@@ -1,14 +1,14 @@
 /*
  * Copyright 2009 Red Hat, Inc.
- * Red Hat licenses this file to you under the Apache License, version
- * 2.0 (the "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *    http://www.apache.org/licenses/LICENSE-2.0
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
- * implied.  See the License for the specific language governing
- * permissions and limitations under the License.
+ *  Red Hat licenses this file to you under the Apache License, version
+ *  2.0 (the "License"); you may not use this file except in compliance
+ *  with the License.  You may obtain a copy of the License at
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *  Unless required by applicable law or agreed to in writing, software
+ *  distributed under the License is distributed on an "AS IS" BASIS,
+ *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ *  implied.  See the License for the specific language governing
+ *  permissions and limitations under the License.
  */
 
 package org.hornetq.api.core.management;
@@ -16,10 +16,6 @@
 import javax.management.ObjectName;
 
 import org.hornetq.api.core.SimpleString;
-import org.hornetq.api.jms.management.ConnectionFactoryControl;
-import org.hornetq.api.jms.management.JMSQueueControl;
-import org.hornetq.api.jms.management.JMSServerControl;
-import org.hornetq.api.jms.management.TopicControl;
 import org.hornetq.core.config.impl.ConfigurationImpl;
 
 /**

Added: trunk/hornetq-core/src/main/javacc/FilterParser.jj
===================================================================
--- trunk/hornetq-core/src/main/javacc/FilterParser.jj	                        (rev 0)
+++ trunk/hornetq-core/src/main/javacc/FilterParser.jj	2011-04-05 12:59:20 UTC (rev 10452)
@@ -0,0 +1,637 @@
+/*
+ * Copyright 2009 Red Hat, Inc.
+ *  Red Hat licenses this file to you under the Apache License, version
+ *  2.0 (the "License"); you may not use this file except in compliance
+ *  with the License.  You may obtain a copy of the License at
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *  Unless required by applicable law or agreed to in writing, software
+ *  distributed under the License is distributed on an "AS IS" BASIS,
+ *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ *  implied.  See the License for the specific language governing
+ *  permissions and limitations under the License.
+ */ 
+
+options {
+   LOOKAHEAD=1;
+   UNICODE_INPUT=true;
+/*
+   DEBUG_PARSER=true;
+   DEBUG_LOOKAHEAD=true;
+   DEBUG_TOKEN_MANAGER=true;
+*/
+}
+
+PARSER_BEGIN(FilterParser)
+   
+package org.hornetq.core.filter.impl;
+
+import java.io.StringReader;
+
+import java.util.HashSet;
+import java.util.Map;
+import java.util.Set;
+
+import org.hornetq.api.core.SimpleString;
+import org.hornetq.core.filter.impl.SimpleStringReader;
+
+/**
+ * A JavaCC 2.0 grammar for HornetQ filters
+ *
+ * @author Scott.Stark at jboss.org
+ * @author adrian at jboss.org
+ * @version $Revision: 2681 $
+ */
+public class FilterParser
+{
+   private static final String LOFFER_L = "l";
+   private static final String UPPER_L = "L";
+   private static final String OX = "0X";
+   private static final String Ox = "0x";
+   private static final String ZERRO = "0";
+
+   private Map identifierMap;
+
+   public FilterParser()
+   {
+      // keep the parser from freaking out, init using one of
+      // the JavaCC generated constructor
+      this(new StringReader(""));
+   }
+
+   public Object parse(SimpleString selector, Map identifierMap)
+      throws ParseException
+   {
+      return parse(selector, identifierMap, false);
+   }
+   
+   public Object parse(SimpleString selector, Map identifierMap, boolean trace)
+      throws ParseException
+   {
+      SimpleStringReader sr = new SimpleStringReader(selector);
+      ReInit(sr);
+
+      // This will have no effect unless the debugging options are true      
+      if (trace)
+      {
+         this.enable_tracing();
+      }
+      else
+      {
+         this.disable_tracing();
+      }
+
+      this.identifierMap = identifierMap;
+      return this.expression();
+   }
+
+   /**
+    * Strip off the leading and trailing (quote) chars from the given string
+    * and return it. 
+    */
+   private SimpleString stripQuotes(String image)
+   {
+      StringBuffer result = new StringBuffer(image.length()-2);
+      int i = 1;
+      boolean escaped = false;
+      while (i < image.length() - 1)
+      {
+         if (escaped)
+         {
+            if (image.charAt(i) == '\'')
+               result.append('\'');
+            else
+               throw new RuntimeException("Invalid uses of quotes: " + image);
+            escaped = false;
+         }
+         else if (image.charAt(i) == '\'')
+            escaped = true;
+         else
+            result.append(image.charAt(i));
+         ++i;
+      }
+      return new SimpleString(result.toString());
+   }
+   
+   public static Object doParse(SimpleString selector, Map identifierMap)
+      throws ParseException
+   {
+      return doParse(selector, identifierMap, false);
+   }
+   
+   public static Object doParse(SimpleString selector, Map identifierMap, boolean trace)
+      throws ParseException
+   {
+      FilterParser parser = new FilterParser();
+      return parser.parse(selector, identifierMap, trace);
+   }
+}
+
+PARSER_END(FilterParser)
+
+/* IGNORE WHITESPACE */
+   
+SKIP :
+{
+    " "
+  | "\r"
+  | "\t"
+  | "\f"
+  | "\n"
+}
+
+
+/* RESERVED WORDS AND LITERALS */
+
+TOKEN [IGNORE_CASE]:
+{
+    < TRUE:      "TRUE" >
+  | < FALSE:     "FALSE" >
+  | < NULL:      "NULL" >
+  | < AND:       "AND" >
+  | < NOT:       "NOT" >
+  | < OR:        "OR" >
+  | < BETWEEN:   "BETWEEN" >
+  | < LIKE:      "LIKE" >
+  | < IN:        "IN" >
+  | < IS:        "IS" >
+  | < ESCAPE:    "ESCAPE" >
+  | < LPAREN:    "(" >
+  | < RPAREN:    ")" >
+  | < SEMICOLON: ";" >
+  | < COMMA:     "," >
+
+}
+
+/* OPERATORS */
+
+TOKEN :
+{
+    < MULT:  "*" >
+  | < DIV:   "/" >
+  | < MINUS: "-" >
+  | < PLUS:  "+" >
+  | < GT:    ">" >
+  | < GE:    ">=" >
+  | < LT:    "<" >
+  | < LE:    "<=" >
+  | < NE:    "<>" >
+  | < EQ:    "=" >
+
+}
+
+/* Literals */
+
+<DEFAULT> TOKEN : /* Numeric Literal */
+{
+   < INTEGER_LITERAL:
+        "-9223372036854775808"
+      | "-9223372036854775808l"
+      | "-9223372036854775808L"
+      | <DECIMAL_LITERAL> (["l","L"])?
+      | <HEX_LITERAL> (["l","L"])?
+      | <OCTAL_LITERAL> (["l","L"])?
+   >
+|
+   < #DECIMAL_LITERAL: ["1"-"9"] (["0"-"9"])* >
+|
+   < #HEX_LITERAL: "0" ["x","X"] (["0"-"9","a"-"f","A"-"F"])+ >
+|
+   < #OCTAL_LITERAL: "0" (["0"-"7"])* >
+|
+   < FLOATING_POINT_LITERAL:
+      (["+","-"])? (["0"-"9"])+ "." (["0"-"9"])* (<EXPONENT>)? (["f","F","d","D"])?
+      | "." (["0"-"9"])+ (<EXPONENT>)? (["f","F","d","D"])?
+      | (["0"-"9"])+ <EXPONENT> (["f","F","d","D"])?
+      | (["0"-"9"])+ (<EXPONENT>)? ["f","F","d","D"]
+   >
+|
+   < #EXPONENT: ["e","E"] (["+","-"])? (["0"-"9"])+ >
+}
+
+
+TOKEN :
+{
+   < SIMPLE_STRING:
+      "'"
+      (   (~["'","\n","\r"])
+        | ("''")
+      )*
+      "'"
+    >
+}
+
+/* Function names */
+
+TOKEN : 
+{
+    < IDENTIFIER: <LETTER> (<LETTER>|<DIGIT>)* >
+  |
+    < #LETTER: [ "_","$", "a"-"z", "A"-"Z" ] >
+  |
+    < #DIGIT: ["0" - "9"] >
+}
+
+/** Start of the grammar */
+
+Object expression() :
+{
+   Object exp1 = null;
+}
+{
+   exp1=selectorExpression()<EOF>
+   {
+      return exp1;
+   }
+}
+
+Object selectorExpression() :
+{
+   Object exp1 = null;
+   Object exp2 = null;
+}
+{
+   exp1=selectorTerm()
+   (
+       <OR> exp2=selectorTerm()
+       {
+          exp1 = new Operator(Operator.OR, exp1, exp2);
+       }
+   )*
+   {
+      return exp1;
+   }
+}
+
+Object selectorTerm() :
+{
+   Object exp1 = null;
+   Object exp2 = null;
+}
+{
+   exp1=selectorFactor()
+   (
+       <AND> exp2=selectorFactor()
+       {
+          exp1 = new Operator(Operator.AND, exp1, exp2);
+       }
+   )*
+   {
+      return exp1;
+   }
+}
+
+Object selectorFactor() :
+{
+   Object exp1 = null;
+}
+{
+   exp1=conditionalExpression()
+   {
+      return exp1;
+   }
+ | <NOT> exp1=conditionalExpression()
+   {
+      exp1 = new Operator(Operator.NOT, exp1);
+   }
+   {
+      return exp1;
+   }
+}
+
+Object conditionalExpression() :
+{
+   Object exp1 = null;
+}
+{
+   LOOKAHEAD(3)
+   <LPAREN> exp1=selectorExpression() <RPAREN>
+   {
+      return exp1;
+   }
+ |
+   exp1 = comparisonExpression()
+   {
+      return exp1;
+   }
+}
+
+Object comparisonExpression() :
+{
+   int op = -1;
+   Set set = null;
+   Object exp1 = null;
+   Object exp2 = null;
+   Object exp3 = null;
+   Object id = null;
+   Token not = null;
+}
+{
+   LOOKAHEAD(2147483647)
+   exp1=identifier() <IS> [ not=<NOT> ] <NULL>
+   {
+      int opCode = not == null ? Operator.IS_NULL : Operator.IS_NOT_NULL;
+      return new Operator(opCode, exp1);
+   }
+ |
+   LOOKAHEAD(2147483647)
+   id=identifier() [ not=<NOT> ] <IN> <LPAREN> { set = new HashSet(); } stringList(set) <RPAREN>
+   {
+      if (not == null)
+         return new Operator(Operator.IN, id, set);
+      else
+         return new Operator(Operator.NOT_IN, id, set);
+      return exp1;
+   }
+ |
+   LOOKAHEAD(2147483647)
+   id=identifier() [ not=<NOT> ] <LIKE> exp1=patternExpression(id)
+   {
+      if (not != null)
+         exp1 = new Operator(Operator.NOT, exp1);
+      return exp1;
+   }
+ |
+   LOOKAHEAD(2147483647)
+   exp1=stringExpression()
+   (
+      <EQ>{ op = Operator.EQUAL;}
+    | <NE>{ op = Operator.DIFFERENT;}
+   ) exp2=stringExpression()
+   {
+      return new Operator(op, exp1, exp2);
+   }
+ |
+   LOOKAHEAD(2147483647)
+   exp1=booleanExpression()
+   (
+      <EQ>{ op = Operator.EQUAL;}
+    | <NE>{ op = Operator.DIFFERENT;}
+   ) exp2=booleanExpression()
+   {
+      return new Operator(op, exp1, exp2);
+   }
+ |
+   LOOKAHEAD(2147483647)
+   exp1=arithExpression() 
+   (
+      <EQ>{ op = Operator.EQUAL;}
+    | <NE>{ op = Operator.DIFFERENT;}
+    | <GT>{ op = Operator.GT;}
+    | <GE>{ op = Operator.GE;}
+    | <LT>{ op = Operator.LT;}
+    | <LE>{ op = Operator.LE;}
+   ) exp2=arithExpression()
+   {
+      return new Operator(op, exp1, exp2);
+   }
+ |
+   LOOKAHEAD(2147483647)
+   exp1=arithExpression() [ not=<NOT> ] <BETWEEN> exp2=arithExpression() <AND> exp3=arithExpression()
+   {
+      exp1 = new Operator(Operator.BETWEEN, exp1, exp2, exp3);
+      if (not != null)
+         exp1 = new Operator(Operator.NOT, exp1);
+      return exp1;
+   }
+ | exp1=booleanExpression()
+   {
+      return exp1;
+   }
+}
+
+void stringList(Set set) :
+{
+}
+{
+   stringToken(set) ( <COMMA> stringToken(set))*
+}
+
+void stringToken(Set set) :
+{
+   Token t = null;
+}
+{
+   [ t=<SIMPLE_STRING> ]
+   {
+      if (t != null)
+        set.add(stripQuotes(t.image));
+   }
+}
+
+Object patternExpression(Object exp1) :
+{
+   Object exp2 = null;
+   Token esc = null;
+   Object escChar = null;
+}
+{
+   exp2=stringLiteral() [ esc=<ESCAPE> escChar=stringLiteral() ]
+   {
+      Operator op = null;
+      if (esc == null)
+         op = new Operator(Operator.LIKE, exp1, exp2);
+      else
+         op = new Operator(Operator.LIKE_ESCAPE, exp1, exp2, escChar);
+      return op;
+   }
+}
+
+Object arithExpression() :
+{
+   Object exp1 = null;
+   Object exp2 = null;
+}
+{
+   exp1=arithTerm()
+   (
+       <PLUS> exp2=arithTerm()
+       {
+          exp1 = new Operator(Operator.ADD, exp1, exp2);
+       }
+     | <MINUS> exp2=arithTerm()
+       {
+          exp1 = new Operator(Operator.SUB, exp1, exp2);
+       }
+   )*
+   {
+      return exp1;
+   }
+}
+
+Object arithTerm() :
+{
+   Object exp1 = null;
+   Object exp2 = null;
+}
+{
+   exp1=arithFactor()
+   (
+       <MULT> exp2=arithFactor()
+       {
+          exp1 = new Operator(Operator.MUL, exp1, exp2);
+       }
+     | <DIV> exp2=arithFactor()
+       {
+          exp1 = new Operator(Operator.DIV, exp1, exp2);
+       }
+   )*
+   {
+      return exp1;
+   }
+}
+
+Object arithFactor() :
+{
+   Object exp1 = null;
+   boolean negate = false;
+}
+{
+   [<PLUS>|<MINUS>{ negate = true; }] exp1=numericExpression()
+   {
+      if (negate)
+         exp1 = new Operator(Operator.NEG, exp1);
+      return exp1;
+   }
+}
+
+Object booleanExpression() :
+{
+   Object exp1 = null;
+}
+{
+   (
+      exp1=identifier()
+    | exp1=booleanLiteral()
+   )
+   {
+      return exp1;
+   }
+}
+
+Object booleanLiteral() :
+{
+   boolean isTrue = true;
+}
+{
+   (<TRUE>|<FALSE>{ isTrue = false; })
+   {
+      if (isTrue)
+         return Boolean.TRUE;
+      else
+         return Boolean.FALSE;
+   }
+}
+
+Object stringExpression() :
+{
+   Object exp1 = null;
+}
+{
+   (
+      exp1=identifier()
+    | exp1=stringLiteral()
+   )
+   {
+      return exp1;
+   }
+}
+
+Object stringLiteral() :
+{
+   Token string = null;
+}
+{
+   string=<SIMPLE_STRING>
+   {
+      return stripQuotes(string.image);
+   }
+}
+
+Object numericExpression() :
+{
+   Object exp1 = null;
+}
+{
+   (
+      exp1 = numericLiteral()
+    | (<LPAREN> exp1=arithExpression() <RPAREN>)
+    | exp1 = identifier()
+   )
+   {
+      return exp1;
+   }
+}
+Object numericLiteral() :
+{
+   Token literal = null;
+}
+{
+   literal=<FLOATING_POINT_LITERAL>
+   {
+      return new Double(literal.image);
+   }
+ |
+   literal=<INTEGER_LITERAL>
+   {
+      String number = literal.image;
+
+      // long suffix
+      if (number.endsWith(LOFFER_L) || number.endsWith(UPPER_L))
+      {
+         // chop off the suffix
+         return new Long(number.substring(0, number.length() - 1));
+      }
+
+      // hex
+      if (number.startsWith(OX) || number.startsWith(Ox))
+      {
+         // handle literals from 0x8000000000000000L to 0xffffffffffffffffL:
+         // remove sign bit, parse as positive, then calculate the negative
+         // value with the sign bit
+         if(number.length() == 18)
+         {
+            byte first = Byte.decode(number.substring(0, 3)).byteValue();
+            if (first >= 8)
+            {
+               number = Ox + (first - 8) + number.substring(3);
+               return new Long(Long.decode(number).longValue() - Long.MAX_VALUE - 1);
+            }
+         }
+      }
+      else if (number.startsWith(ZERRO))
+      {  
+         // octal
+         // handle literals
+         // from 01000000000000000000000L to 01777777777777777777777L
+         // remove sign bit, parse as positive, then calculate the
+         // negative value with the sign bit
+         if (number.length() == 23)
+         {
+            if (number.charAt(1) == '1')
+            {
+               number = ZERRO + number.substring(2);
+               return new Long(Long.decode(number).longValue() - Long.MAX_VALUE - 1);
+            }
+         }
+      }
+      return Long.decode(number);
+   }
+}
+
+Object identifier() :
+{
+   Token id = null;
+}
+{
+   id=<IDENTIFIER>
+   {
+      SimpleString simage = new SimpleString(id.image);
+      Identifier identifier = (Identifier) identifierMap.get(simage);
+      if (identifier == null)
+      {
+         identifier = new Identifier(simage);
+         identifierMap.put(simage, identifier);
+	   }
+      return identifier;
+   }
+}

Added: trunk/hornetq-core/src/main/resources/hornetq-version.properties
===================================================================
--- trunk/hornetq-core/src/main/resources/hornetq-version.properties	                        (rev 0)
+++ trunk/hornetq-core/src/main/resources/hornetq-version.properties	2011-04-05 12:59:20 UTC (rev 10452)
@@ -0,0 +1,9 @@
+hornetq.version.versionName=super-hornetq-fighter
+hornetq.version.majorVersion=2
+hornetq.version.minorVersion=2
+hornetq.version.microVersion=2
+hornetq.version.incrementingVersion=122
+hornetq.version.versionSuffix=Final
+hornetq.version.versionTag=Final
+hornetq.netty.version=3.2.3.Final
+hornetq.version.compatibleVersionList=121,122

Added: trunk/hornetq-core/src/main/resources/schema/hornetq-configuration.xsd
===================================================================
--- trunk/hornetq-core/src/main/resources/schema/hornetq-configuration.xsd	                        (rev 0)
+++ trunk/hornetq-core/src/main/resources/schema/hornetq-configuration.xsd	2011-04-05 12:59:20 UTC (rev 10452)
@@ -0,0 +1,544 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xsd:schema xmlns="urn:hornetq" xmlns:xsd="http://www.w3.org/2001/XMLSchema" attributeFormDefault="unqualified" elementFormDefault="qualified" targetNamespace="urn:hornetq" version="1.0">
+
+	<xsd:element name="configuration">
+		<xsd:complexType>
+			<xsd:all>
+				<xsd:element maxOccurs="1" minOccurs="0" name="name" type="xsd:string">
+				</xsd:element>
+				<xsd:element maxOccurs="1" minOccurs="0" ref="clustered"/>
+				<xsd:element maxOccurs="1" minOccurs="0" ref="file-deployment-enabled"/>	
+				<xsd:element maxOccurs="1" minOccurs="0" ref="persistence-enabled"/>	
+				<xsd:element maxOccurs="1" minOccurs="0" name="scheduled-thread-pool-max-size" type="xsd:int">
+					<xsd:annotation>
+						<xsd:documentation>
+							Maximum number of threads to use for the scheduled thread pool
+						</xsd:documentation>
+					</xsd:annotation>
+				</xsd:element>
+				<xsd:element maxOccurs="1" minOccurs="0" name="thread-pool-max-size" type="xsd:int">
+					<xsd:annotation>
+						<xsd:documentation>
+							Maximum number of threads to use for the thread pool
+						</xsd:documentation>
+					</xsd:annotation>
+				</xsd:element>
+				<xsd:element maxOccurs="1" minOccurs="0" name="security-enabled" type="xsd:boolean">
+				</xsd:element>
+				<xsd:element maxOccurs="1" minOccurs="0" name="security-invalidation-interval" type="xsd:long">
+				</xsd:element>
+				<xsd:element maxOccurs="1" minOccurs="0" name="wild-card-routing-enabled" type="xsd:boolean">
+				</xsd:element>
+				<xsd:element maxOccurs="1" minOccurs="0" name="management-address" type="xsd:string">
+				</xsd:element>
+				<xsd:element maxOccurs="1" minOccurs="0" name="management-notification-address" type="xsd:string">
+				</xsd:element>
+                <xsd:element maxOccurs="1" minOccurs="0" name="cluster-user" type="xsd:string">
+                </xsd:element>				
+                <xsd:element maxOccurs="1" minOccurs="0" name="cluster-password" type="xsd:string">
+                </xsd:element>				
+                <xsd:element maxOccurs="1" minOccurs="0" name="log-delegate-factory-class-name" type="xsd:string">
+                </xsd:element>
+				<xsd:element maxOccurs="1" minOccurs="0" name="jmx-management-enabled" type="xsd:boolean">
+				</xsd:element>
+				<xsd:element maxOccurs="1" minOccurs="0" name="jmx-domain" type="xsd:string">
+				</xsd:element>
+				<xsd:element maxOccurs="1" minOccurs="0" name="message-counter-enabled" type="xsd:boolean">
+				</xsd:element>
+            <xsd:element maxOccurs="1" minOccurs="0" name="message-counter-sample-period" type="xsd:long">
+            </xsd:element>
+            <xsd:element maxOccurs="1" minOccurs="0" name="message-counter-max-day-history" type="xsd:int">
+            </xsd:element>
+				<xsd:element maxOccurs="1" minOccurs="0" name="connection-ttl-override" type="xsd:long">
+				</xsd:element>
+				<xsd:element maxOccurs="1" minOccurs="0" name="async-connection-execution-enabled" type="xsd:boolean">
+				</xsd:element>				
+				<xsd:element maxOccurs="1" minOccurs="0" name="transaction-timeout" type="xsd:long">
+				</xsd:element>
+				<xsd:element maxOccurs="1" minOccurs="0" name="transaction-timeout-scan-period" type="xsd:long">
+				</xsd:element>
+				<xsd:element maxOccurs="1" minOccurs="0" name="message-expiry-scan-period" type="xsd:long">
+				</xsd:element>
+				<xsd:element maxOccurs="1" minOccurs="0" name="message-expiry-thread-priority" type="xsd:int">
+				</xsd:element>
+				<xsd:element maxOccurs="1" minOccurs="0" name="id-cache-size" type="xsd:int">
+				</xsd:element>
+				<xsd:element maxOccurs="1" minOccurs="0" name="persist-id-cache" type="xsd:boolean">
+				</xsd:element>
+				<xsd:element maxOccurs="1" minOccurs="0" ref="remoting-interceptors">
+				</xsd:element>
+				<xsd:element maxOccurs="1" minOccurs="0" name="backup" type="xsd:boolean">
+				</xsd:element>
+				<xsd:element maxOccurs="1" minOccurs="0" name="allow-failback" type="xsd:boolean">
+				</xsd:element>
+				<xsd:element maxOccurs="1" minOccurs="0" name="failback-delay" type="xsd:long">
+				</xsd:element>
+            <xsd:element maxOccurs="1" minOccurs="0" name="failover-on-shutdown" type="xsd:boolean">
+				</xsd:element>
+				<xsd:element maxOccurs="1" minOccurs="0" name="shared-store" type="xsd:boolean">
+				</xsd:element>			
+				<xsd:element maxOccurs="1" minOccurs="0" name="persist-delivery-count-before-delivery" type="xsd:boolean">
+				</xsd:element>
+				<xsd:element maxOccurs="1" minOccurs="0" name="live-connector-ref" type="live-connectorType">
+				</xsd:element>				
+				<xsd:element maxOccurs="1" minOccurs="0" name="connectors">
+                    <xsd:complexType>
+                        <xsd:sequence>
+                            <xsd:element maxOccurs="unbounded" minOccurs="0" name="connector" type="connectorType"/>
+                        </xsd:sequence>
+                    </xsd:complexType>
+                </xsd:element>
+                <xsd:element maxOccurs="1" minOccurs="0" name="acceptors">
+                    <xsd:complexType>
+                        <xsd:sequence>
+	               			<xsd:element maxOccurs="unbounded" minOccurs="1" name="acceptor" type="acceptorType">
+				            </xsd:element>
+                        </xsd:sequence>
+                    </xsd:complexType>
+                </xsd:element>
+                <xsd:element maxOccurs="1" minOccurs="0" name="broadcast-groups">
+                    <xsd:complexType>
+                        <xsd:sequence>
+            				<xsd:element maxOccurs="unbounded" minOccurs="0" ref="broadcast-group">
+				            </xsd:element>
+                        </xsd:sequence>
+                    </xsd:complexType>
+                </xsd:element>
+                <xsd:element maxOccurs="1" minOccurs="0" name="discovery-groups">
+                    <xsd:complexType>
+                        <xsd:sequence>
+            				<xsd:element maxOccurs="unbounded" minOccurs="0" ref="discovery-group">
+				            </xsd:element>
+                        </xsd:sequence>
+                    </xsd:complexType>
+                </xsd:element>
+                <xsd:element maxOccurs="1" minOccurs="0" name="diverts">
+                    <xsd:complexType>
+                        <xsd:sequence>
+            				<xsd:element maxOccurs="unbounded" minOccurs="0" name="divert" type="divertType">
+	               			</xsd:element>
+                        </xsd:sequence>
+                    </xsd:complexType>
+                </xsd:element>
+                <xsd:element maxOccurs="1" minOccurs="0" name="queues">
+                </xsd:element>
+                <xsd:element maxOccurs="1" minOccurs="0" name="bridges">
+                    <xsd:complexType>
+                        <xsd:sequence>
+            				<xsd:element maxOccurs="unbounded" minOccurs="0" name="bridge" type="bridgeType">
+    				        </xsd:element>
+                        </xsd:sequence>
+                    </xsd:complexType>
+                </xsd:element>
+                <xsd:element maxOccurs="1" minOccurs="0" name="cluster-connections">
+                    <xsd:complexType>
+                        <xsd:sequence>
+            				<xsd:element maxOccurs="unbounded" minOccurs="0" name="cluster-connection" type="clusterConnectionType">
+				        </xsd:element>
+                        </xsd:sequence>
+                    </xsd:complexType>
+                </xsd:element>
+            <xsd:element maxOccurs="1" minOccurs="0" name="grouping-handler" type="groupingHandlerType">
+            </xsd:element>
+				<xsd:element maxOccurs="1" minOccurs="0" name="paging-directory" type="xsd:string">
+				</xsd:element>
+				<xsd:element maxOccurs="1" minOccurs="0" name="bindings-directory" type="xsd:string">
+				</xsd:element>
+				<xsd:element maxOccurs="1" minOccurs="0" name="create-bindings-dir" type="xsd:boolean">
+				</xsd:element>
+				<xsd:element maxOccurs="1" minOccurs="0" name="journal-directory" type="xsd:string">
+				</xsd:element>
+				<xsd:element maxOccurs="1" minOccurs="0" name="create-journal-dir" type="xsd:boolean">
+				</xsd:element>
+				<xsd:element maxOccurs="1" minOccurs="0" name="journal-type" type="journalType">
+				</xsd:element>
+				<xsd:element maxOccurs="1" minOccurs="0" name="journal-buffer-timeout" type="xsd:long">
+				</xsd:element>
+				<xsd:element maxOccurs="1" minOccurs="0" name="journal-buffer-size" type="xsd:long">
+				</xsd:element>				
+				<xsd:element maxOccurs="1" minOccurs="0" name="journal-sync-transactional" type="xsd:boolean">
+				</xsd:element>
+				<xsd:element maxOccurs="1" minOccurs="0" name="journal-sync-non-transactional" type="xsd:boolean">
+				</xsd:element>
+				<xsd:element maxOccurs="1" minOccurs="0" name="log-journal-write-rate" type="xsd:boolean">
+				</xsd:element>
+				<xsd:element maxOccurs="1" minOccurs="0" name="journal-file-size" type="xsd:long">
+				</xsd:element>
+				<xsd:element maxOccurs="1" minOccurs="0" name="journal-min-files" type="xsd:int">
+				</xsd:element>
+				<xsd:element maxOccurs="1" minOccurs="0" name="journal-compact-percentage" type="xsd:int">
+				</xsd:element>
+				<xsd:element maxOccurs="1" minOccurs="0" name="journal-compact-min-files" type="xsd:int">
+				</xsd:element>
+				<xsd:element maxOccurs="1" minOccurs="0" name="journal-max-io" type="xsd:int">
+				</xsd:element>
+				<xsd:element maxOccurs="1" minOccurs="0" name="perf-blast-pages" type="xsd:int">
+				</xsd:element>
+				<xsd:element maxOccurs="1" minOccurs="0" name="run-sync-speed-test" type="xsd:boolean">
+				</xsd:element>
+				<xsd:element maxOccurs="1" minOccurs="0" name="server-dump-interval" type="xsd:long">
+				</xsd:element>
+				<xsd:element maxOccurs="1" minOccurs="0" name="memory-warning-threshold" type="xsd:int">
+				</xsd:element>
+				<xsd:element maxOccurs="1" minOccurs="0" name="memory-measure-interval" type="xsd:long">
+				</xsd:element>				
+				<xsd:element maxOccurs="1" minOccurs="0" name="large-messages-directory" type="xsd:string">
+				</xsd:element>
+             <xsd:element maxOccurs="1" minOccurs="0" name="security-settings">
+             </xsd:element>
+             <xsd:element maxOccurs="1" minOccurs="0" name="address-settings">
+             </xsd:element>
+             <xsd:element maxOccurs="1" minOccurs="0" name="connector-services">
+                    <xsd:complexType>
+                        <xsd:sequence>
+                            <xsd:element maxOccurs="unbounded" minOccurs="0" name="connector-service" type="connectorServiceType"/>
+                        </xsd:sequence>
+                    </xsd:complexType>
+              </xsd:element>
+			</xsd:all>
+		</xsd:complexType>
+	</xsd:element>
+
+	<xsd:element name="clustered" type="xsd:boolean"/>
+	
+	<xsd:element name="file-deployment-enabled" type="xsd:boolean"/>
+	
+	<xsd:element name="persistence-enabled" type="xsd:boolean"/>
+
+	<xsd:element name="local-bind-address" type="xsd:string"/>
+
+	<xsd:element name="local-bind-port" type="xsd:int"/>
+
+	<xsd:element name="group-address" type="xsd:string"/>
+
+	<xsd:element name="group-port" type="xsd:int"/>
+
+	<xsd:element name="broadcast-period" type="xsd:long"/>
+
+	<xsd:element name="broadcast-group">
+		<xsd:complexType>
+			<xsd:sequence>
+                <xsd:element maxOccurs="1" minOccurs="0" ref="local-bind-address">
+                </xsd:element>
+				<xsd:element maxOccurs="1" minOccurs="0" ref="local-bind-port">
+				</xsd:element>
+				<xsd:element maxOccurs="1" minOccurs="1" ref="group-address">
+				</xsd:element>
+				<xsd:element maxOccurs="1" minOccurs="1" ref="group-port">
+				</xsd:element>
+				<xsd:element maxOccurs="1" minOccurs="0" ref="broadcast-period">
+				</xsd:element>
+				<xsd:element maxOccurs="unbounded" minOccurs="0" name="connector-ref" type="xsd:string">
+				</xsd:element>
+			</xsd:sequence>
+			<xsd:attribute name="name" type="xsd:ID" use="required"/>
+		</xsd:complexType>
+	</xsd:element>
+
+	<xsd:element name="refresh-timeout" type="xsd:int"/>
+
+	<xsd:element name="initial-wait-timeout" type="xsd:int"/>
+
+	<xsd:element name="discovery-group">
+		<xsd:complexType>
+			<xsd:sequence>
+			    <xsd:element maxOccurs="1" minOccurs="0" ref="local-bind-address">
+                </xsd:element>
+				<xsd:element maxOccurs="1" minOccurs="1" ref="group-address">
+				</xsd:element>
+				<xsd:element maxOccurs="1" minOccurs="1" ref="group-port">
+				</xsd:element>
+				<xsd:element maxOccurs="1" minOccurs="0" ref="refresh-timeout">
+				</xsd:element>
+				<xsd:element maxOccurs="1" minOccurs="0" ref="initial-wait-timeout">
+				</xsd:element>
+			</xsd:sequence>
+			<xsd:attribute name="name" type="xsd:ID" use="required"/>
+		</xsd:complexType>
+	</xsd:element>
+
+	<xsd:element name="discovery-group-ref">
+		<xsd:complexType>
+			<xsd:attribute name="discovery-group-name" type="xsd:IDREF">
+			</xsd:attribute>
+		</xsd:complexType>
+	</xsd:element>
+
+	<xsd:element name="remoting-interceptors">
+		<xsd:complexType>
+			<xsd:sequence>
+				<xsd:element maxOccurs="unbounded" minOccurs="1" name="class-name" type="xsd:string">
+				</xsd:element>
+			</xsd:sequence>
+		</xsd:complexType>
+	</xsd:element>
+
+	<xsd:complexType name="paramType">
+		<xsd:attribute name="key" type="xsd:string" use="required"/>
+		<xsd:attribute name="value" type="xsd:string" use="required"/>
+	</xsd:complexType>
+
+	<xsd:complexType name="connectorType">
+		<xsd:sequence>
+			<xsd:element maxOccurs="1" minOccurs="1" name="factory-class" type="xsd:string">
+			</xsd:element>
+			<xsd:element maxOccurs="unbounded" minOccurs="0" name="param" type="paramType">
+			</xsd:element>
+		</xsd:sequence>
+		<xsd:attribute name="name" type="xsd:ID" use="required"/>
+	</xsd:complexType>
+
+	<xsd:complexType name="acceptorType">
+		<xsd:sequence>
+			<xsd:element maxOccurs="1" minOccurs="1" name="factory-class" type="xsd:string">
+			</xsd:element>
+			<xsd:element maxOccurs="unbounded" minOccurs="0" name="param" type="paramType">
+			</xsd:element>
+		</xsd:sequence>
+		<xsd:attribute name="name" type="xsd:string" use="optional"/>
+	</xsd:complexType>
+
+	<xsd:complexType name="bridgeType">	   
+		<xsd:sequence>
+			<xsd:element maxOccurs="1" minOccurs="1" name="queue-name" type="xsd:IDREF">
+			</xsd:element>
+			<xsd:element maxOccurs="1" minOccurs="0" name="forwarding-address" type="xsd:string">
+			</xsd:element>
+			<xsd:element maxOccurs="1" minOccurs="0" name="ha" type="xsd:boolean">
+			</xsd:element>
+            <xsd:element maxOccurs="1" minOccurs="0" name="filter">
+                <xsd:complexType>
+                   <xsd:attribute name="string" type="xsd:string" use="required"/>
+                </xsd:complexType>
+            </xsd:element>
+			<xsd:element maxOccurs="1" minOccurs="0" name="transformer-class-name" type="xsd:string">
+			</xsd:element>
+			<xsd:element maxOccurs="1" minOccurs="0" name="retry-interval" type="xsd:long">
+			</xsd:element>
+			<xsd:element maxOccurs="1" minOccurs="0" name="retry-interval-multiplier" type="xsd:double">
+			</xsd:element>
+			<xsd:element maxOccurs="1" minOccurs="0" name="reconnect-attempts" type="xsd:int">
+			</xsd:element>
+			<xsd:element maxOccurs="1" minOccurs="0" name="failover-on-server-shutdown" type="xsd:boolean">
+			</xsd:element>
+			<xsd:element maxOccurs="1" minOccurs="0" name="use-duplicate-detection" type="xsd:boolean">
+			</xsd:element>
+			<xsd:element maxOccurs="1" minOccurs="0" name="confirmation-window-size" type="xsd:int">
+			</xsd:element>
+			<xsd:element maxOccurs="1" minOccurs="0" name="user" type="xsd:string">
+			</xsd:element>
+			<xsd:element maxOccurs="1" minOccurs="0" name="password" type="xsd:string">
+			</xsd:element>
+			<xsd:choice>				
+				<xsd:element maxOccurs="1" minOccurs="1" name="static-connectors">
+                    <xsd:complexType>
+                        <xsd:sequence>
+                            <xsd:element maxOccurs="unbounded" minOccurs="1" name="connector-ref" type="xsd:string"/>
+                        </xsd:sequence>
+                    </xsd:complexType>
+                </xsd:element>				
+				<xsd:element maxOccurs="1" minOccurs="1" name="discovery-group-ref">
+					<xsd:complexType>
+						<xsd:attribute name="discovery-group-name" type="xsd:IDREF" use="required">
+						</xsd:attribute>
+					</xsd:complexType>
+				</xsd:element>
+			</xsd:choice>
+		</xsd:sequence>	
+		<xsd:attribute name="name" type="xsd:string" use="required"/>	
+	</xsd:complexType>
+	
+   <xsd:complexType name="clusterConnectionType">      
+		<xsd:sequence>
+			<xsd:element maxOccurs="1" minOccurs="1" name="address" type="xsd:string">
+			</xsd:element>
+			<xsd:element maxOccurs="1" minOccurs="1" name="connector-ref" type="xsd:string">
+			</xsd:element>
+			<xsd:element maxOccurs="1" minOccurs="0" name="retry-interval" type="xsd:long">
+			</xsd:element>			
+			<xsd:element maxOccurs="1" minOccurs="0" name="use-duplicate-detection" type="xsd:boolean">
+			</xsd:element>
+			<xsd:element maxOccurs="1" minOccurs="0" name="forward-when-no-consumers" type="xsd:boolean">
+			</xsd:element>
+			<xsd:element maxOccurs="1" minOccurs="0" name="max-hops" type="xsd:int">
+			</xsd:element>
+			<xsd:element maxOccurs="1" minOccurs="0" name="confirmation-window-size" type="xsd:int">
+			</xsd:element>
+			<xsd:choice>
+				<xsd:element maxOccurs="1" minOccurs="0" name="static-connectors">
+                    <xsd:complexType>
+                        <xsd:sequence>
+                            <xsd:element maxOccurs="unbounded" minOccurs="0" name="connector-ref" type="xsd:string"/>
+                        </xsd:sequence>
+                        <xsd:attribute name="allow-direct-connections-only" type="xsd:boolean" use="optional"/>
+                    </xsd:complexType>
+                </xsd:element>	
+				<xsd:element maxOccurs="1" minOccurs="0" name="discovery-group-ref">
+					<xsd:complexType>
+						<xsd:attribute name="discovery-group-name" type="xsd:IDREF" use="required">
+						</xsd:attribute>
+					</xsd:complexType>
+				</xsd:element>
+			</xsd:choice>
+		</xsd:sequence>
+		<xsd:attribute name="name" type="xsd:string" use="required"/>
+	</xsd:complexType>
+
+	<xsd:complexType name="divertType">	   
+		<xsd:sequence>
+			<xsd:element maxOccurs="1" minOccurs="0" name="routing-name" type="xsd:string">
+			</xsd:element>
+			<xsd:element maxOccurs="1" minOccurs="1" name="address" type="xsd:string">
+			</xsd:element>
+			<xsd:element maxOccurs="1" minOccurs="1" name="forwarding-address" type="xsd:string">
+			</xsd:element>
+            <xsd:element maxOccurs="1" minOccurs="0" name="filter">
+                <xsd:complexType>
+                   <xsd:attribute name="string" type="xsd:string" use="required"/>
+                </xsd:complexType>
+            </xsd:element>
+			<xsd:element maxOccurs="1" minOccurs="0" name="transformer-class-name" type="xsd:string">
+			</xsd:element>
+			<xsd:element maxOccurs="1" minOccurs="0" name="exclusive" type="xsd:boolean">
+			</xsd:element>
+		</xsd:sequence>	
+		<xsd:attribute name="name" type="xsd:string" use="required"/>	
+	</xsd:complexType>
+
+	<xsd:simpleType name="journalType">
+		<xsd:restriction base="xsd:string">
+			<xsd:enumeration value="ASYNCIO"/>
+			<xsd:enumeration value="NIO"/>
+		</xsd:restriction>
+	</xsd:simpleType>
+
+   <xsd:complexType name="groupingHandlerType">
+      <xsd:sequence>
+         <xsd:element maxOccurs="1" minOccurs="1" name="type" type="groupingHandlerTypeType"/>
+         <xsd:element maxOccurs="1" minOccurs="1" name="address" type="xsd:string"/>
+         <xsd:element maxOccurs="1" minOccurs="0" name="timeout" type="xsd:int"/>
+      </xsd:sequence>
+       <xsd:attribute name="name" type="xsd:string" use="required"/>
+   </xsd:complexType>
+
+   <xsd:simpleType name="groupingHandlerTypeType">
+      <xsd:restriction base="xsd:string">
+         <xsd:enumeration value="LOCAL"/>
+         <xsd:enumeration value="REMOTE"/>
+      </xsd:restriction>
+   </xsd:simpleType>
+
+  <xsd:element name="security-settings">
+      <xsd:complexType>
+         <xsd:sequence>
+            <xsd:element maxOccurs="unbounded" minOccurs="0" name="security-setting">
+            </xsd:element>
+          </xsd:sequence>
+       </xsd:complexType>
+    </xsd:element>
+
+   <xsd:element name="security-setting">
+    <xsd:complexType>
+        <xsd:sequence>
+           <xsd:element maxOccurs="unbounded" minOccurs="0" name="permission">
+              <xsd:complexType>
+                 <xsd:attribute name="type" type="xsd:string" use="required"/>
+                 <xsd:attribute name="roles" type="xsd:string" use="required"/>
+              </xsd:complexType>
+           </xsd:element>
+        </xsd:sequence>
+            <xsd:attribute name="match" type="xsd:string" use="required"/>
+        </xsd:complexType>
+   </xsd:element>
+
+  <xsd:element name="address-settings">
+      <xsd:complexType>
+         <xsd:sequence>
+            <xsd:element maxOccurs="unbounded" minOccurs="0" name="address-setting">
+            </xsd:element>
+          </xsd:sequence>
+       </xsd:complexType>
+    </xsd:element>
+    
+   <xsd:element name="address-setting">
+    <xsd:complexType>
+      <xsd:all>
+        <xsd:element maxOccurs="1" minOccurs="0" name="dead-letter-address" type="xsd:string">
+        </xsd:element>
+        <xsd:element maxOccurs="1" minOccurs="0" name="expiry-address" type="xsd:string">
+        </xsd:element>
+        <xsd:element maxOccurs="1" minOccurs="0" name="redelivery-delay" type="xsd:long">
+        </xsd:element>
+        <xsd:element maxOccurs="1" minOccurs="0" name="max-delivery-attempts" type="xsd:int">
+        </xsd:element>
+        <xsd:element maxOccurs="1" minOccurs="0" name="max-size-bytes" type="xsd:long">
+        </xsd:element>
+        <xsd:element maxOccurs="1" minOccurs="0" name="page-size-bytes" type="xsd:long">
+        </xsd:element>
+        <xsd:element maxOccurs="1" minOccurs="0" name="page-max-cache-size" type="xsd:int">
+        </xsd:element>
+        <xsd:element maxOccurs="1" minOccurs="0" name="address-full-policy" type="addressFullMessagePolicyType">
+		</xsd:element>                
+        <xsd:element maxOccurs="1" minOccurs="0" name="message-counter-history-day-limit" type="xsd:int">
+        </xsd:element>
+        <xsd:element maxOccurs="1" minOccurs="0" name="last-value-queue" type="xsd:boolean">
+        </xsd:element>
+        <xsd:element maxOccurs="1" minOccurs="0" name="redistribution-delay" type="xsd:long">
+        </xsd:element>
+        <xsd:element maxOccurs="1" minOccurs="0" name="send-to-dla-on-no-route" type="xsd:boolean">
+        </xsd:element>
+      </xsd:all>
+    <xsd:attribute name="match" type="xsd:string" use="required"/>
+   </xsd:complexType> 
+   </xsd:element>
+     
+   <xsd:element name="queues">
+      <xsd:complexType>
+         <xsd:sequence>
+            <xsd:element maxOccurs="unbounded" minOccurs="0" name="queue">
+            </xsd:element>
+         </xsd:sequence>
+      </xsd:complexType>
+   </xsd:element>
+   
+   <xsd:element name="queue">
+      <xsd:complexType>
+        <xsd:all>
+            <xsd:element maxOccurs="1" minOccurs="1" name="address" type="xsd:string">
+            </xsd:element>
+            <xsd:element maxOccurs="1" minOccurs="0" name="filter">
+                <xsd:complexType>
+                   <xsd:attribute name="string" type="xsd:string" use="required"/>
+                </xsd:complexType>
+            </xsd:element>
+            <xsd:element maxOccurs="1" minOccurs="0" name="durable" type="xsd:boolean">
+            </xsd:element>
+        </xsd:all>
+        <xsd:attribute name="name" type="xsd:ID" use="required"/>
+       </xsd:complexType>
+    </xsd:element>
+    
+	<xsd:complexType name="live-connectorType">
+		<xsd:attribute name="connector-name" type="xsd:IDREF" use="required">
+		</xsd:attribute>
+	</xsd:complexType>
+	
+	<xsd:simpleType name="addressFullMessagePolicyType">
+		<xsd:restriction base="xsd:string">
+			<xsd:enumeration value="DROP"/>
+			<xsd:enumeration value="PAGE"/>
+			<xsd:enumeration value="BLOCK"/>
+		</xsd:restriction>
+	</xsd:simpleType>
+	
+	<xsd:complexType name="connectorServiceType">
+		<xsd:sequence>
+			<xsd:element maxOccurs="1" minOccurs="1" name="factory-class" type="xsd:string">
+			</xsd:element>
+			<xsd:element maxOccurs="unbounded" minOccurs="0" name="param" type="paramType">
+			</xsd:element>
+		</xsd:sequence>
+		<xsd:attribute name="name" type="xsd:string" use="optional"/>
+	</xsd:complexType>
+
+</xsd:schema>

Added: trunk/hornetq-core/src/main/resources/schema/hornetq-users.xsd
===================================================================
--- trunk/hornetq-core/src/main/resources/schema/hornetq-users.xsd	                        (rev 0)
+++ trunk/hornetq-core/src/main/resources/schema/hornetq-users.xsd	2011-04-05 12:59:20 UTC (rev 10452)
@@ -0,0 +1,32 @@
+<?xml version='1.0' encoding='UTF-8'?>
+
+<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+   targetNamespace="urn:hornetq"
+   xmlns="urn:hornetq"
+   elementFormDefault="qualified"
+   attributeFormDefault="unqualified"
+   version="1.0">
+   
+   <xsd:element name="configuration">
+   	<xsd:complexType>
+   		<xsd:sequence>
+            <xsd:element name="defaultuser" type="userType" maxOccurs="1" minOccurs="0"></xsd:element>
+            <xsd:element name="user" type="userType" maxOccurs="unbounded" minOccurs="0"></xsd:element>
+   		</xsd:sequence>
+   	</xsd:complexType>
+   </xsd:element>
+
+   <xsd:element name="role">
+   	<xsd:complexType>
+   		<xsd:attribute name="name" type="xsd:string" use="required"></xsd:attribute>
+   	</xsd:complexType>
+   </xsd:element>
+
+   <xsd:complexType name="userType">
+   	<xsd:sequence>
+   		<xsd:element ref="role" maxOccurs="unbounded" minOccurs="1"></xsd:element>
+   	</xsd:sequence>
+   	<xsd:attribute name="name" type="xsd:ID" use="required"></xsd:attribute>
+   	<xsd:attribute name="password" type="xsd:string"></xsd:attribute>
+   </xsd:complexType>
+</xsd:schema>

Added: trunk/hornetq-core-client/pom.xml
===================================================================
--- trunk/hornetq-core-client/pom.xml	                        (rev 0)
+++ trunk/hornetq-core-client/pom.xml	2011-04-05 12:59:20 UTC (rev 10452)
@@ -0,0 +1,90 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+    <modelVersion>4.0.0</modelVersion>
+
+    <groupId>org.hornetq</groupId>
+    <artifactId>hornetq-core-client</artifactId>
+    <packaging>jar</packaging>
+    <version>2.2.3-SNAPSHOT</version>
+    <name>HornetQ Core Client</name>
+
+    <dependencies>
+        <dependency>
+            <groupId>org.hornetq</groupId>
+            <artifactId>hornetq-core</artifactId>
+            <version>2.2.3-SNAPSHOT</version>
+        </dependency>
+    </dependencies>
+
+    <build>
+        <resources>
+            <resource>
+                <directory>src/main/resources</directory>
+                <filtering>true</filtering>
+            </resource>
+        </resources>
+        <plugins>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-shade-plugin</artifactId>
+                <executions>
+                    <execution>
+                        <phase>package</phase>
+                        <goals>
+                            <goal>shade</goal>
+                        </goals>
+                        <configuration>
+                            <artifactSet>
+                                <excludes>
+                                    <exclude>org.jboss.netty:netty</exclude>
+                                </excludes>
+                            </artifactSet>
+                            <filters>
+                                <filter>
+                                    <artifact>org.hornetq:hornetq-core</artifact>
+                                    <includes>
+                                        <include>hornetq-version.properties</include>
+                                        <include>org/hornetq/api/**/*.class</include>
+                                        <include>org/hornetq/*.class</include>
+                                        <include>org/hornetq/core/buffers/**/*.class</include>
+                                        <include>org/hornetq/core/client/**/*.class</include>
+                                        <include>org/hornetq/core/filter/**/*.class</include>
+                                        <include>org/hornetq/core/exception/**/*.class</include>
+                                        <include>org/hornetq/core/remoting/impl/**/*.class</include>
+                                        <include>org/hornetq/utils/**/*.class</include>
+                                        <include>org/hornetq/core/cluster/**/*.class</include>
+                                        <include>org/hornetq/core/list/**/*.class</include>
+                                        <include>org/hornetq/core/logging/**/*.class</include>
+                                        <include>org/hornetq/core/message/**/*.class</include>
+                                        <include>org/hornetq/core/protocol/core/**/*.class</include>
+                                        <include>org/hornetq/core/remoting/**/*.class</include>
+                                        <include>org/hornetq/core/version/**/*.class</include>
+                                        <include>org/hornetq/core/management/*.class</include>
+                                        <include>org/hornetq/core/transaction/impl/XidImpl.class</include>
+                                        <include>org/hornetq/spi/core/logging/*.class</include>
+                                        <include>org/hornetq/spi/core/protocol/*.class</include>
+                                        <include>org/hornetq/spi/core/remoting/*.class</include>
+
+                                        <!-- required by SessionSendMessage -->
+                                        <include>org/hornetq/core/server/ServerMessage.class</include>
+                                        <include>org/hornetq/core/journal/EncodingSupport.class</include>
+                                    </includes>
+                                </filter>
+                            </filters>
+                        </configuration>
+                    </execution>
+
+                </executions>
+            </plugin>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-compiler-plugin</artifactId>
+                <configuration>
+                    <source>1.5</source>
+                    <target>1.5</target>
+                </configuration>
+            </plugin>
+        </plugins>
+    </build>
+
+</project>

Modified: trunk/hornetq-rest/pom.xml
===================================================================
--- trunk/hornetq-rest/pom.xml	2011-04-04 22:11:03 UTC (rev 10451)
+++ trunk/hornetq-rest/pom.xml	2011-04-05 12:59:20 UTC (rev 10452)
@@ -5,9 +5,10 @@
     <name>HornetQ REST Interface Parent POM</name>
     <groupId>org.hornetq.rest</groupId>
     <artifactId>hornetq-rest-all</artifactId>
-    <version>2.2.2.Final</version>
+    <version>2.2.3.-SNAPSHOT</version>
     <packaging>pom</packaging>
 
+
     <properties>
         <resteasy.version>2.1.0.GA</resteasy.version>
         <hornetq.version>2.2.2.Final</hornetq.version>

Modified: trunk/hornetq.iml
===================================================================
--- trunk/hornetq.iml	2011-04-04 22:11:03 UTC (rev 10451)
+++ trunk/hornetq.iml	2011-04-05 12:59:20 UTC (rev 10452)
@@ -5,6 +5,8 @@
       <sourceFolder url="file://$MODULE_DIR$/build/src" isTestSource="false" />
       <sourceFolder url="file://$MODULE_DIR$/native/src" isTestSource="false" />
       <sourceFolder url="file://$MODULE_DIR$/src/main" isTestSource="false" />
+      <sourceFolder url="file://$MODULE_DIR$/hornetq-core/src/java" isTestSource="false" />
+      <sourceFolder url="file://$MODULE_DIR$/hornetq-core/src/main/java" isTestSource="true" />
       <excludeFolder url="file://$MODULE_DIR$/build/api" />
       <excludeFolder url="file://$MODULE_DIR$/build/classes" />
       <excludeFolder url="file://$MODULE_DIR$/build/jars" />

Modified: trunk/hornetq.ipr
===================================================================
--- trunk/hornetq.ipr	2011-04-04 22:11:03 UTC (rev 10451)
+++ trunk/hornetq.ipr	2011-04-05 12:59:20 UTC (rev 10452)
@@ -246,14 +246,6 @@
       <maximumStackSize value="32" />
       <properties />
     </buildFile>
-    <buildFile url="file://$PROJECT_DIR$/examples/soak/normal/build.xml">
-      <additionalClassPath />
-      <antReference projectDefault="true" />
-      <customJdkName value="" />
-      <maximumHeapSize value="128" />
-      <maximumStackSize value="32" />
-      <properties />
-    </buildFile>
   </component>
   <component name="BuildJarProjectSettings">
     <option name="BUILD_JARS_ON_MAKE" value="false" />
@@ -273,6 +265,7 @@
           <option name="SMART_TABS" value="false" />
           <option name="LABEL_INDENT_SIZE" value="0" />
           <option name="LABEL_INDENT_ABSOLUTE" value="false" />
+          <option name="USE_RELATIVE_INDENTS" value="false" />
         </ADDITIONAL_INDENT_OPTIONS>
         <ADDITIONAL_INDENT_OPTIONS fileType="jsp">
           <option name="INDENT_SIZE" value="4" />
@@ -282,6 +275,7 @@
           <option name="SMART_TABS" value="false" />
           <option name="LABEL_INDENT_SIZE" value="0" />
           <option name="LABEL_INDENT_ABSOLUTE" value="false" />
+          <option name="USE_RELATIVE_INDENTS" value="false" />
         </ADDITIONAL_INDENT_OPTIONS>
         <ADDITIONAL_INDENT_OPTIONS fileType="xml">
           <option name="INDENT_SIZE" value="4" />
@@ -291,6 +285,7 @@
           <option name="SMART_TABS" value="false" />
           <option name="LABEL_INDENT_SIZE" value="0" />
           <option name="LABEL_INDENT_ABSOLUTE" value="false" />
+          <option name="USE_RELATIVE_INDENTS" value="false" />
         </ADDITIONAL_INDENT_OPTIONS>
       </value>
     </option>
@@ -365,22 +360,22 @@
       </facet-type>
       <facet-type id="javaeeApplication">
         <modules>
-          <module name="messaging" />
           <module name="hornetq-javaee-examples">
             <files>
               <file url="file://$PROJECT_DIR$/examples/javaee/servlet-transport/config/META-INF/application.xml" />
             </files>
           </module>
+          <module name="messaging" />
         </modules>
       </facet-type>
       <facet-type id="web">
         <modules>
-          <module name="messaging" />
           <module name="hornetq-javaee-examples">
             <files>
               <file url="file://$PROJECT_DIR$/examples/javaee/servlet-transport/config/WEB-INF/web.xml" />
             </files>
           </module>
+          <module name="messaging" />
         </modules>
       </facet-type>
     </autodetection-disabled>
@@ -631,6 +626,9 @@
       <module fileurl="file://$PROJECT_DIR$/tests/hornetq-tests.iml" filepath="$PROJECT_DIR$/tests/hornetq-tests.iml" />
     </modules>
   </component>
+  <component name="ProjectResources">
+    <default-html-doctype>http://www.w3.org/1999/xhtml</default-html-doctype>
+  </component>
   <component name="ProjectRootManager" version="2" languageLevel="JDK_1_5" assert-keyword="true" jdk-15="true" project-jdk-name="1.6" project-jdk-type="JavaSDK">
     <output url="file://$PROJECT_DIR$/classes" />
   </component>
@@ -701,6 +699,52 @@
     </option>
   </component>
   <component name="libraryTable">
+    <library name="ant 1.7.1">
+      <CLASSES>
+        <root url="jar://$USER_HOME$/devtools/apache-ant-1.7.1/lib/ant-contrib/lib/commons-logging-1.0.4.jar!/" />
+        <root url="jar://$USER_HOME$/devtools/apache-ant-1.7.1/lib/ant-commons-logging.jar!/" />
+        <root url="jar://$USER_HOME$/devtools/apache-ant-1.7.1/lib/ant-contrib/ant-contrib-1.0b3.jar!/" />
+        <root url="jar://$USER_HOME$/devtools/apache-ant-1.7.1/lib/ant-jai.jar!/" />
+        <root url="jar://$USER_HOME$/devtools/apache-ant-1.7.1/lib/ant-apache-log4j.jar!/" />
+        <root url="jar://$USER_HOME$/devtools/apache-ant-1.7.1/lib/ant-javamail.jar!/" />
+        <root url="jar://$USER_HOME$/devtools/apache-ant-1.7.1/lib/ant-trax.jar!/" />
+        <root url="jar://$USER_HOME$/devtools/apache-ant-1.7.1/lib/ant-antlr.jar!/" />
+        <root url="jar://$USER_HOME$/devtools/apache-ant-1.7.1/lib/ant-jmf.jar!/" />
+        <root url="jar://$USER_HOME$/devtools/apache-ant-1.7.1/lib/ant-apache-resolver.jar!/" />
+        <root url="jar://$USER_HOME$/devtools/apache-ant-1.7.1/lib/ant-jdepend.jar!/" />
+        <root url="jar://$USER_HOME$/devtools/apache-ant-1.7.1/lib/ant-nodeps.jar!/" />
+        <root url="jar://$USER_HOME$/devtools/apache-ant-1.7.1/lib/ant-contrib.jar!/" />
+        <root url="jar://$USER_HOME$/devtools/apache-ant-1.7.1/lib/ant-starteam.jar!/" />
+        <root url="jar://$USER_HOME$/devtools/apache-ant-1.7.1/lib/ant-apache-bsf.jar!/" />
+        <root url="jar://$USER_HOME$/devtools/apache-ant-1.7.1/lib/ant-stylebook.jar!/" />
+        <root url="jar://$USER_HOME$/devtools/apache-ant-1.7.1/lib/ant-apache-oro.jar!/" />
+        <root url="jar://$USER_HOME$/devtools/apache-ant-1.7.1/lib/ant-contrib/lib/commons-httpclient-3.0.1.jar!/" />
+        <root url="jar://$USER_HOME$/devtools/apache-ant-1.7.1/lib/ant-jsch.jar!/" />
+        <root url="jar://$USER_HOME$/devtools/apache-ant-1.7.1/lib/ant-commons-net.jar!/" />
+        <root url="jar://$USER_HOME$/devtools/apache-ant-1.7.1/lib/xml-apis.jar!/" />
+        <root url="jar://$USER_HOME$/devtools/apache-ant-1.7.1/lib/ant-junit.jar!/" />
+        <root url="jar://$USER_HOME$/devtools/apache-ant-1.7.1/lib/ant-contrib/lib/ivy-1.3.1.jar!/" />
+        <root url="jar://$USER_HOME$/devtools/apache-ant-1.7.1/lib/ant-swing.jar!/" />
+        <root url="jar://$USER_HOME$/devtools/apache-ant-1.7.1/lib/ant-launcher.jar!/" />
+        <root url="jar://$USER_HOME$/devtools/apache-ant-1.7.1/lib/ant.jar!/" />
+        <root url="jar://$USER_HOME$/devtools/apache-ant-1.7.1/lib/ant-testutil.jar!/" />
+        <root url="jar://$USER_HOME$/devtools/apache-ant-1.7.1/lib/ant-contrib/lib/bcel-5.1.jar!/" />
+        <root url="jar://$USER_HOME$/devtools/apache-ant-1.7.1/lib/ant-apache-regexp.jar!/" />
+        <root url="jar://$USER_HOME$/devtools/apache-ant-1.7.1/lib/ant-weblogic.jar!/" />
+        <root url="jar://$USER_HOME$/devtools/apache-ant-1.7.1/lib/xercesImpl.jar!/" />
+        <root url="jar://$USER_HOME$/devtools/apache-ant-1.7.1/lib/ant-apache-bcel.jar!/" />
+        <root url="jar://$USER_HOME$/devtools/apache-ant-1.7.1/lib/ant-netrexx.jar!/" />
+      </CLASSES>
+      <JAVADOC />
+      <SOURCES />
+    </library>
+    <library name="etc">
+      <CLASSES>
+        <root url="file://$PROJECT_DIR$/../etc" />
+      </CLASSES>
+      <JAVADOC />
+      <SOURCES />
+    </library>
     <library name="messaging">
       <CLASSES>
         <root url="file://$PROJECT_DIR$/src/config/common" />
@@ -712,6 +756,42 @@
       <jarDirectory url="file://$PROJECT_DIR$/tests/etc" recursive="false" />
       <jarDirectory url="file://$PROJECT_DIR$/tests/jms-tests/etc" recursive="false" />
     </library>
+    <library name="messaging-javaee-examples">
+      <CLASSES>
+        <root url="file://$PROJECT_DIR$/src/config/common" />
+      </CLASSES>
+      <JAVADOC />
+      <SOURCES />
+    </library>
+    <library name="messaging-jms-examples">
+      <CLASSES>
+        <root url="file://$PROJECT_DIR$/examples/jms/common/config" />
+        <root url="file://$PROJECT_DIR$/src/config/common" />
+      </CLASSES>
+      <JAVADOC />
+      <SOURCES />
+    </library>
+    <library name="messaging-jms-tests">
+      <CLASSES>
+        <root url="file://$PROJECT_DIR$/tests/jms-tests/config" />
+      </CLASSES>
+      <JAVADOC />
+      <SOURCES />
+    </library>
+    <library name="messaging-joram-tests">
+      <CLASSES>
+        <root url="file://$PROJECT_DIR$/tests/joram-tests/config" />
+      </CLASSES>
+      <JAVADOC />
+      <SOURCES />
+    </library>
+    <library name="messaging-tests">
+      <CLASSES>
+        <root url="file://$PROJECT_DIR$/tests/config" />
+      </CLASSES>
+      <JAVADOC />
+      <SOURCES />
+    </library>
     <library name="messaging_jars">
       <CLASSES>
         <root url="jar://$PROJECT_DIR$/thirdparty/org/jboss/lib/jboss-mdr.jar!/" />
@@ -746,88 +826,6 @@
       <JAVADOC />
       <SOURCES />
     </library>
-    <library name="messaging-tests">
-      <CLASSES>
-        <root url="file://$PROJECT_DIR$/tests/config" />
-      </CLASSES>
-      <JAVADOC />
-      <SOURCES />
-    </library>
-    <library name="messaging-joram-tests">
-      <CLASSES>
-        <root url="file://$PROJECT_DIR$/tests/joram-tests/config" />
-      </CLASSES>
-      <JAVADOC />
-      <SOURCES />
-    </library>
-    <library name="messaging-jms-tests">
-      <CLASSES>
-        <root url="file://$PROJECT_DIR$/tests/jms-tests/config" />
-      </CLASSES>
-      <JAVADOC />
-      <SOURCES />
-    </library>
-    <library name="messaging-jms-examples">
-      <CLASSES>
-        <root url="file://$PROJECT_DIR$/examples/jms/common/config" />
-        <root url="file://$PROJECT_DIR$/src/config/common" />
-      </CLASSES>
-      <JAVADOC />
-      <SOURCES />
-    </library>
-    <library name="messaging-javaee-examples">
-      <CLASSES>
-        <root url="file://$PROJECT_DIR$/src/config/common" />
-      </CLASSES>
-      <JAVADOC />
-      <SOURCES />
-    </library>
-    <library name="ant 1.7.1">
-      <CLASSES>
-        <root url="jar://$PROJECT_DIR$/../../devtools/apache-ant-1.7.1/lib/ant-contrib/lib/commons-logging-1.0.4.jar!/" />
-        <root url="jar://$PROJECT_DIR$/../../devtools/apache-ant-1.7.1/lib/ant-commons-logging.jar!/" />
-        <root url="jar://$PROJECT_DIR$/../../devtools/apache-ant-1.7.1/lib/ant-contrib/ant-contrib-1.0b3.jar!/" />
-        <root url="jar://$PROJECT_DIR$/../../devtools/apache-ant-1.7.1/lib/ant-jai.jar!/" />
-        <root url="jar://$PROJECT_DIR$/../../devtools/apache-ant-1.7.1/lib/ant-apache-log4j.jar!/" />
-        <root url="jar://$PROJECT_DIR$/../../devtools/apache-ant-1.7.1/lib/ant-javamail.jar!/" />
-        <root url="jar://$PROJECT_DIR$/../../devtools/apache-ant-1.7.1/lib/ant-trax.jar!/" />
-        <root url="jar://$PROJECT_DIR$/../../devtools/apache-ant-1.7.1/lib/ant-antlr.jar!/" />
-        <root url="jar://$PROJECT_DIR$/../../devtools/apache-ant-1.7.1/lib/ant-jmf.jar!/" />
-        <root url="jar://$PROJECT_DIR$/../../devtools/apache-ant-1.7.1/lib/ant-apache-resolver.jar!/" />
-        <root url="jar://$PROJECT_DIR$/../../devtools/apache-ant-1.7.1/lib/ant-jdepend.jar!/" />
-        <root url="jar://$PROJECT_DIR$/../../devtools/apache-ant-1.7.1/lib/ant-nodeps.jar!/" />
-        <root url="jar://$PROJECT_DIR$/../../devtools/apache-ant-1.7.1/lib/ant-contrib.jar!/" />
-        <root url="jar://$PROJECT_DIR$/../../devtools/apache-ant-1.7.1/lib/ant-starteam.jar!/" />
-        <root url="jar://$PROJECT_DIR$/../../devtools/apache-ant-1.7.1/lib/ant-apache-bsf.jar!/" />
-        <root url="jar://$PROJECT_DIR$/../../devtools/apache-ant-1.7.1/lib/ant-stylebook.jar!/" />
-        <root url="jar://$PROJECT_DIR$/../../devtools/apache-ant-1.7.1/lib/ant-apache-oro.jar!/" />
-        <root url="jar://$PROJECT_DIR$/../../devtools/apache-ant-1.7.1/lib/ant-contrib/lib/commons-httpclient-3.0.1.jar!/" />
-        <root url="jar://$PROJECT_DIR$/../../devtools/apache-ant-1.7.1/lib/ant-jsch.jar!/" />
-        <root url="jar://$PROJECT_DIR$/../../devtools/apache-ant-1.7.1/lib/ant-commons-net.jar!/" />
-        <root url="jar://$PROJECT_DIR$/../../devtools/apache-ant-1.7.1/lib/xml-apis.jar!/" />
-        <root url="jar://$PROJECT_DIR$/../../devtools/apache-ant-1.7.1/lib/ant-junit.jar!/" />
-        <root url="jar://$PROJECT_DIR$/../../devtools/apache-ant-1.7.1/lib/ant-contrib/lib/ivy-1.3.1.jar!/" />
-        <root url="jar://$PROJECT_DIR$/../../devtools/apache-ant-1.7.1/lib/ant-swing.jar!/" />
-        <root url="jar://$PROJECT_DIR$/../../devtools/apache-ant-1.7.1/lib/ant-launcher.jar!/" />
-        <root url="jar://$PROJECT_DIR$/../../devtools/apache-ant-1.7.1/lib/ant.jar!/" />
-        <root url="jar://$PROJECT_DIR$/../../devtools/apache-ant-1.7.1/lib/ant-testutil.jar!/" />
-        <root url="jar://$PROJECT_DIR$/../../devtools/apache-ant-1.7.1/lib/ant-contrib/lib/bcel-5.1.jar!/" />
-        <root url="jar://$PROJECT_DIR$/../../devtools/apache-ant-1.7.1/lib/ant-apache-regexp.jar!/" />
-        <root url="jar://$PROJECT_DIR$/../../devtools/apache-ant-1.7.1/lib/ant-weblogic.jar!/" />
-        <root url="jar://$PROJECT_DIR$/../../devtools/apache-ant-1.7.1/lib/xercesImpl.jar!/" />
-        <root url="jar://$PROJECT_DIR$/../../devtools/apache-ant-1.7.1/lib/ant-apache-bcel.jar!/" />
-        <root url="jar://$PROJECT_DIR$/../../devtools/apache-ant-1.7.1/lib/ant-netrexx.jar!/" />
-      </CLASSES>
-      <JAVADOC />
-      <SOURCES />
-    </library>
-    <library name="etc">
-      <CLASSES>
-        <root url="file://$PROJECT_DIR$/../etc" />
-      </CLASSES>
-      <JAVADOC />
-      <SOURCES />
-    </library>
   </component>
 </project>
 

Modified: trunk/pom.xml
===================================================================
--- trunk/pom.xml	2011-04-04 22:11:03 UTC (rev 10451)
+++ trunk/pom.xml	2011-04-05 12:59:20 UTC (rev 10452)
@@ -19,7 +19,7 @@
    <groupId>org.hornetq</groupId>
    <artifactId>messaging</artifactId>
    <packaging>pom</packaging>
-   <version>2.2.1.GA</version>
+   <version>2.2.3-SNAPSHOT</version>
 
     <properties>
         <resteasy.version>2.1.0.GA</resteasy.version>
@@ -40,6 +40,10 @@
       <connection>scm:svn:http://anonsvn.jboss.org/repos/messaging/trunk</connection>
       <developerConnection>scm:svn:https://svn.jboss.org/repos/messaging/trunk</developerConnection>
    </scm>
+
+    <modules>
+        <module>hornetq-core</module>
+    </modules>
    <build>
 
       <plugins>

Deleted: trunk/src/config/common/hornetq-version.properties
===================================================================
--- trunk/src/config/common/hornetq-version.properties	2011-04-04 22:11:03 UTC (rev 10451)
+++ trunk/src/config/common/hornetq-version.properties	2011-04-05 12:59:20 UTC (rev 10452)
@@ -1,9 +0,0 @@
-hornetq.version.versionName=super-hornetq-fighter
-hornetq.version.majorVersion=2
-hornetq.version.minorVersion=2
-hornetq.version.microVersion=2
-hornetq.version.incrementingVersion=122
-hornetq.version.versionSuffix=Final
-hornetq.version.versionTag=Final
-hornetq.netty.version=@NETTY.VERSION@
-hornetq.version.compatibleVersionList=121,122

Deleted: trunk/src/config/common/schema/hornetq-configuration.xsd
===================================================================
--- trunk/src/config/common/schema/hornetq-configuration.xsd	2011-04-04 22:11:03 UTC (rev 10451)
+++ trunk/src/config/common/schema/hornetq-configuration.xsd	2011-04-05 12:59:20 UTC (rev 10452)
@@ -1,544 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<xsd:schema xmlns="urn:hornetq" xmlns:xsd="http://www.w3.org/2001/XMLSchema" attributeFormDefault="unqualified" elementFormDefault="qualified" targetNamespace="urn:hornetq" version="1.0">
-
-	<xsd:element name="configuration">
-		<xsd:complexType>
-			<xsd:all>
-				<xsd:element maxOccurs="1" minOccurs="0" name="name" type="xsd:string">
-				</xsd:element>
-				<xsd:element maxOccurs="1" minOccurs="0" ref="clustered"/>
-				<xsd:element maxOccurs="1" minOccurs="0" ref="file-deployment-enabled"/>	
-				<xsd:element maxOccurs="1" minOccurs="0" ref="persistence-enabled"/>	
-				<xsd:element maxOccurs="1" minOccurs="0" name="scheduled-thread-pool-max-size" type="xsd:int">
-					<xsd:annotation>
-						<xsd:documentation>
-							Maximum number of threads to use for the scheduled thread pool
-						</xsd:documentation>
-					</xsd:annotation>
-				</xsd:element>
-				<xsd:element maxOccurs="1" minOccurs="0" name="thread-pool-max-size" type="xsd:int">
-					<xsd:annotation>
-						<xsd:documentation>
-							Maximum number of threads to use for the thread pool
-						</xsd:documentation>
-					</xsd:annotation>
-				</xsd:element>
-				<xsd:element maxOccurs="1" minOccurs="0" name="security-enabled" type="xsd:boolean">
-				</xsd:element>
-				<xsd:element maxOccurs="1" minOccurs="0" name="security-invalidation-interval" type="xsd:long">
-				</xsd:element>
-				<xsd:element maxOccurs="1" minOccurs="0" name="wild-card-routing-enabled" type="xsd:boolean">
-				</xsd:element>
-				<xsd:element maxOccurs="1" minOccurs="0" name="management-address" type="xsd:string">
-				</xsd:element>
-				<xsd:element maxOccurs="1" minOccurs="0" name="management-notification-address" type="xsd:string">
-				</xsd:element>
-                <xsd:element maxOccurs="1" minOccurs="0" name="cluster-user" type="xsd:string">
-                </xsd:element>				
-                <xsd:element maxOccurs="1" minOccurs="0" name="cluster-password" type="xsd:string">
-                </xsd:element>				
-                <xsd:element maxOccurs="1" minOccurs="0" name="log-delegate-factory-class-name" type="xsd:string">
-                </xsd:element>
-				<xsd:element maxOccurs="1" minOccurs="0" name="jmx-management-enabled" type="xsd:boolean">
-				</xsd:element>
-				<xsd:element maxOccurs="1" minOccurs="0" name="jmx-domain" type="xsd:string">
-				</xsd:element>
-				<xsd:element maxOccurs="1" minOccurs="0" name="message-counter-enabled" type="xsd:boolean">
-				</xsd:element>
-            <xsd:element maxOccurs="1" minOccurs="0" name="message-counter-sample-period" type="xsd:long">
-            </xsd:element>
-            <xsd:element maxOccurs="1" minOccurs="0" name="message-counter-max-day-history" type="xsd:int">
-            </xsd:element>
-				<xsd:element maxOccurs="1" minOccurs="0" name="connection-ttl-override" type="xsd:long">
-				</xsd:element>
-				<xsd:element maxOccurs="1" minOccurs="0" name="async-connection-execution-enabled" type="xsd:boolean">
-				</xsd:element>				
-				<xsd:element maxOccurs="1" minOccurs="0" name="transaction-timeout" type="xsd:long">
-				</xsd:element>
-				<xsd:element maxOccurs="1" minOccurs="0" name="transaction-timeout-scan-period" type="xsd:long">
-				</xsd:element>
-				<xsd:element maxOccurs="1" minOccurs="0" name="message-expiry-scan-period" type="xsd:long">
-				</xsd:element>
-				<xsd:element maxOccurs="1" minOccurs="0" name="message-expiry-thread-priority" type="xsd:int">
-				</xsd:element>
-				<xsd:element maxOccurs="1" minOccurs="0" name="id-cache-size" type="xsd:int">
-				</xsd:element>
-				<xsd:element maxOccurs="1" minOccurs="0" name="persist-id-cache" type="xsd:boolean">
-				</xsd:element>
-				<xsd:element maxOccurs="1" minOccurs="0" ref="remoting-interceptors">
-				</xsd:element>
-				<xsd:element maxOccurs="1" minOccurs="0" name="backup" type="xsd:boolean">
-				</xsd:element>
-				<xsd:element maxOccurs="1" minOccurs="0" name="allow-failback" type="xsd:boolean">
-				</xsd:element>
-				<xsd:element maxOccurs="1" minOccurs="0" name="failback-delay" type="xsd:long">
-				</xsd:element>
-            <xsd:element maxOccurs="1" minOccurs="0" name="failover-on-shutdown" type="xsd:boolean">
-				</xsd:element>
-				<xsd:element maxOccurs="1" minOccurs="0" name="shared-store" type="xsd:boolean">
-				</xsd:element>			
-				<xsd:element maxOccurs="1" minOccurs="0" name="persist-delivery-count-before-delivery" type="xsd:boolean">
-				</xsd:element>
-				<xsd:element maxOccurs="1" minOccurs="0" name="live-connector-ref" type="live-connectorType">
-				</xsd:element>				
-				<xsd:element maxOccurs="1" minOccurs="0" name="connectors">
-                    <xsd:complexType>
-                        <xsd:sequence>
-                            <xsd:element maxOccurs="unbounded" minOccurs="0" name="connector" type="connectorType"/>
-                        </xsd:sequence>
-                    </xsd:complexType>
-                </xsd:element>
-                <xsd:element maxOccurs="1" minOccurs="0" name="acceptors">
-                    <xsd:complexType>
-                        <xsd:sequence>
-	               			<xsd:element maxOccurs="unbounded" minOccurs="1" name="acceptor" type="acceptorType">
-				            </xsd:element>
-                        </xsd:sequence>
-                    </xsd:complexType>
-                </xsd:element>
-                <xsd:element maxOccurs="1" minOccurs="0" name="broadcast-groups">
-                    <xsd:complexType>
-                        <xsd:sequence>
-            				<xsd:element maxOccurs="unbounded" minOccurs="0" ref="broadcast-group">
-				            </xsd:element>
-                        </xsd:sequence>
-                    </xsd:complexType>
-                </xsd:element>
-                <xsd:element maxOccurs="1" minOccurs="0" name="discovery-groups">
-                    <xsd:complexType>
-                        <xsd:sequence>
-            				<xsd:element maxOccurs="unbounded" minOccurs="0" ref="discovery-group">
-				            </xsd:element>
-                        </xsd:sequence>
-                    </xsd:complexType>
-                </xsd:element>
-                <xsd:element maxOccurs="1" minOccurs="0" name="diverts">
-                    <xsd:complexType>
-                        <xsd:sequence>
-            				<xsd:element maxOccurs="unbounded" minOccurs="0" name="divert" type="divertType">
-	               			</xsd:element>
-                        </xsd:sequence>
-                    </xsd:complexType>
-                </xsd:element>
-                <xsd:element maxOccurs="1" minOccurs="0" name="queues">
-                </xsd:element>
-                <xsd:element maxOccurs="1" minOccurs="0" name="bridges">
-                    <xsd:complexType>
-                        <xsd:sequence>
-            				<xsd:element maxOccurs="unbounded" minOccurs="0" name="bridge" type="bridgeType">
-    				        </xsd:element>
-                        </xsd:sequence>
-                    </xsd:complexType>
-                </xsd:element>
-                <xsd:element maxOccurs="1" minOccurs="0" name="cluster-connections">
-                    <xsd:complexType>
-                        <xsd:sequence>
-            				<xsd:element maxOccurs="unbounded" minOccurs="0" name="cluster-connection" type="clusterConnectionType">
-				        </xsd:element>
-                        </xsd:sequence>
-                    </xsd:complexType>
-                </xsd:element>
-            <xsd:element maxOccurs="1" minOccurs="0" name="grouping-handler" type="groupingHandlerType">
-            </xsd:element>
-				<xsd:element maxOccurs="1" minOccurs="0" name="paging-directory" type="xsd:string">
-				</xsd:element>
-				<xsd:element maxOccurs="1" minOccurs="0" name="bindings-directory" type="xsd:string">
-				</xsd:element>
-				<xsd:element maxOccurs="1" minOccurs="0" name="create-bindings-dir" type="xsd:boolean">
-				</xsd:element>
-				<xsd:element maxOccurs="1" minOccurs="0" name="journal-directory" type="xsd:string">
-				</xsd:element>
-				<xsd:element maxOccurs="1" minOccurs="0" name="create-journal-dir" type="xsd:boolean">
-				</xsd:element>
-				<xsd:element maxOccurs="1" minOccurs="0" name="journal-type" type="journalType">
-				</xsd:element>
-				<xsd:element maxOccurs="1" minOccurs="0" name="journal-buffer-timeout" type="xsd:long">
-				</xsd:element>
-				<xsd:element maxOccurs="1" minOccurs="0" name="journal-buffer-size" type="xsd:long">
-				</xsd:element>				
-				<xsd:element maxOccurs="1" minOccurs="0" name="journal-sync-transactional" type="xsd:boolean">
-				</xsd:element>
-				<xsd:element maxOccurs="1" minOccurs="0" name="journal-sync-non-transactional" type="xsd:boolean">
-				</xsd:element>
-				<xsd:element maxOccurs="1" minOccurs="0" name="log-journal-write-rate" type="xsd:boolean">
-				</xsd:element>
-				<xsd:element maxOccurs="1" minOccurs="0" name="journal-file-size" type="xsd:long">
-				</xsd:element>
-				<xsd:element maxOccurs="1" minOccurs="0" name="journal-min-files" type="xsd:int">
-				</xsd:element>
-				<xsd:element maxOccurs="1" minOccurs="0" name="journal-compact-percentage" type="xsd:int">
-				</xsd:element>
-				<xsd:element maxOccurs="1" minOccurs="0" name="journal-compact-min-files" type="xsd:int">
-				</xsd:element>
-				<xsd:element maxOccurs="1" minOccurs="0" name="journal-max-io" type="xsd:int">
-				</xsd:element>
-				<xsd:element maxOccurs="1" minOccurs="0" name="perf-blast-pages" type="xsd:int">
-				</xsd:element>
-				<xsd:element maxOccurs="1" minOccurs="0" name="run-sync-speed-test" type="xsd:boolean">
-				</xsd:element>
-				<xsd:element maxOccurs="1" minOccurs="0" name="server-dump-interval" type="xsd:long">
-				</xsd:element>
-				<xsd:element maxOccurs="1" minOccurs="0" name="memory-warning-threshold" type="xsd:int">
-				</xsd:element>
-				<xsd:element maxOccurs="1" minOccurs="0" name="memory-measure-interval" type="xsd:long">
-				</xsd:element>				
-				<xsd:element maxOccurs="1" minOccurs="0" name="large-messages-directory" type="xsd:string">
-				</xsd:element>
-             <xsd:element maxOccurs="1" minOccurs="0" name="security-settings">
-             </xsd:element>
-             <xsd:element maxOccurs="1" minOccurs="0" name="address-settings">
-             </xsd:element>
-             <xsd:element maxOccurs="1" minOccurs="0" name="connector-services">
-                    <xsd:complexType>
-                        <xsd:sequence>
-                            <xsd:element maxOccurs="unbounded" minOccurs="0" name="connector-service" type="connectorServiceType"/>
-                        </xsd:sequence>
-                    </xsd:complexType>
-              </xsd:element>
-			</xsd:all>
-		</xsd:complexType>
-	</xsd:element>
-
-	<xsd:element name="clustered" type="xsd:boolean"/>
-	
-	<xsd:element name="file-deployment-enabled" type="xsd:boolean"/>
-	
-	<xsd:element name="persistence-enabled" type="xsd:boolean"/>
-
-	<xsd:element name="local-bind-address" type="xsd:string"/>
-
-	<xsd:element name="local-bind-port" type="xsd:int"/>
-
-	<xsd:element name="group-address" type="xsd:string"/>
-
-	<xsd:element name="group-port" type="xsd:int"/>
-
-	<xsd:element name="broadcast-period" type="xsd:long"/>
-
-	<xsd:element name="broadcast-group">
-		<xsd:complexType>
-			<xsd:sequence>
-                <xsd:element maxOccurs="1" minOccurs="0" ref="local-bind-address">
-                </xsd:element>
-				<xsd:element maxOccurs="1" minOccurs="0" ref="local-bind-port">
-				</xsd:element>
-				<xsd:element maxOccurs="1" minOccurs="1" ref="group-address">
-				</xsd:element>
-				<xsd:element maxOccurs="1" minOccurs="1" ref="group-port">
-				</xsd:element>
-				<xsd:element maxOccurs="1" minOccurs="0" ref="broadcast-period">
-				</xsd:element>
-				<xsd:element maxOccurs="unbounded" minOccurs="0" name="connector-ref" type="xsd:string">
-				</xsd:element>
-			</xsd:sequence>
-			<xsd:attribute name="name" type="xsd:ID" use="required"/>
-		</xsd:complexType>
-	</xsd:element>
-
-	<xsd:element name="refresh-timeout" type="xsd:int"/>
-
-	<xsd:element name="initial-wait-timeout" type="xsd:int"/>
-
-	<xsd:element name="discovery-group">
-		<xsd:complexType>
-			<xsd:sequence>
-			    <xsd:element maxOccurs="1" minOccurs="0" ref="local-bind-address">
-                </xsd:element>
-				<xsd:element maxOccurs="1" minOccurs="1" ref="group-address">
-				</xsd:element>
-				<xsd:element maxOccurs="1" minOccurs="1" ref="group-port">
-				</xsd:element>
-				<xsd:element maxOccurs="1" minOccurs="0" ref="refresh-timeout">
-				</xsd:element>
-				<xsd:element maxOccurs="1" minOccurs="0" ref="initial-wait-timeout">
-				</xsd:element>
-			</xsd:sequence>
-			<xsd:attribute name="name" type="xsd:ID" use="required"/>
-		</xsd:complexType>
-	</xsd:element>
-
-	<xsd:element name="discovery-group-ref">
-		<xsd:complexType>
-			<xsd:attribute name="discovery-group-name" type="xsd:IDREF">
-			</xsd:attribute>
-		</xsd:complexType>
-	</xsd:element>
-
-	<xsd:element name="remoting-interceptors">
-		<xsd:complexType>
-			<xsd:sequence>
-				<xsd:element maxOccurs="unbounded" minOccurs="1" name="class-name" type="xsd:string">
-				</xsd:element>
-			</xsd:sequence>
-		</xsd:complexType>
-	</xsd:element>
-
-	<xsd:complexType name="paramType">
-		<xsd:attribute name="key" type="xsd:string" use="required"/>
-		<xsd:attribute name="value" type="xsd:string" use="required"/>
-	</xsd:complexType>
-
-	<xsd:complexType name="connectorType">
-		<xsd:sequence>
-			<xsd:element maxOccurs="1" minOccurs="1" name="factory-class" type="xsd:string">
-			</xsd:element>
-			<xsd:element maxOccurs="unbounded" minOccurs="0" name="param" type="paramType">
-			</xsd:element>
-		</xsd:sequence>
-		<xsd:attribute name="name" type="xsd:ID" use="required"/>
-	</xsd:complexType>
-
-	<xsd:complexType name="acceptorType">
-		<xsd:sequence>
-			<xsd:element maxOccurs="1" minOccurs="1" name="factory-class" type="xsd:string">
-			</xsd:element>
-			<xsd:element maxOccurs="unbounded" minOccurs="0" name="param" type="paramType">
-			</xsd:element>
-		</xsd:sequence>
-		<xsd:attribute name="name" type="xsd:string" use="optional"/>
-	</xsd:complexType>
-
-	<xsd:complexType name="bridgeType">	   
-		<xsd:sequence>
-			<xsd:element maxOccurs="1" minOccurs="1" name="queue-name" type="xsd:IDREF">
-			</xsd:element>
-			<xsd:element maxOccurs="1" minOccurs="0" name="forwarding-address" type="xsd:string">
-			</xsd:element>
-			<xsd:element maxOccurs="1" minOccurs="0" name="ha" type="xsd:boolean">
-			</xsd:element>
-            <xsd:element maxOccurs="1" minOccurs="0" name="filter">
-                <xsd:complexType>
-                   <xsd:attribute name="string" type="xsd:string" use="required"/>
-                </xsd:complexType>
-            </xsd:element>
-			<xsd:element maxOccurs="1" minOccurs="0" name="transformer-class-name" type="xsd:string">
-			</xsd:element>
-			<xsd:element maxOccurs="1" minOccurs="0" name="retry-interval" type="xsd:long">
-			</xsd:element>
-			<xsd:element maxOccurs="1" minOccurs="0" name="retry-interval-multiplier" type="xsd:double">
-			</xsd:element>
-			<xsd:element maxOccurs="1" minOccurs="0" name="reconnect-attempts" type="xsd:int">
-			</xsd:element>
-			<xsd:element maxOccurs="1" minOccurs="0" name="failover-on-server-shutdown" type="xsd:boolean">
-			</xsd:element>
-			<xsd:element maxOccurs="1" minOccurs="0" name="use-duplicate-detection" type="xsd:boolean">
-			</xsd:element>
-			<xsd:element maxOccurs="1" minOccurs="0" name="confirmation-window-size" type="xsd:int">
-			</xsd:element>
-			<xsd:element maxOccurs="1" minOccurs="0" name="user" type="xsd:string">
-			</xsd:element>
-			<xsd:element maxOccurs="1" minOccurs="0" name="password" type="xsd:string">
-			</xsd:element>
-			<xsd:choice>				
-				<xsd:element maxOccurs="1" minOccurs="1" name="static-connectors">
-                    <xsd:complexType>
-                        <xsd:sequence>
-                            <xsd:element maxOccurs="unbounded" minOccurs="1" name="connector-ref" type="xsd:string"/>
-                        </xsd:sequence>
-                    </xsd:complexType>
-                </xsd:element>				
-				<xsd:element maxOccurs="1" minOccurs="1" name="discovery-group-ref">
-					<xsd:complexType>
-						<xsd:attribute name="discovery-group-name" type="xsd:IDREF" use="required">
-						</xsd:attribute>
-					</xsd:complexType>
-				</xsd:element>
-			</xsd:choice>
-		</xsd:sequence>	
-		<xsd:attribute name="name" type="xsd:string" use="required"/>	
-	</xsd:complexType>
-	
-   <xsd:complexType name="clusterConnectionType">      
-		<xsd:sequence>
-			<xsd:element maxOccurs="1" minOccurs="1" name="address" type="xsd:string">
-			</xsd:element>
-			<xsd:element maxOccurs="1" minOccurs="1" name="connector-ref" type="xsd:string">
-			</xsd:element>
-			<xsd:element maxOccurs="1" minOccurs="0" name="retry-interval" type="xsd:long">
-			</xsd:element>			
-			<xsd:element maxOccurs="1" minOccurs="0" name="use-duplicate-detection" type="xsd:boolean">
-			</xsd:element>
-			<xsd:element maxOccurs="1" minOccurs="0" name="forward-when-no-consumers" type="xsd:boolean">
-			</xsd:element>
-			<xsd:element maxOccurs="1" minOccurs="0" name="max-hops" type="xsd:int">
-			</xsd:element>
-			<xsd:element maxOccurs="1" minOccurs="0" name="confirmation-window-size" type="xsd:int">
-			</xsd:element>
-			<xsd:choice>
-				<xsd:element maxOccurs="1" minOccurs="0" name="static-connectors">
-                    <xsd:complexType>
-                        <xsd:sequence>
-                            <xsd:element maxOccurs="unbounded" minOccurs="0" name="connector-ref" type="xsd:string"/>
-                        </xsd:sequence>
-                        <xsd:attribute name="allow-direct-connections-only" type="xsd:boolean" use="optional"/>
-                    </xsd:complexType>
-                </xsd:element>	
-				<xsd:element maxOccurs="1" minOccurs="0" name="discovery-group-ref">
-					<xsd:complexType>
-						<xsd:attribute name="discovery-group-name" type="xsd:IDREF" use="required">
-						</xsd:attribute>
-					</xsd:complexType>
-				</xsd:element>
-			</xsd:choice>
-		</xsd:sequence>
-		<xsd:attribute name="name" type="xsd:string" use="required"/>
-	</xsd:complexType>
-
-	<xsd:complexType name="divertType">	   
-		<xsd:sequence>
-			<xsd:element maxOccurs="1" minOccurs="0" name="routing-name" type="xsd:string">
-			</xsd:element>
-			<xsd:element maxOccurs="1" minOccurs="1" name="address" type="xsd:string">
-			</xsd:element>
-			<xsd:element maxOccurs="1" minOccurs="1" name="forwarding-address" type="xsd:string">
-			</xsd:element>
-            <xsd:element maxOccurs="1" minOccurs="0" name="filter">
-                <xsd:complexType>
-                   <xsd:attribute name="string" type="xsd:string" use="required"/>
-                </xsd:complexType>
-            </xsd:element>
-			<xsd:element maxOccurs="1" minOccurs="0" name="transformer-class-name" type="xsd:string">
-			</xsd:element>
-			<xsd:element maxOccurs="1" minOccurs="0" name="exclusive" type="xsd:boolean">
-			</xsd:element>
-		</xsd:sequence>	
-		<xsd:attribute name="name" type="xsd:string" use="required"/>	
-	</xsd:complexType>
-
-	<xsd:simpleType name="journalType">
-		<xsd:restriction base="xsd:string">
-			<xsd:enumeration value="ASYNCIO"/>
-			<xsd:enumeration value="NIO"/>
-		</xsd:restriction>
-	</xsd:simpleType>
-
-   <xsd:complexType name="groupingHandlerType">
-      <xsd:sequence>
-         <xsd:element maxOccurs="1" minOccurs="1" name="type" type="groupingHandlerTypeType"/>
-         <xsd:element maxOccurs="1" minOccurs="1" name="address" type="xsd:string"/>
-         <xsd:element maxOccurs="1" minOccurs="0" name="timeout" type="xsd:int"/>
-      </xsd:sequence>
-       <xsd:attribute name="name" type="xsd:string" use="required"/>
-   </xsd:complexType>
-
-   <xsd:simpleType name="groupingHandlerTypeType">
-      <xsd:restriction base="xsd:string">
-         <xsd:enumeration value="LOCAL"/>
-         <xsd:enumeration value="REMOTE"/>
-      </xsd:restriction>
-   </xsd:simpleType>
-
-  <xsd:element name="security-settings">
-      <xsd:complexType>
-         <xsd:sequence>
-            <xsd:element maxOccurs="unbounded" minOccurs="0" name="security-setting">
-            </xsd:element>
-          </xsd:sequence>
-       </xsd:complexType>
-    </xsd:element>
-
-   <xsd:element name="security-setting">
-    <xsd:complexType>
-        <xsd:sequence>
-           <xsd:element maxOccurs="unbounded" minOccurs="0" name="permission">
-              <xsd:complexType>
-                 <xsd:attribute name="type" type="xsd:string" use="required"/>
-                 <xsd:attribute name="roles" type="xsd:string" use="required"/>
-              </xsd:complexType>
-           </xsd:element>
-        </xsd:sequence>
-            <xsd:attribute name="match" type="xsd:string" use="required"/>
-        </xsd:complexType>
-   </xsd:element>
-
-  <xsd:element name="address-settings">
-      <xsd:complexType>
-         <xsd:sequence>
-            <xsd:element maxOccurs="unbounded" minOccurs="0" name="address-setting">
-            </xsd:element>
-          </xsd:sequence>
-       </xsd:complexType>
-    </xsd:element>
-    
-   <xsd:element name="address-setting">
-    <xsd:complexType>
-      <xsd:all>
-        <xsd:element maxOccurs="1" minOccurs="0" name="dead-letter-address" type="xsd:string">
-        </xsd:element>
-        <xsd:element maxOccurs="1" minOccurs="0" name="expiry-address" type="xsd:string">
-        </xsd:element>
-        <xsd:element maxOccurs="1" minOccurs="0" name="redelivery-delay" type="xsd:long">
-        </xsd:element>
-        <xsd:element maxOccurs="1" minOccurs="0" name="max-delivery-attempts" type="xsd:int">
-        </xsd:element>
-        <xsd:element maxOccurs="1" minOccurs="0" name="max-size-bytes" type="xsd:long">
-        </xsd:element>
-        <xsd:element maxOccurs="1" minOccurs="0" name="page-size-bytes" type="xsd:long">
-        </xsd:element>
-        <xsd:element maxOccurs="1" minOccurs="0" name="page-max-cache-size" type="xsd:int">
-        </xsd:element>
-        <xsd:element maxOccurs="1" minOccurs="0" name="address-full-policy" type="addressFullMessagePolicyType">
-		</xsd:element>                
-        <xsd:element maxOccurs="1" minOccurs="0" name="message-counter-history-day-limit" type="xsd:int">
-        </xsd:element>
-        <xsd:element maxOccurs="1" minOccurs="0" name="last-value-queue" type="xsd:boolean">
-        </xsd:element>
-        <xsd:element maxOccurs="1" minOccurs="0" name="redistribution-delay" type="xsd:long">
-        </xsd:element>
-        <xsd:element maxOccurs="1" minOccurs="0" name="send-to-dla-on-no-route" type="xsd:boolean">
-        </xsd:element>
-      </xsd:all>
-    <xsd:attribute name="match" type="xsd:string" use="required"/>
-   </xsd:complexType> 
-   </xsd:element>
-     
-   <xsd:element name="queues">
-      <xsd:complexType>
-         <xsd:sequence>
-            <xsd:element maxOccurs="unbounded" minOccurs="0" name="queue">
-            </xsd:element>
-         </xsd:sequence>
-      </xsd:complexType>
-   </xsd:element>
-   
-   <xsd:element name="queue">
-      <xsd:complexType>
-        <xsd:all>
-            <xsd:element maxOccurs="1" minOccurs="1" name="address" type="xsd:string">
-            </xsd:element>
-            <xsd:element maxOccurs="1" minOccurs="0" name="filter">
-                <xsd:complexType>
-                   <xsd:attribute name="string" type="xsd:string" use="required"/>
-                </xsd:complexType>
-            </xsd:element>
-            <xsd:element maxOccurs="1" minOccurs="0" name="durable" type="xsd:boolean">
-            </xsd:element>
-        </xsd:all>
-        <xsd:attribute name="name" type="xsd:ID" use="required"/>
-       </xsd:complexType>
-    </xsd:element>
-    
-	<xsd:complexType name="live-connectorType">
-		<xsd:attribute name="connector-name" type="xsd:IDREF" use="required">
-		</xsd:attribute>
-	</xsd:complexType>
-	
-	<xsd:simpleType name="addressFullMessagePolicyType">
-		<xsd:restriction base="xsd:string">
-			<xsd:enumeration value="DROP"/>
-			<xsd:enumeration value="PAGE"/>
-			<xsd:enumeration value="BLOCK"/>
-		</xsd:restriction>
-	</xsd:simpleType>
-	
-	<xsd:complexType name="connectorServiceType">
-		<xsd:sequence>
-			<xsd:element maxOccurs="1" minOccurs="1" name="factory-class" type="xsd:string">
-			</xsd:element>
-			<xsd:element maxOccurs="unbounded" minOccurs="0" name="param" type="paramType">
-			</xsd:element>
-		</xsd:sequence>
-		<xsd:attribute name="name" type="xsd:string" use="optional"/>
-	</xsd:complexType>
-
-</xsd:schema>

Deleted: trunk/src/config/common/schema/hornetq-users.xsd
===================================================================
--- trunk/src/config/common/schema/hornetq-users.xsd	2011-04-04 22:11:03 UTC (rev 10451)
+++ trunk/src/config/common/schema/hornetq-users.xsd	2011-04-05 12:59:20 UTC (rev 10452)
@@ -1,32 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-
-<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
-   targetNamespace="urn:hornetq"
-   xmlns="urn:hornetq"
-   elementFormDefault="qualified"
-   attributeFormDefault="unqualified"
-   version="1.0">
-   
-   <xsd:element name="configuration">
-   	<xsd:complexType>
-   		<xsd:sequence>
-            <xsd:element name="defaultuser" type="userType" maxOccurs="1" minOccurs="0"></xsd:element>
-            <xsd:element name="user" type="userType" maxOccurs="unbounded" minOccurs="0"></xsd:element>
-   		</xsd:sequence>
-   	</xsd:complexType>
-   </xsd:element>
-
-   <xsd:element name="role">
-   	<xsd:complexType>
-   		<xsd:attribute name="name" type="xsd:string" use="required"></xsd:attribute>
-   	</xsd:complexType>
-   </xsd:element>
-
-   <xsd:complexType name="userType">
-   	<xsd:sequence>
-   		<xsd:element ref="role" maxOccurs="unbounded" minOccurs="1"></xsd:element>
-   	</xsd:sequence>
-   	<xsd:attribute name="name" type="xsd:ID" use="required"></xsd:attribute>
-   	<xsd:attribute name="password" type="xsd:string"></xsd:attribute>
-   </xsd:complexType>
-</xsd:schema>



More information about the hornetq-commits mailing list