blob: 38c8511022ff6ed2a05e8f882654a1a23d387229 [file] [log] [blame]
<?xml version='1.0'?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF 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.
-->
<!-- NOTE: this file is autogenerated by Apache XBean -->
<xs:schema elementFormDefault='qualified'
targetNamespace='http://activemq.apache.org/schema/core'
xmlns:xs='http://www.w3.org/2001/XMLSchema'
xmlns:tns='http://activemq.apache.org/schema/core'>
<!-- element for type: org.apache.activemq.store.amq.AMQPersistenceAdapter -->
<xs:element name='amqPersistenceAdapter'>
<xs:annotation>
<xs:documentation><![CDATA[
An implementation of {@link PersistenceAdapter} designed for use with a
{@link Journal} and then check pointing asynchronously on a timeout with some
other long term persistent storage.
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name='asyncDataManager' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='brokerService' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:broker'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='referenceStoreAdapter' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='taskRunnerFactory' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='usageManager' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:systemUsage'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='wireFormat' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
</xs:sequence>
<xs:attribute name='archiveDataLogs' type='xs:boolean'/>
<xs:attribute name='asyncDataManager' type='xs:string'/>
<xs:attribute name='brokerName' type='xs:string'/>
<xs:attribute name='brokerService' type='xs:string'/>
<xs:attribute name='checkpointInterval' type='xs:long'/>
<xs:attribute name='cleanupInterval' type='xs:long'/>
<xs:attribute name='directory' type='xs:string'/>
<xs:attribute name='directoryArchive' type='xs:string'/>
<xs:attribute name='disableLocking' type='xs:boolean'/>
<xs:attribute name='indexBinSize' type='xs:string'/>
<xs:attribute name='indexKeySize' type='xs:string'/>
<xs:attribute name='indexPageSize' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
When set using XBean, you can use values such as: "20
mb", "1024 kb", or "1 gb"
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='maxCheckpointMessageAddSize' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
When set using XBean, you can use values such as: "20
mb", "1024 kb", or "1 gb"
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='maxFileLength' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
When set using XBean, you can use values such as: "20
mb", "1024 kb", or "1 gb"
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='maxReferenceFileLength' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
When set using XBean, you can use values such as: "20
mb", "1024 kb", or "1 gb"
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='persistentIndex' type='xs:boolean'/>
<xs:attribute name='referenceStoreAdapter' type='xs:string'/>
<xs:attribute name='syncOnWrite' type='xs:boolean'/>
<xs:attribute name='taskRunnerFactory' type='xs:string'/>
<xs:attribute name='usageManager' type='xs:string'/>
<xs:attribute name='useNio' type='xs:boolean'/>
<xs:attribute name='wireFormat' type='xs:string'/>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.store.amq.AMQPersistenceAdapterFactory -->
<xs:element name='amqPersistenceAdapterFactory'>
<xs:annotation>
<xs:documentation><![CDATA[
An implementation of {@link PersistenceAdapterFactory}
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name='referenceStoreAdapter' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='taskRunnerFactory' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
</xs:sequence>
<xs:attribute name='brokerName' type='xs:string'/>
<xs:attribute name='dataDirectory' type='xs:string'/>
<xs:attribute name='journalThreadPriority' type='xs:integer'/>
<xs:attribute name='maxFileLength' type='xs:integer'/>
<xs:attribute name='persistentIndex' type='xs:boolean'/>
<xs:attribute name='referenceStoreAdapter' type='xs:string'/>
<xs:attribute name='syncOnWrite' type='xs:boolean'/>
<xs:attribute name='taskRunnerFactory' type='xs:string'/>
<xs:attribute name='useNio' type='xs:boolean'/>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.security.AuthenticationUser -->
<xs:element name='authenticationUser'>
<xs:annotation>
<xs:documentation><![CDATA[
A helper object used to configure simple authentiaction plugin
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:attribute name='groups' type='xs:string'/>
<xs:attribute name='password' type='xs:string'/>
<xs:attribute name='username' type='xs:string'/>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.security.AuthorizationEntry -->
<xs:element name='authorizationEntry'>
<xs:annotation>
<xs:documentation><![CDATA[
Represents an entry in a {@link DefaultAuthorizationMap} for assigning
different operations (read, write, admin) of user roles to a specific
destination or a hierarchical wildcard area of destinations.
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name='adminACLs' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='unbounded'><xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='destination' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:queue'/>
<xs:element ref='tns:topic'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='readACLs' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='unbounded'><xs:any minOccurs='0' maxOccurs='unbounded'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='writeACLs' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='unbounded'><xs:any minOccurs='0' maxOccurs='unbounded'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
</xs:sequence>
<xs:attribute name='admin' type='xs:string'/>
<xs:attribute name='destination' type='xs:string'/>
<xs:attribute name='groupClass' type='xs:string'/>
<xs:attribute name='queue' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
A helper method to set the destination from a configuration file
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='read' type='xs:string'/>
<xs:attribute name='topic' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
A helper method to set the destination from a configuration file
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='write' type='xs:string'/>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.security.DefaultAuthorizationMap -->
<xs:element name='authorizationMap'>
<xs:annotation>
<xs:documentation><![CDATA[
Represents a destination based configuration of policies so that individual
destinations or wildcard hierarchies of destinations can be configured using
different policies. Each entry in the map represents the authorization ACLs
for each operation.
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name='authorizationEntries' minOccurs='0' maxOccurs='1'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the individual entries on the authorization map
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='unbounded'><xs:any minOccurs='0' maxOccurs='unbounded'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='defaultEntry' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:authorizationEntry'/>
<xs:element ref='tns:tempDestinationAuthorizationEntry'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='entries' minOccurs='0' maxOccurs='1'>
<xs:annotation>
<xs:documentation><![CDATA[
A helper method to allow the destination map to be populated from a
dependency injection framework such as Spring
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='unbounded'><xs:any minOccurs='0' maxOccurs='unbounded'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='tempDestinationAuthorizationEntry' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:tempDestinationAuthorizationEntry'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
</xs:sequence>
<xs:attribute name='defaultEntry' type='xs:string'/>
<xs:attribute name='tempDestinationAuthorizationEntry' type='xs:string'/>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.security.AuthorizationPlugin -->
<xs:element name='authorizationPlugin'>
<xs:annotation>
<xs:documentation><![CDATA[
An authorization plugin where each operation on a destination is checked
against an authorizationMap
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name='map' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:authorizationMap'/>
<xs:element ref='tns:lDAPAuthorizationMap'/>
<xs:element ref='tns:simpleAuthorizationMap'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
</xs:sequence>
<xs:attribute name='map' type='xs:string'/>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.store.jdbc.adapter.AxionJDBCAdapter -->
<xs:element name='axionJDBCAdapter'>
<xs:annotation>
<xs:documentation><![CDATA[
Axion specific Adapter.
Axion does not seem to support ALTER statements or sub-selects. This means:
- We cannot auto upgrade the schema was we roll out new versions of ActiveMQ
- We cannot delete durable sub messages that have be acknowledged by all consumers.
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name='statements' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:statements'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
</xs:sequence>
<xs:attribute name='batchStatments' type='xs:boolean'/>
<xs:attribute name='statements' type='xs:string'/>
<xs:attribute name='useExternalMessageReferences' type='xs:boolean'/>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.store.jdbc.adapter.BlobJDBCAdapter -->
<xs:element name='blobJDBCAdapter'>
<xs:annotation>
<xs:documentation><![CDATA[
This JDBCAdapter inserts and extracts BLOB data using the getBlob()/setBlob()
operations. This is a little more involved since to insert a blob you have
to:
1: insert empty blob. 2: select the blob 3: finally update the blob with data
value.
The databases/JDBC drivers that use this adapter are:
<ul>
<li></li>
</ul>
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name='statements' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:statements'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
</xs:sequence>
<xs:attribute name='batchStatments' type='xs:boolean'/>
<xs:attribute name='statements' type='xs:string'/>
<xs:attribute name='useExternalMessageReferences' type='xs:boolean'/>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.xbean.XBeanBrokerService -->
<xs:element name='broker'>
<xs:annotation>
<xs:documentation><![CDATA[
An ActiveMQ Message Broker. It consists of a number of transport
connectors, network connectors and a bunch of properties which can be used to
configure the broker as its lazily created.
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name='adminView' minOccurs='0' maxOccurs='1'>
<xs:annotation>
<xs:documentation><![CDATA[
Returns the administration view of the broker; used to create and destroy
resources such as queues and topics. Note this method returns null if JMX
is disabled.
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='applicationContext' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='consumerSystemUsage' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:systemUsage'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='destinationFactory' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='destinationInterceptors' minOccurs='0' maxOccurs='1'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the destination interceptors to use
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='unbounded'>
<xs:element ref='tns:mirroredQueue'/>
<xs:element ref='tns:virtualDestinationInterceptor'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='destinationPolicy' minOccurs='0' maxOccurs='1'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the destination specific policies available either for exact
destinations or for wildcard areas of destinations.
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:policyMap'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='destinations' minOccurs='0' maxOccurs='1'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the destinations which should be loaded/created on startup
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='unbounded'>
<xs:element ref='tns:queue'/>
<xs:element ref='tns:topic'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='jmsBridgeConnectors' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='unbounded'>
<xs:element ref='tns:jmsQueueConnector'/>
<xs:element ref='tns:jmsTopicConnector'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='managementContext' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:managementContext'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='messageAuthorizationPolicy' minOccurs='0' maxOccurs='1'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the policy used to decide if the current connection is authorized to
consume a given message
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='networkConnectorURIs' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='unbounded'><xs:any minOccurs='0' maxOccurs='unbounded'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='networkConnectors' minOccurs='0' maxOccurs='1'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the network connectors which this broker will use to connect to
other brokers in a federated network
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='unbounded'>
<xs:element ref='tns:ldapNetworkConnector'/>
<xs:element ref='tns:multicastNetworkConnector'/>
<xs:element ref='tns:networkConnector'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='persistenceAdapter' minOccurs='0' maxOccurs='1'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the persistence adaptor implementation to use for this broker
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:amqPersistenceAdapter'/>
<xs:element ref='tns:jdbcPersistenceAdapter'/>
<xs:element ref='tns:journalPersistenceAdapter'/>
<xs:element ref='tns:kahaPersistenceAdapter'/>
<xs:element ref='tns:memoryPersistenceAdapter'/>
<xs:element ref='tns:journaledJDBC'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='persistenceFactory' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:amqPersistenceAdapterFactory'/>
<xs:element ref='tns:journaledJDBC'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='persistenceTaskRunnerFactory' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='plugins' minOccurs='0' maxOccurs='1'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets a number of broker plugins to install such as for security
authentication or authorization
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='unbounded'>
<xs:element ref='tns:authorizationPlugin'/>
<xs:element ref='tns:connectionDotFilePlugin'/>
<xs:element ref='tns:destinationDotFilePlugin'/>
<xs:element ref='tns:jaasAuthenticationPlugin'/>
<xs:element ref='tns:jaasCertificateAuthenticationPlugin'/>
<xs:element ref='tns:loggingBrokerPlugin'/>
<xs:element ref='tns:multicastTraceBrokerPlugin'/>
<xs:element ref='tns:simpleAuthenticationPlugin'/>
<xs:element ref='tns:timeStampingBrokerPlugin'/>
<xs:element ref='tns:udpTraceBrokerPlugin'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='producerSystemUsage' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:systemUsage'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='proxyConnectors' minOccurs='0' maxOccurs='1'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the network connectors which this broker will use to connect to
other brokers in a federated network
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='unbounded'><xs:any minOccurs='0' maxOccurs='unbounded'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='regionBroker' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:loggingBrokerPlugin'/>
<xs:element ref='tns:multicastTraceBrokerPlugin'/>
<xs:element ref='tns:timeStampingBrokerPlugin'/>
<xs:element ref='tns:udpTraceBrokerPlugin'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='services' minOccurs='0' maxOccurs='1'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the services associated with this broker such as a
{@link MasterConnector}
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='unbounded'>
<xs:element ref='tns:broker'/>
<xs:element ref='tns:commandAgent'/>
<xs:element ref='tns:forwardingBridge'/>
<xs:element ref='tns:inboundQueueBridge'/>
<xs:element ref='tns:inboundTopicBridge'/>
<xs:element ref='tns:jmsQueueConnector'/>
<xs:element ref='tns:jmsTopicConnector'/>
<xs:element ref='tns:ldapNetworkConnector'/>
<xs:element ref='tns:managementContext'/>
<xs:element ref='tns:masterConnector'/>
<xs:element ref='tns:memoryUsage'/>
<xs:element ref='tns:multicastNetworkConnector'/>
<xs:element ref='tns:networkConnector'/>
<xs:element ref='tns:outboundQueueBridge'/>
<xs:element ref='tns:outboundTopicBridge'/>
<xs:element ref='tns:proxyConnector'/>
<xs:element ref='tns:storeUsage'/>
<xs:element ref='tns:systemUsage'/>
<xs:element ref='tns:tempUsage'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='systemUsage' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:systemUsage'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='taskRunnerFactory' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='tempDataStore' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='transportConnectorURIs' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='unbounded'><xs:any minOccurs='0' maxOccurs='unbounded'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='transportConnectors' minOccurs='0' maxOccurs='1'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the transport connectors which this broker will listen on for new
clients
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='unbounded'>
<xs:element ref='tns:transportConnector'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
</xs:sequence>
<xs:attribute name='adminView' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
Returns the administration view of the broker; used to create and destroy
resources such as queues and topics. Note this method returns null if JMX
is disabled.
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='advisorySupport' type='xs:boolean'>
<xs:annotation>
<xs:documentation><![CDATA[
Allows the support of advisory messages to be disabled for performance
reasons.
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='applicationContext' type='xs:string'/>
<xs:attribute name='brokerName' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the name of this broker; which must be unique in the network
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='brokerObjectName' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the JMX ObjectName for this broker
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='cacheTempDestinations' type='xs:boolean'/>
<xs:attribute name='consumerSystemUsage' type='xs:string'/>
<xs:attribute name='consumerSystemUsagePortion' type='xs:integer'/>
<xs:attribute name='dataDirectory' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the directory in which the data files will be stored by default for
the JDBC and Journal persistence adaptors.
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='dataDirectoryFile' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the directory in which the data files will be stored by default for
the JDBC and Journal persistence adaptors.
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='dedicatedTaskRunner' type='xs:boolean'/>
<xs:attribute name='deleteAllMessagesOnStartup' type='xs:boolean'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets whether or not all messages are deleted on startup - mostly only
useful for testing.
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='destinationFactory' type='xs:string'/>
<xs:attribute name='destinationPolicy' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the destination specific policies available either for exact
destinations or for wildcard areas of destinations.
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='enableStatistics' type='xs:boolean'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets whether or not the Broker's services enable statistics or not.
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='keepDurableSubsActive' type='xs:boolean'/>
<xs:attribute name='managementContext' type='xs:string'/>
<xs:attribute name='masterConnectorURI' type='xs:string'/>
<xs:attribute name='messageAuthorizationPolicy' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the policy used to decide if the current connection is authorized to
consume a given message
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='monitorConnectionSplits' type='xs:boolean'/>
<xs:attribute name='persistenceAdapter' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the persistence adaptor implementation to use for this broker
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='persistenceFactory' type='xs:string'/>
<xs:attribute name='persistenceTaskRunnerFactory' type='xs:string'/>
<xs:attribute name='persistenceThreadPriority' type='xs:integer'/>
<xs:attribute name='persistent' type='xs:boolean'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets whether or not persistence is enabled or disabled.
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='populateJMSXUserID' type='xs:boolean'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets whether or not the broker should populate the JMSXUserID header.
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='producerSystemUsage' type='xs:string'/>
<xs:attribute name='producerSystemUsagePortion' type='xs:integer'/>
<xs:attribute name='regionBroker' type='xs:string'/>
<xs:attribute name='shutdownOnMasterFailure' type='xs:boolean'/>
<xs:attribute name='splitSystemUsageForProducersConsumers' type='xs:boolean'/>
<xs:attribute name='start' type='xs:boolean'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets whether or not the broker is started along with the ApplicationContext it is defined within.
Normally you would want the broker to start up along with the ApplicationContext but sometimes when working
with JUnit tests you may wish to start and stop the broker explicitly yourself.
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='supportFailOver' type='xs:boolean'/>
<xs:attribute name='systemUsage' type='xs:string'/>
<xs:attribute name='taskRunnerFactory' type='xs:string'/>
<xs:attribute name='taskRunnerPriority' type='xs:integer'/>
<xs:attribute name='tempDataStore' type='xs:string'/>
<xs:attribute name='timeBeforePurgeTempDestinations' type='xs:integer'/>
<xs:attribute name='tmpDataDirectory' type='xs:string'/>
<xs:attribute name='useJmx' type='xs:boolean'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets whether or not the Broker's services should be exposed into JMX or
not.
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='useLocalHostBrokerName' type='xs:boolean'/>
<xs:attribute name='useLoggingForShutdownErrors' type='xs:boolean'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets whether or not we should use commons-logging when reporting errors
when shutting down the broker
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='useMirroredQueues' type='xs:boolean'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets whether or not <a
href="http://activemq.apache.org/mirrored-queues.html">Mirrored
Queues</a> should be supported by default if they have not been
explicitly configured.
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='useShutdownHook' type='xs:boolean'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets whether or not we should use a shutdown handler to close down the
broker cleanly if the JVM is terminated. It is recommended you leave this
enabled.
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='useVirtualTopics' type='xs:boolean'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets whether or not <a
href="http://activemq.apache.org/virtual-destinations.html">Virtual
Topics</a> should be supported by default if they have not been
explicitly configured.
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='vmConnectorURI' type='xs:string'/>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.store.jdbc.adapter.BytesJDBCAdapter -->
<xs:element name='bytesJDBCAdapter'>
<xs:annotation>
<xs:documentation><![CDATA[
This JDBCAdapter inserts and extracts BLOB data using the
setBytes()/getBytes() operations. The databases/JDBC drivers that use this
adapter are:
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name='statements' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:statements'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
</xs:sequence>
<xs:attribute name='batchStatments' type='xs:boolean'/>
<xs:attribute name='statements' type='xs:string'/>
<xs:attribute name='useExternalMessageReferences' type='xs:boolean'/>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.broker.util.CommandAgent -->
<xs:element name='commandAgent'>
<xs:annotation>
<xs:documentation><![CDATA[
An agent which listens to commands on a JMS destination
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name='commandDestination' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:queue'/>
<xs:element ref='tns:topic'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='connection' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='connectionFactory' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:connectionFactory'/>
<xs:element ref='tns:xaConnectionFactory'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
</xs:sequence>
<xs:attribute name='brokerUrl' type='xs:string'/>
<xs:attribute name='commandDestination' type='xs:string'/>
<xs:attribute name='connection' type='xs:string'/>
<xs:attribute name='connectionFactory' type='xs:string'/>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.network.CompositeDemandForwardingBridge -->
<xs:element name='compositeDemandForwardingBridge'>
<xs:annotation>
<xs:documentation><![CDATA[
A demand forwarding bridge which works with multicast style transports where
a single Transport could be communicating with multiple remote brokers
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name='configuration' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:ldapNetworkConnector'/>
<xs:element ref='tns:multicastNetworkConnector'/>
<xs:element ref='tns:networkConnector'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='durableDestinations' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='unbounded'>
<xs:element ref='tns:queue'/>
<xs:element ref='tns:topic'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='dynamicallyIncludedDestinations' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='unbounded'>
<xs:element ref='tns:queue'/>
<xs:element ref='tns:topic'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='excludedDestinations' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='unbounded'>
<xs:element ref='tns:queue'/>
<xs:element ref='tns:topic'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='localBroker' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='networkBridgeListener' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='remoteBroker' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='staticallyIncludedDestinations' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='unbounded'>
<xs:element ref='tns:queue'/>
<xs:element ref='tns:topic'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
</xs:sequence>
<xs:attribute name='configuration' type='xs:string'/>
<xs:attribute name='createdByDuplex' type='xs:boolean'/>
<xs:attribute name='localBroker' type='xs:string'/>
<xs:attribute name='networkBridgeListener' type='xs:string'/>
<xs:attribute name='remoteBroker' type='xs:string'/>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.broker.region.virtual.CompositeQueue -->
<xs:element name='compositeQueue'>
<xs:annotation>
<xs:documentation><![CDATA[
Represents a virtual queue which forwards to a number of other destinations.
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name='forwardTo' minOccurs='0' maxOccurs='1'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the list of destinations to forward to
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='unbounded'><xs:any minOccurs='0' maxOccurs='unbounded'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
</xs:sequence>
<xs:attribute name='copyMessage' type='xs:boolean'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets whether a copy of the message will be sent to each destination.
Defaults to true so that the forward destination is set as the
destination of the message
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='forwardOnly' type='xs:boolean'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets if the virtual destination is forward only (and so there is no
physical queue to match the virtual queue) or if there is also a physical
queue with the same name).
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='name' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the name of this composite destination
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.broker.region.virtual.CompositeTopic -->
<xs:element name='compositeTopic'>
<xs:annotation>
<xs:documentation><![CDATA[
Represents a virtual topic which forwards to a number of other destinations.
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name='forwardTo' minOccurs='0' maxOccurs='1'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the list of destinations to forward to
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='unbounded'><xs:any minOccurs='0' maxOccurs='unbounded'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
</xs:sequence>
<xs:attribute name='copyMessage' type='xs:boolean'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets whether a copy of the message will be sent to each destination.
Defaults to true so that the forward destination is set as the
destination of the message
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='forwardOnly' type='xs:boolean'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets if the virtual destination is forward only (and so there is no
physical queue to match the virtual queue) or if there is also a physical
queue with the same name).
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='name' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the name of this composite destination
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.broker.view.ConnectionDotFilePlugin -->
<xs:element name='connectionDotFilePlugin'>
<xs:annotation>
<xs:documentation><![CDATA[
A <a href="http://www.graphviz.org/">DOT</a> file creator plugin which
creates a DOT file showing the current connections
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:attribute name='file' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the destination file name to create the destination diagram
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.spring.ActiveMQConnectionFactory -->
<xs:element name='connectionFactory'>
<xs:annotation>
<xs:documentation><![CDATA[
A <a href="http://www.springframework.org/">Spring</a> enhanced connection
factory which will automatically use the Spring bean name as the clientIDPrefix property
so that connections created have client IDs related to your Spring.xml file for
easier comprehension from <a href="http://activemq.apache.org/jmx.html">JMX</a>.
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name='blobTransferPolicy' minOccurs='0' maxOccurs='1'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the policy used to describe how out-of-band BLOBs (Binary Large
OBjects) are transferred from producers to brokers to consumers
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='clientIdGenerator' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='prefetchPolicy' minOccurs='0' maxOccurs='1'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the <a
href="http://activemq.apache.org/what-is-the-prefetch-limit-for.html">prefetch
policy</a> for consumers created by this connection.
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:prefetchPolicy'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='properties' minOccurs='0' maxOccurs='1'>
<xs:annotation>
<xs:documentation><![CDATA[
Get the properties from this instance for storing in JNDI
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='redeliveryPolicy' minOccurs='0' maxOccurs='1'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the global redelivery policy to be used when a message is delivered
but the session is rolled back
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:redeliveryPolicy'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='transformer' minOccurs='0' maxOccurs='1'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the transformer used to transform messages before they are sent on
to the JMS bus or when they are received from the bus but before they are
delivered to the JMS client
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='transportListener' minOccurs='0' maxOccurs='1'>
<xs:annotation>
<xs:documentation><![CDATA[
Allows a listener to be configured on the ConnectionFactory so that when this factory is used
with frameworks which don't expose the Connection such as Spring JmsTemplate, you can still register
a transport listener.
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
</xs:sequence>
<xs:attribute name='alwaysSessionAsync' type='xs:boolean'>
<xs:annotation>
<xs:documentation><![CDATA[
If this flag is set then a separate thread is not used for dispatching
messages for each Session in the Connection. However, a separate thread
is always used if there is more than one session, or the session isn't in
auto acknowledge or duplicates ok mode
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='alwaysSyncSend' type='xs:boolean'>
<xs:annotation>
<xs:documentation><![CDATA[
Set true if always require messages to be sync sent
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='beanName' type='xs:string'/>
<xs:attribute name='blobTransferPolicy' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the policy used to describe how out-of-band BLOBs (Binary Large
OBjects) are transferred from producers to brokers to consumers
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='brokerURL' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the <a
href="http://activemq.apache.org/configuring-transports.html">connection
URL</a> used to connect to the ActiveMQ broker.
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='clientID' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the JMS clientID to use for the created connection. Note that this
can only be used by one connection at once so generally its a better idea
to set the clientID on a Connection
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='clientIDPrefix' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the prefix used by autogenerated JMS Client ID values which are used
if the JMS client does not explicitly specify on.
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='clientIdGenerator' type='xs:string'/>
<xs:attribute name='closeTimeout' type='xs:integer'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the timeout before a close is considered complete. Normally a
close() on a connection waits for confirmation from the broker; this
allows that operation to timeout to save the client hanging if there is
no broker
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='copyMessageOnSend' type='xs:boolean'>
<xs:annotation>
<xs:documentation><![CDATA[
Should a JMS message be copied to a new JMS Message object as part of the
send() method in JMS. This is enabled by default to be compliant with the
JMS specification. You can disable it if you do not mutate JMS messages
after they are sent for a performance boost
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='disableTimeStampsByDefault' type='xs:boolean'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets whether or not timestamps on messages should be disabled or not. If
you disable them it adds a small performance boost.
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='dispatchAsync' type='xs:boolean'>
<xs:annotation>
<xs:documentation><![CDATA[
Enables or disables the default setting of whether or not consumers have
their messages <a
href="http://activemq.apache.org/consumer-dispatch-async.html">dispatched
synchronously or asynchronously by the broker</a>. For non-durable
topics for example we typically dispatch synchronously by default to
minimize context switches which boost performance. However sometimes its
better to go slower to ensure that a single blocked consumer socket does
not block delivery to other consumers.
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='exclusiveConsumer' type='xs:boolean'>
<xs:annotation>
<xs:documentation><![CDATA[
Enables or disables whether or not queue consumers should be exclusive or
not for example to preserve ordering when not using <a
href="http://activemq.apache.org/message-groups.html">Message Groups</a>
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='nestedMapAndListEnabled' type='xs:boolean'>
<xs:annotation>
<xs:documentation><![CDATA[
Enables/disables whether or not Message properties and MapMessage entries
support <a
href="http://activemq.apache.org/structured-message-properties-and-mapmessages.html">Nested
Structures</a> of Map and List objects
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='objectMessageSerializationDefered' type='xs:boolean'>
<xs:annotation>
<xs:documentation><![CDATA[
When an object is set on an ObjectMessage, the JMS spec requires the
object to be serialized by that set method. Enabling this flag causes the
object to not get serialized. The object may subsequently get serialized
if the message needs to be sent over a socket or stored to disk.
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='optimizeAcknowledge' type='xs:boolean'/>
<xs:attribute name='optimizedMessageDispatch' type='xs:boolean'>
<xs:annotation>
<xs:documentation><![CDATA[
If this flag is set then an larger prefetch limit is used - only
applicable for durable topic subscribers.
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='password' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the JMS password used for connections created from this factory
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='prefetchPolicy' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the <a
href="http://activemq.apache.org/what-is-the-prefetch-limit-for.html">prefetch
policy</a> for consumers created by this connection.
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='producerWindowSize' type='xs:integer'/>
<xs:attribute name='properties' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
Get the properties from this instance for storing in JNDI
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='redeliveryPolicy' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the global redelivery policy to be used when a message is delivered
but the session is rolled back
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='sendTimeout' type='xs:integer'/>
<xs:attribute name='statsEnabled' type='xs:boolean'/>
<xs:attribute name='transformer' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the transformer used to transform messages before they are sent on
to the JMS bus or when they are received from the bus but before they are
delivered to the JMS client
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='transportListener' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
Allows a listener to be configured on the ConnectionFactory so that when this factory is used
with frameworks which don't expose the Connection such as Spring JmsTemplate, you can still register
a transport listener.
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='useAsyncSend' type='xs:boolean'>
<xs:annotation>
<xs:documentation><![CDATA[
Forces the use of <a
href="http://activemq.apache.org/async-sends.html">Async Sends</a> which
adds a massive performance boost; but means that the send() method will
return immediately whether the message has been sent or not which could
lead to message loss.
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='useBeanNameAsClientIdPrefix' type='xs:boolean'/>
<xs:attribute name='useCompression' type='xs:boolean'>
<xs:annotation>
<xs:documentation><![CDATA[
Enables the use of compression of the message bodies
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='useRetroactiveConsumer' type='xs:boolean'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets whether or not retroactive consumers are enabled. Retroactive
consumers allow non-durable topic subscribers to receive old messages
that were published before the non-durable subscriber started.
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='userName' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the JMS userName used by connections created by this factory
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='warnAboutUnstartedConnectionTimeout' type='xs:long'>
<xs:annotation>
<xs:documentation><![CDATA[
Enables the timeout from a connection creation to when a warning is
generated if the connection is not properly started via
{@link Connection#start()} and a message is received by a consumer. It is
a very common gotcha to forget to <a
href="http://activemq.apache.org/i-am-not-receiving-any-messages-what-is-wrong.html">start
the connection</a> so this option makes the default case to create a
warning if the user forgets. To disable the warning just set the value to <
0 (say -1).
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='watchTopicAdvisories' type='xs:boolean'/>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.broker.region.policy.ConstantPendingMessageLimitStrategy -->
<xs:element name='constantPendingMessageLimitStrategy'>
<xs:annotation>
<xs:documentation><![CDATA[
This PendingMessageLimitStrategy is configured to a constant value for all subscriptions.
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:attribute name='limit' type='xs:integer'/>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.store.jdbc.adapter.DB2JDBCAdapter -->
<xs:element name='db2JDBCAdapter'>
<xs:complexType>
<xs:sequence>
<xs:element name='statements' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:statements'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
</xs:sequence>
<xs:attribute name='batchStatments' type='xs:boolean'/>
<xs:attribute name='statements' type='xs:string'/>
<xs:attribute name='useExternalMessageReferences' type='xs:boolean'/>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.store.jdbc.adapter.DefaultJDBCAdapter -->
<xs:element name='defaultJDBCAdapter'>
<xs:annotation>
<xs:documentation><![CDATA[
Implements all the default JDBC operations that are used by the
JDBCPersistenceAdapter. <p/> sub-classing is encouraged to override the
default implementation of methods to account for differences in JDBC Driver
implementations. <p/> The JDBCAdapter inserts and extracts BLOB data using
the getBytes()/setBytes() operations. <p/> The databases/JDBC drivers that
use this adapter are:
<ul>
<li></li>
</ul>
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name='statements' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:statements'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
</xs:sequence>
<xs:attribute name='batchStatments' type='xs:boolean'/>
<xs:attribute name='statements' type='xs:string'/>
<xs:attribute name='useExternalMessageReferences' type='xs:boolean'/>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.usage.DefaultUsageCapacity -->
<xs:element name='defaultUsageCapacity'>
<xs:annotation>
<xs:documentation><![CDATA[
Identify if a limit has been reached
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:attribute name='limit' type='xs:string'/>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.network.DemandForwardingBridge -->
<xs:element name='demandForwardingBridge'>
<xs:annotation>
<xs:documentation><![CDATA[
Forwards messages from the local broker to the remote broker based on demand.
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name='configuration' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:ldapNetworkConnector'/>
<xs:element ref='tns:multicastNetworkConnector'/>
<xs:element ref='tns:networkConnector'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='durableDestinations' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='unbounded'>
<xs:element ref='tns:queue'/>
<xs:element ref='tns:topic'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='dynamicallyIncludedDestinations' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='unbounded'>
<xs:element ref='tns:queue'/>
<xs:element ref='tns:topic'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='excludedDestinations' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='unbounded'>
<xs:element ref='tns:queue'/>
<xs:element ref='tns:topic'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='localBroker' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='networkBridgeListener' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='remoteBroker' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='staticallyIncludedDestinations' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='unbounded'>
<xs:element ref='tns:queue'/>
<xs:element ref='tns:topic'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
</xs:sequence>
<xs:attribute name='configuration' type='xs:string'/>
<xs:attribute name='createdByDuplex' type='xs:boolean'/>
<xs:attribute name='localBroker' type='xs:string'/>
<xs:attribute name='networkBridgeListener' type='xs:string'/>
<xs:attribute name='remoteBroker' type='xs:string'/>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.broker.view.DestinationDotFilePlugin -->
<xs:element name='destinationDotFilePlugin'>
<xs:annotation>
<xs:documentation><![CDATA[
A <a href="http://www.graphviz.org/">DOT</a>
file creator plugin which creates a DOT file showing the current topic & queue hierarchies.
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:attribute name='file' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the destination file name to create the destination diagram
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.filter.DefaultDestinationMapEntry -->
<xs:element name='destinationEntry'>
<xs:annotation>
<xs:documentation><![CDATA[
A default entry in a DestinationMap which holds a single value.
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name='destination' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:queue'/>
<xs:element ref='tns:topic'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='value' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
</xs:sequence>
<xs:attribute name='destination' type='xs:string'/>
<xs:attribute name='queue' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
A helper method to set the destination from a configuration file
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='topic' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
A helper method to set the destination from a configuration file
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='value' type='xs:string'/>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.broker.region.policy.FilePendingSubscriberMessageStoragePolicy -->
<xs:element name='fileCursor'>
<xs:annotation>
<xs:documentation><![CDATA[
Pending messages
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.broker.region.policy.FilePendingDurableSubscriberMessageStoragePolicy -->
<xs:element name='fileDurableSubscriberCursor'>
<xs:annotation>
<xs:documentation><![CDATA[
Pending messages for durable subscribers
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.broker.region.policy.FilePendingQueueMessageStoragePolicy -->
<xs:element name='fileQueueCursor'>
<xs:annotation>
<xs:documentation><![CDATA[
Pending
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.broker.region.virtual.FilteredDestination -->
<xs:element name='filteredDestination'>
<xs:annotation>
<xs:documentation><![CDATA[
Represents a destination which is filtered using some predicate such as a selector
so that messages are only dispatched to the destination if they match the filter.
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name='destination' minOccurs='0' maxOccurs='1'>
<xs:annotation>
<xs:documentation><![CDATA[
The destination to send messages to if they match the filter
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:queue'/>
<xs:element ref='tns:topic'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='filter' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
</xs:sequence>
<xs:attribute name='destination' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
The destination to send messages to if they match the filter
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='filter' type='xs:string'/>
<xs:attribute name='queue' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the destination property to the given queue name
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='selector' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the JMS selector used to filter messages before forwarding them to this destination
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='topic' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the destination property to the given topic name
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.broker.region.policy.FixedCountSubscriptionRecoveryPolicy -->
<xs:element name='fixedCountSubscriptionRecoveryPolicy'>
<xs:annotation>
<xs:documentation><![CDATA[
This implementation of {@link SubscriptionRecoveryPolicy} will keep a fixed
count of last messages.
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:attribute name='maximumSize' type='xs:integer'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the maximum number of messages that this destination will hold
around in RAM
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.broker.region.policy.FixedSizedSubscriptionRecoveryPolicy -->
<xs:element name='fixedSizedSubscriptionRecoveryPolicy'>
<xs:annotation>
<xs:documentation><![CDATA[
This implementation of {@link SubscriptionRecoveryPolicy} will keep a fixed
amount of memory available in RAM for message history which is evicted in
time order.
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name='buffer' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
</xs:sequence>
<xs:attribute name='buffer' type='xs:string'/>
<xs:attribute name='maximumSize' type='xs:integer'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the maximum amount of RAM in bytes that this buffer can hold in RAM
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='useSharedBuffer' type='xs:boolean'/>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.network.ForwardingBridge -->
<xs:element name='forwardingBridge'>
<xs:annotation>
<xs:documentation><![CDATA[
Forwards all messages from the local broker to the remote broker.
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name='localBroker' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='networkBridgeFailedListener' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='remoteBroker' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
</xs:sequence>
<xs:attribute name='clientId' type='xs:string'/>
<xs:attribute name='destinationFilter' type='xs:string'/>
<xs:attribute name='dispatchAsync' type='xs:boolean'/>
<xs:attribute name='localBroker' type='xs:string'/>
<xs:attribute name='networkBridgeFailedListener' type='xs:string'/>
<xs:attribute name='prefetchSize' type='xs:integer'/>
<xs:attribute name='remoteBroker' type='xs:string'/>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.store.jdbc.adapter.ImageBasedJDBCAdaptor -->
<xs:element name='imageBasedJDBCAdaptor'>
<xs:annotation>
<xs:documentation><![CDATA[
Provides JDBCAdapter since that uses
IMAGE datatype to hold binary data.
The databases/JDBC drivers that use this adapter are:
<ul>
<li>Sybase</li>
<li>MS SQL</li>
</ul>
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name='statements' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:statements'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
</xs:sequence>
<xs:attribute name='batchStatments' type='xs:boolean'/>
<xs:attribute name='statements' type='xs:string'/>
<xs:attribute name='useExternalMessageReferences' type='xs:boolean'/>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.network.jms.InboundQueueBridge -->
<xs:element name='inboundQueueBridge'>
<xs:annotation>
<xs:documentation><![CDATA[
Create an Inbound Queue Bridge
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name='consumer' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='consumerConnection' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='consumerQueue' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:queue'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='jmsConnector' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:jmsQueueConnector'/>
<xs:element ref='tns:jmsTopicConnector'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='jmsMessageConvertor' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:simpleJmsMessageConvertor'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='producerConnection' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='producerQueue' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:queue'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
</xs:sequence>
<xs:attribute name='consumer' type='xs:string'/>
<xs:attribute name='consumerConnection' type='xs:string'/>
<xs:attribute name='consumerQueue' type='xs:string'/>
<xs:attribute name='doHandleReplyTo' type='xs:boolean'/>
<xs:attribute name='inboundQueueName' type='xs:string'/>
<xs:attribute name='jmsConnector' type='xs:string'/>
<xs:attribute name='jmsMessageConvertor' type='xs:string'/>
<xs:attribute name='localQueueName' type='xs:string'/>
<xs:attribute name='maximumRetries' type='xs:integer'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the maximum number of retries if a send fails before closing the
bridge
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='producerConnection' type='xs:string'/>
<xs:attribute name='producerQueue' type='xs:string'/>
<xs:attribute name='selector' type='xs:string'/>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.network.jms.InboundTopicBridge -->
<xs:element name='inboundTopicBridge'>
<xs:annotation>
<xs:documentation><![CDATA[
Create an Inbound Topic Bridge
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name='consumer' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='consumerConnection' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='consumerTopic' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:topic'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='jmsConnector' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:jmsQueueConnector'/>
<xs:element ref='tns:jmsTopicConnector'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='jmsMessageConvertor' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:simpleJmsMessageConvertor'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='producerConnection' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='producerTopic' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:topic'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
</xs:sequence>
<xs:attribute name='consumer' type='xs:string'/>
<xs:attribute name='consumerConnection' type='xs:string'/>
<xs:attribute name='consumerName' type='xs:string'/>
<xs:attribute name='consumerTopic' type='xs:string'/>
<xs:attribute name='doHandleReplyTo' type='xs:boolean'/>
<xs:attribute name='inboundTopicName' type='xs:string'/>
<xs:attribute name='jmsConnector' type='xs:string'/>
<xs:attribute name='jmsMessageConvertor' type='xs:string'/>
<xs:attribute name='localTopicName' type='xs:string'/>
<xs:attribute name='maximumRetries' type='xs:integer'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the maximum number of retries if a send fails before closing the
bridge
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='producerConnection' type='xs:string'/>
<xs:attribute name='producerTopic' type='xs:string'/>
<xs:attribute name='selector' type='xs:string'/>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.broker.region.policy.IndividualDeadLetterStrategy -->
<xs:element name='individualDeadLetterStrategy'>
<xs:annotation>
<xs:documentation><![CDATA[
A {@link DeadLetterStrategy} where each destination has its own individual
DLQ using the subject naming hierarchy.
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:attribute name='processExpired' type='xs:boolean'/>
<xs:attribute name='processNonPersistent' type='xs:boolean'/>
<xs:attribute name='queuePrefix' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the prefix to use for all dead letter queues for queue messages
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='topicPrefix' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the prefix to use for all dead letter queues for topic messages
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='useQueueForQueueMessages' type='xs:boolean'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets whether a queue or topic should be used for queue messages sent to a
DLQ. The default is to use a Queue
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='useQueueForTopicMessages' type='xs:boolean'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets whether a queue or topic should be used for topic messages sent to a
DLQ. The default is to use a Queue
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.store.jdbc.adapter.InformixJDBCAdapter -->
<xs:element name='informixJDBCAdapter'>
<xs:annotation>
<xs:documentation><![CDATA[
JDBC Adapter for Informix database.
Because Informix database restricts length of composite primary keys, length of
<i>container name</i> field and <i>subscription id</i> field must be reduced to 150 characters.
Therefore be sure not to use longer names for container name and subscription id than 150 characters.
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name='statements' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:statements'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
</xs:sequence>
<xs:attribute name='batchStatments' type='xs:boolean'/>
<xs:attribute name='statements' type='xs:string'/>
<xs:attribute name='useExternalMessageReferences' type='xs:boolean'/>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.security.JaasAuthenticationPlugin -->
<xs:element name='jaasAuthenticationPlugin'>
<xs:annotation>
<xs:documentation><![CDATA[
Provides a JAAS based authentication plugin
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:attribute name='configuration' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the JAAS configuration domain name used
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='discoverLoginConfig' type='xs:boolean'>
<xs:annotation>
<xs:documentation><![CDATA[
Enables or disables the auto-discovery of the login.config file for JAAS to initialize itself.
This flag is enabled by default such that if the <b>java.security.auth.login.config</b> system property
is not defined then it is set to the location of the <b>login.config</b> file on the classpath.
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.security.JaasCertificateAuthenticationPlugin -->
<xs:element name='jaasCertificateAuthenticationPlugin'>
<xs:annotation>
<xs:documentation><![CDATA[
Provides a JAAS based SSL certificate authentication plugin
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:attribute name='configuration' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the JAAS configuration domain name used
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='discoverLoginConfig' type='xs:boolean'>
<xs:annotation>
<xs:documentation><![CDATA[
Enables or disables the auto-discovery of the login.config file for JAAS to initialize itself.
This flag is enabled by default such that if the <b>java.security.auth.login.config</b> system property
is not defined then it is set to the location of the <b>login.config</b> file on the classpath.
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.store.jdbc.JDBCPersistenceAdapter -->
<xs:element name='jdbcPersistenceAdapter'>
<xs:annotation>
<xs:documentation><![CDATA[
A {@link PersistenceAdapter} implementation using JDBC for persistence
storage.
This persistence adapter will correctly remember prepared XA transactions,
but it will not keep track of local transaction commits so that operations
performed against the Message store are done as a single uow.
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name='adapter' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:axionJDBCAdapter'/>
<xs:element ref='tns:blobJDBCAdapter'/>
<xs:element ref='tns:bytesJDBCAdapter'/>
<xs:element ref='tns:db2JDBCAdapter'/>
<xs:element ref='tns:defaultJDBCAdapter'/>
<xs:element ref='tns:imageBasedJDBCAdaptor'/>
<xs:element ref='tns:informixJDBCAdapter'/>
<xs:element ref='tns:oracleJDBCAdapter'/>
<xs:element ref='tns:streamJDBCAdapter'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='brokerService' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:broker'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='dataSource' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='databaseLocker' minOccurs='0' maxOccurs='1'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the database locker strategy to use to lock the database on startup
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='ds' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='scheduledThreadPoolExecutor' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='statements' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:statements'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='usageManager' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:systemUsage'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='wireFormat' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
</xs:sequence>
<xs:attribute name='adapter' type='xs:string'/>
<xs:attribute name='brokerName' type='xs:string'/>
<xs:attribute name='brokerService' type='xs:string'/>
<xs:attribute name='cleanupPeriod' type='xs:integer'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the number of milliseconds until the database is attempted to be
cleaned up for durable topics
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='createTablesOnStartup' type='xs:boolean'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets whether or not tables are created on startup
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='dataDirectory' type='xs:string'/>
<xs:attribute name='dataDirectoryFile' type='xs:string'/>
<xs:attribute name='dataSource' type='xs:string'/>
<xs:attribute name='databaseLocker' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the database locker strategy to use to lock the database on startup
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='directory' type='xs:string'/>
<xs:attribute name='ds' type='xs:string'/>
<xs:attribute name='lockKeepAlivePeriod' type='xs:long'/>
<xs:attribute name='scheduledThreadPoolExecutor' type='xs:string'/>
<xs:attribute name='statements' type='xs:string'/>
<xs:attribute name='usageManager' type='xs:string'/>
<xs:attribute name='useDatabaseLock' type='xs:boolean'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets whether or not an exclusive database lock should be used to enable
JDBC Master/Slave. Enabled by default.
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='useExternalMessageReferences' type='xs:boolean'/>
<xs:attribute name='wireFormat' type='xs:string'/>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.network.jms.JmsQueueConnector -->
<xs:element name='jmsQueueConnector'>
<xs:annotation>
<xs:documentation><![CDATA[
A Bridge to other JMS Queue providers
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name='brokerService' minOccurs='0' maxOccurs='1'>
<xs:annotation>
<xs:documentation><![CDATA[
One way to configure the local connection - this is called by The
BrokerService when the Connector is embedded
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:broker'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='inboundMessageConvertor' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:simpleJmsMessageConvertor'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='inboundQueueBridges' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='unbounded'>
<xs:element ref='tns:inboundQueueBridge'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='localQueueConnection' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='localQueueConnectionFactory' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:connectionFactory'/>
<xs:element ref='tns:xaConnectionFactory'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='outboundMessageConvertor' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:simpleJmsMessageConvertor'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='outboundQueueBridges' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='unbounded'>
<xs:element ref='tns:outboundQueueBridge'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='outboundQueueConnection' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='outboundQueueConnectionFactory' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:connectionFactory'/>
<xs:element ref='tns:xaConnectionFactory'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
</xs:sequence>
<xs:attribute name='brokerService' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
One way to configure the local connection - this is called by The
BrokerService when the Connector is embedded
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='inboundMessageConvertor' type='xs:string'/>
<xs:attribute name='jndiLocalTemplate' type='xs:string'/>
<xs:attribute name='jndiOutboundTemplate' type='xs:string'/>
<xs:attribute name='localClientId' type='xs:string'/>
<xs:attribute name='localConnectionFactoryName' type='xs:string'/>
<xs:attribute name='localPassword' type='xs:string'/>
<xs:attribute name='localQueueConnection' type='xs:string'/>
<xs:attribute name='localQueueConnectionFactory' type='xs:string'/>
<xs:attribute name='localUsername' type='xs:string'/>
<xs:attribute name='name' type='xs:string'/>
<xs:attribute name='outboundClientId' type='xs:string'/>
<xs:attribute name='outboundMessageConvertor' type='xs:string'/>
<xs:attribute name='outboundPassword' type='xs:string'/>
<xs:attribute name='outboundQueueConnection' type='xs:string'/>
<xs:attribute name='outboundQueueConnectionFactory' type='xs:string'/>
<xs:attribute name='outboundQueueConnectionFactoryName' type='xs:string'/>
<xs:attribute name='outboundUsername' type='xs:string'/>
<xs:attribute name='replyToDestinationCacheSize' type='xs:integer'/>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.network.jms.JmsTopicConnector -->
<xs:element name='jmsTopicConnector'>
<xs:annotation>
<xs:documentation><![CDATA[
A Bridge to other JMS Topic providers
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name='brokerService' minOccurs='0' maxOccurs='1'>
<xs:annotation>
<xs:documentation><![CDATA[
One way to configure the local connection - this is called by The
BrokerService when the Connector is embedded
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:broker'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='inboundMessageConvertor' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:simpleJmsMessageConvertor'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='inboundTopicBridges' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='unbounded'>
<xs:element ref='tns:inboundTopicBridge'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='localTopicConnection' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='localTopicConnectionFactory' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:connectionFactory'/>
<xs:element ref='tns:xaConnectionFactory'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='outboundMessageConvertor' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:simpleJmsMessageConvertor'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='outboundTopicBridges' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='unbounded'>
<xs:element ref='tns:outboundTopicBridge'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='outboundTopicConnection' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='outboundTopicConnectionFactory' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:connectionFactory'/>
<xs:element ref='tns:xaConnectionFactory'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
</xs:sequence>
<xs:attribute name='brokerService' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
One way to configure the local connection - this is called by The
BrokerService when the Connector is embedded
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='inboundMessageConvertor' type='xs:string'/>
<xs:attribute name='jndiLocalTemplate' type='xs:string'/>
<xs:attribute name='jndiOutboundTemplate' type='xs:string'/>
<xs:attribute name='localClientId' type='xs:string'/>
<xs:attribute name='localConnectionFactoryName' type='xs:string'/>
<xs:attribute name='localPassword' type='xs:string'/>
<xs:attribute name='localTopicConnection' type='xs:string'/>
<xs:attribute name='localTopicConnectionFactory' type='xs:string'/>
<xs:attribute name='localUsername' type='xs:string'/>
<xs:attribute name='name' type='xs:string'/>
<xs:attribute name='outboundClientId' type='xs:string'/>
<xs:attribute name='outboundMessageConvertor' type='xs:string'/>
<xs:attribute name='outboundPassword' type='xs:string'/>
<xs:attribute name='outboundTopicConnection' type='xs:string'/>
<xs:attribute name='outboundTopicConnectionFactory' type='xs:string'/>
<xs:attribute name='outboundTopicConnectionFactoryName' type='xs:string'/>
<xs:attribute name='outboundUsername' type='xs:string'/>
<xs:attribute name='replyToDestinationCacheSize' type='xs:integer'/>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.store.journal.JournalPersistenceAdapter -->
<xs:element name='journalPersistenceAdapter'>
<xs:annotation>
<xs:documentation><![CDATA[
An implementation of {@link PersistenceAdapter} designed for use with a
{@link Journal} and then check pointing asynchronously on a timeout with some
other long term persistent storage.
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name='journal' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='longTermPersistence' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:amqPersistenceAdapter'/>
<xs:element ref='tns:jdbcPersistenceAdapter'/>
<xs:element ref='tns:journalPersistenceAdapter'/>
<xs:element ref='tns:kahaPersistenceAdapter'/>
<xs:element ref='tns:memoryPersistenceAdapter'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='taskRunnerFactory' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='usageManager' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:systemUsage'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
</xs:sequence>
<xs:attribute name='brokerName' type='xs:string'/>
<xs:attribute name='directory' type='xs:string'/>
<xs:attribute name='journal' type='xs:string'/>
<xs:attribute name='longTermPersistence' type='xs:string'/>
<xs:attribute name='maxCheckpointMessageAddSize' type='xs:integer'/>
<xs:attribute name='maxCheckpointWorkers' type='xs:integer'/>
<xs:attribute name='taskRunnerFactory' type='xs:string'/>
<xs:attribute name='usageManager' type='xs:string'/>
<xs:attribute name='useExternalMessageReferences' type='xs:boolean'/>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.store.PersistenceAdapterFactoryBean -->
<xs:element name='journaledJDBC'>
<xs:annotation>
<xs:documentation><![CDATA[
Creates a default persistence model using the Journal and JDBC
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name='adapter' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:axionJDBCAdapter'/>
<xs:element ref='tns:blobJDBCAdapter'/>
<xs:element ref='tns:bytesJDBCAdapter'/>
<xs:element ref='tns:db2JDBCAdapter'/>
<xs:element ref='tns:defaultJDBCAdapter'/>
<xs:element ref='tns:imageBasedJDBCAdaptor'/>
<xs:element ref='tns:informixJDBCAdapter'/>
<xs:element ref='tns:oracleJDBCAdapter'/>
<xs:element ref='tns:streamJDBCAdapter'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='dataSource' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='jdbcAdapter' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:jdbcPersistenceAdapter'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='journal' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='statements' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:statements'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='taskRunnerFactory' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
</xs:sequence>
<xs:attribute name='adapter' type='xs:string'/>
<xs:attribute name='createTablesOnStartup' type='xs:boolean'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets whether or not tables are created on startup
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='dataDirectory' type='xs:string'/>
<xs:attribute name='dataDirectoryFile' type='xs:string'/>
<xs:attribute name='dataSource' type='xs:string'/>
<xs:attribute name='jdbcAdapter' type='xs:string'/>
<xs:attribute name='journal' type='xs:string'/>
<xs:attribute name='journalArchiveDirectory' type='xs:string'/>
<xs:attribute name='journalLogFileSize' type='xs:integer'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the size of the journal log files
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='journalLogFiles' type='xs:integer'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the number of journal log files to use
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='journalThreadPriority' type='xs:integer'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the thread priority of the journal thread
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='statements' type='xs:string'/>
<xs:attribute name='taskRunnerFactory' type='xs:string'/>
<xs:attribute name='useDatabaseLock' type='xs:boolean'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets whether or not an exclusive database lock should be used to enable
JDBC Master/Slave. Enabled by default.
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='useJournal' type='xs:boolean'>
<xs:annotation>
<xs:documentation><![CDATA[
Enables or disables the use of the journal. The default is to use the
journal
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='useQuickJournal' type='xs:boolean'>
<xs:annotation>
<xs:documentation><![CDATA[
Enables or disables the use of quick journal, which keeps messages in the
journal and just stores a reference to the messages in JDBC. Defaults to
false so that messages actually reside long term in the JDBC database.
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.store.kahadaptor.KahaPersistenceAdapter -->
<xs:element name='kahaPersistenceAdapter'>
<xs:complexType>
<xs:sequence>
<xs:element name='size' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='usageManager' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:systemUsage'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
</xs:sequence>
<xs:attribute name='brokerName' type='xs:string'/>
<xs:attribute name='directory' type='xs:string'/>
<xs:attribute name='maxDataFileLength' type='xs:long'/>
<xs:attribute name='persistentIndex' type='xs:boolean'/>
<xs:attribute name='size' type='xs:string'/>
<xs:attribute name='usageManager' type='xs:string'/>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.security.LDAPAuthorizationMap -->
<xs:element name='lDAPAuthorizationMap'>
<xs:annotation>
<xs:documentation><![CDATA[
An {@link AuthorizationMap} which uses LDAP
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name='context' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='options' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='unbounded'><xs:any minOccurs='0' maxOccurs='unbounded'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='queueSearchMatchingFormat' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='topicSearchMatchingFormat' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
</xs:sequence>
<xs:attribute name='adminAttribute' type='xs:string'/>
<xs:attribute name='adminBase' type='xs:string'/>
<xs:attribute name='authentication' type='xs:string'/>
<xs:attribute name='connectionPassword' type='xs:string'/>
<xs:attribute name='connectionProtocol' type='xs:string'/>
<xs:attribute name='connectionURL' type='xs:string'/>
<xs:attribute name='connectionUsername' type='xs:string'/>
<xs:attribute name='context' type='xs:string'/>
<xs:attribute name='initialContextFactory' type='xs:string'/>
<xs:attribute name='options' type='xs:string'/>
<xs:attribute name='queueSearchMatchingFormat' type='xs:string'/>
<xs:attribute name='queueSearchSubtreeBool' type='xs:boolean'/>
<xs:attribute name='readAttribute' type='xs:string'/>
<xs:attribute name='readBase' type='xs:string'/>
<xs:attribute name='topicSearchMatchingFormat' type='xs:string'/>
<xs:attribute name='topicSearchSubtreeBool' type='xs:boolean'/>
<xs:attribute name='writeAttribute' type='xs:string'/>
<xs:attribute name='writeBase' type='xs:string'/>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.broker.region.policy.LastImageSubscriptionRecoveryPolicy -->
<xs:element name='lastImageSubscriptionRecoveryPolicy'>
<xs:annotation>
<xs:documentation><![CDATA[
This implementation of {@link SubscriptionRecoveryPolicy} will only keep the
last message.
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.network.LdapNetworkConnector -->
<xs:element name='ldapNetworkConnector'>
<xs:annotation>
<xs:documentation><![CDATA[
class to create dynamic network connectors listed in an directory
server using the LDAP v3 protocol as defined in RFC 2251, the
entries listed in the directory server must implement the ipHost
and ipService objectClasses as defined in RFC 2307.
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name='brokerService' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:broker'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='connectionFilter' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='durableDestinations' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='unbounded'><xs:any minOccurs='0' maxOccurs='unbounded'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='dynamicallyIncludedDestinations' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='unbounded'><xs:any minOccurs='0' maxOccurs='unbounded'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='excludedDestinations' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='unbounded'><xs:any minOccurs='0' maxOccurs='unbounded'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='staticallyIncludedDestinations' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='unbounded'><xs:any minOccurs='0' maxOccurs='unbounded'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
</xs:sequence>
<xs:attribute name='anonymousAuthentication' type='xs:boolean'>
<xs:annotation>
<xs:documentation><![CDATA[
sets LDAP anonymous authentication access credentials
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='base' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
sets the base LDAP dn used for lookup operations
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='bridgeTempDestinations' type='xs:boolean'/>
<xs:attribute name='brokerName' type='xs:string'/>
<xs:attribute name='brokerService' type='xs:string'/>
<xs:attribute name='conduitSubscriptions' type='xs:boolean'/>
<xs:attribute name='connectionFilter' type='xs:string'/>
<xs:attribute name='decreaseNetworkConsumerPriority' type='xs:boolean'/>
<xs:attribute name='destinationFilter' type='xs:string'/>
<xs:attribute name='dispatchAsync' type='xs:boolean'/>
<xs:attribute name='duplex' type='xs:boolean'/>
<xs:attribute name='dynamicOnly' type='xs:boolean'/>
<xs:attribute name='localUri' type='xs:string'/>
<xs:attribute name='name' type='xs:string'/>
<xs:attribute name='networkTTL' type='xs:integer'/>
<xs:attribute name='objectName' type='xs:string'/>
<xs:attribute name='password' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
sets the LDAP password for access credentials
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='prefetchSize' type='xs:integer'/>
<xs:attribute name='searchEventListener' type='xs:boolean'>
<xs:annotation>
<xs:documentation><![CDATA[
enables/disable a persistent search to the LDAP server as defined
in draft-ietf-ldapext-psearch-03.txt (2.16.840.1.113730.3.4.3)
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='searchFilter' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
sets the LDAP search filter as defined in RFC 2254
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='searchScope' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
sets the LDAP search scope
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='uri' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
returns the next URI from the configured list
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='user' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
sets the LDAP user for access credentials
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='userName' type='xs:string'/>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.broker.util.LoggingBrokerPlugin -->
<xs:element name='loggingBrokerPlugin'>
<xs:annotation>
<xs:documentation><![CDATA[
A simple Broker interceptor which allows you to enable/disable logging.
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name='ackLog' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='adminConnectionContext' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='log' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='next' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:loggingBrokerPlugin'/>
<xs:element ref='tns:multicastTraceBrokerPlugin'/>
<xs:element ref='tns:timeStampingBrokerPlugin'/>
<xs:element ref='tns:udpTraceBrokerPlugin'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='sendLog' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
</xs:sequence>
<xs:attribute name='ackLog' type='xs:string'/>
<xs:attribute name='adminConnectionContext' type='xs:string'/>
<xs:attribute name='log' type='xs:string'/>
<xs:attribute name='next' type='xs:string'/>
<xs:attribute name='sendLog' type='xs:string'/>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.broker.jmx.ManagementContext -->
<xs:element name='managementContext'>
<xs:annotation>
<xs:documentation><![CDATA[
A Flow provides different dispatch policies within the NMR
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name='MBeanServer' minOccurs='0' maxOccurs='1'>
<xs:annotation>
<xs:documentation><![CDATA[
Get the MBeanServer
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='server' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
</xs:sequence>
<xs:attribute name='MBeanServer' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
Get the MBeanServer
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='connectorPath' type='xs:string'/>
<xs:attribute name='connectorPort' type='xs:integer'/>
<xs:attribute name='createConnector' type='xs:boolean'/>
<xs:attribute name='createMBeanServer' type='xs:boolean'/>
<xs:attribute name='findTigerMbeanServer' type='xs:boolean'>
<xs:annotation>
<xs:documentation><![CDATA[
Enables/disables the searching for the Java 5 platform MBeanServer
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='jmxDomainName' type='xs:string'/>
<xs:attribute name='rmiServerPort' type='xs:integer'/>
<xs:attribute name='server' type='xs:string'/>
<xs:attribute name='useMBeanServer' type='xs:boolean'/>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.broker.ft.MasterConnector -->
<xs:element name='masterConnector'>
<xs:annotation>
<xs:documentation><![CDATA[
Connects a Slave Broker to a Master when using <a
href="http://activemq.apache.org/masterslave.html">Master Slave</a> for High
Availability of messages.
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name='brokerService' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:broker'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
</xs:sequence>
<xs:attribute name='brokerService' type='xs:string'/>
<xs:attribute name='localURI' type='xs:string'/>
<xs:attribute name='password' type='xs:string'/>
<xs:attribute name='remoteURI' type='xs:string'/>
<xs:attribute name='remoteUri' type='xs:string'/>
<xs:attribute name='userName' type='xs:string'/>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.store.memory.MemoryPersistenceAdapter -->
<xs:element name='memoryPersistenceAdapter'>
<xs:complexType>
<xs:sequence>
<xs:element name='usageManager' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:systemUsage'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
</xs:sequence>
<xs:attribute name='brokerName' type='xs:string'/>
<xs:attribute name='directory' type='xs:string'/>
<xs:attribute name='usageManager' type='xs:string'/>
<xs:attribute name='useExternalMessageReferences' type='xs:boolean'/>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.usage.MemoryUsage -->
<xs:element name='memoryUsage'>
<xs:annotation>
<xs:documentation><![CDATA[
Used to keep track of how much of something is being used so that a
productive working set usage can be controlled. Main use case is manage
memory usage.
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name='limiter' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:defaultUsageCapacity'/>
<xs:element ref='tns:usageCapacity'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='parent' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
</xs:sequence>
<xs:attribute name='limit' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the memory limit in bytes. Setting the limit in bytes will set the
usagePortion to 0 since the UsageManager is not going to be portion based
off the parent. When set using XBean, you can use values such as: "20
mb", "1024 kb", or "1 gb"
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='limiter' type='xs:string'/>
<xs:attribute name='name' type='xs:string'/>
<xs:attribute name='parent' type='xs:string'/>
<xs:attribute name='percentUsage' type='xs:integer'/>
<xs:attribute name='percentUsageMinDelta' type='xs:integer'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the minimum number of percentage points the usage has to change
before a UsageListener event is fired by the manager.
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='pollingTime' type='xs:integer'/>
<xs:attribute name='portion' type='xs:float'/>
<xs:attribute name='usage' type='xs:long'/>
<xs:attribute name='usagePortion' type='xs:float'/>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.broker.region.group.MessageGroupHashBucketFactory -->
<xs:element name='messageGroupHashBucketFactory'>
<xs:annotation>
<xs:documentation><![CDATA[
A factory to create instances of {@link SimpleMessageGroupMap} when
implementing the <a
href="http://activemq.apache.org/message-groups.html">Message
Groups</a> functionality.
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:attribute name='bucketCount' type='xs:integer'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the number of hash buckets to use for the message group
functionality. This is only applicable to using message groups to
parallelize processing of a queue while preserving order across an
individual JMSXGroupID header value. This value sets the number of hash
buckets that will be used (i.e. the maximum possible concurrency).
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.broker.region.virtual.MirroredQueue -->
<xs:element name='mirroredQueue'>
<xs:annotation>
<xs:documentation><![CDATA[
Creates <a href="http://activemq.org/site/mirrored-queues.html">Mirrored
Queue</a> using a prefix and postfix to define the topic name on which to mirror the queue to.
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name='brokerService' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:broker'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
</xs:sequence>
<xs:attribute name='brokerService' type='xs:string'/>
<xs:attribute name='copyMessage' type='xs:boolean'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets whether a copy of the message will be sent to each destination.
Defaults to true so that the forward destination is set as the
destination of the message
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='postfix' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets any postix used to identify the queue consumers
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='prefix' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the prefix wildcard used to identify the queue consumers for a given
topic
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.network.MulticastNetworkConnector -->
<xs:element name='multicastNetworkConnector'>
<xs:annotation>
<xs:documentation><![CDATA[
A network connector which uses some kind of multicast-like transport that
communicates with potentially many remote brokers over a single logical
{@link Transport} instance such as when using multicast.
This implementation does not depend on multicast at all; any other group
based transport could be used.
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name='bridge' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:compositeDemandForwardingBridge'/>
<xs:element ref='tns:demandForwardingBridge'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='brokerService' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:broker'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='connectionFilter' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='durableDestinations' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='unbounded'><xs:any minOccurs='0' maxOccurs='unbounded'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='dynamicallyIncludedDestinations' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='unbounded'><xs:any minOccurs='0' maxOccurs='unbounded'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='excludedDestinations' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='unbounded'><xs:any minOccurs='0' maxOccurs='unbounded'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='localTransport' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='remoteTransport' minOccurs='0' maxOccurs='1'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the remote transport implementation
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='staticallyIncludedDestinations' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='unbounded'><xs:any minOccurs='0' maxOccurs='unbounded'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
</xs:sequence>
<xs:attribute name='bridge' type='xs:string'/>
<xs:attribute name='bridgeTempDestinations' type='xs:boolean'/>
<xs:attribute name='brokerName' type='xs:string'/>
<xs:attribute name='brokerService' type='xs:string'/>
<xs:attribute name='conduitSubscriptions' type='xs:boolean'/>
<xs:attribute name='connectionFilter' type='xs:string'/>
<xs:attribute name='decreaseNetworkConsumerPriority' type='xs:boolean'/>
<xs:attribute name='destinationFilter' type='xs:string'/>
<xs:attribute name='dispatchAsync' type='xs:boolean'/>
<xs:attribute name='duplex' type='xs:boolean'/>
<xs:attribute name='dynamicOnly' type='xs:boolean'/>
<xs:attribute name='localTransport' type='xs:string'/>
<xs:attribute name='localUri' type='xs:string'/>
<xs:attribute name='name' type='xs:string'/>
<xs:attribute name='networkTTL' type='xs:integer'/>
<xs:attribute name='objectName' type='xs:string'/>
<xs:attribute name='password' type='xs:string'/>
<xs:attribute name='prefetchSize' type='xs:integer'/>
<xs:attribute name='remoteTransport' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the remote transport implementation
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='remoteURI' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the remote transport URI to some group transport like
<code>multicast://address:port</code>
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='userName' type='xs:string'/>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.broker.util.MulticastTraceBrokerPlugin -->
<xs:element name='multicastTraceBrokerPlugin'>
<xs:annotation>
<xs:documentation><![CDATA[
A Broker interceptor which allows you to trace all operations to a Multicast
socket.
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name='address' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='adminConnectionContext' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='next' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:loggingBrokerPlugin'/>
<xs:element ref='tns:multicastTraceBrokerPlugin'/>
<xs:element ref='tns:timeStampingBrokerPlugin'/>
<xs:element ref='tns:udpTraceBrokerPlugin'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='wireFormat' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='wireFormatFactory' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
</xs:sequence>
<xs:attribute name='address' type='xs:string'/>
<xs:attribute name='adminConnectionContext' type='xs:string'/>
<xs:attribute name='broadcast' type='xs:boolean'/>
<xs:attribute name='destination' type='xs:string'/>
<xs:attribute name='maxTraceDatagramSize' type='xs:integer'/>
<xs:attribute name='next' type='xs:string'/>
<xs:attribute name='timeToLive' type='xs:integer'/>
<xs:attribute name='wireFormat' type='xs:string'/>
<xs:attribute name='wireFormatFactory' type='xs:string'/>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.network.DiscoveryNetworkConnector -->
<xs:element name='networkConnector'>
<xs:annotation>
<xs:documentation><![CDATA[
A network connector which uses a discovery agent to detect the remote brokers
available and setup a connection to each available remote broker
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name='brokerService' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:broker'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='connectionFilter' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='discoveryAgent' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='durableDestinations' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='unbounded'><xs:any minOccurs='0' maxOccurs='unbounded'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='dynamicallyIncludedDestinations' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='unbounded'><xs:any minOccurs='0' maxOccurs='unbounded'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='excludedDestinations' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='unbounded'><xs:any minOccurs='0' maxOccurs='unbounded'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='staticallyIncludedDestinations' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='unbounded'><xs:any minOccurs='0' maxOccurs='unbounded'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
</xs:sequence>
<xs:attribute name='bridgeTempDestinations' type='xs:boolean'/>
<xs:attribute name='brokerName' type='xs:string'/>
<xs:attribute name='brokerService' type='xs:string'/>
<xs:attribute name='conduitSubscriptions' type='xs:boolean'/>
<xs:attribute name='connectionFilter' type='xs:string'/>
<xs:attribute name='decreaseNetworkConsumerPriority' type='xs:boolean'/>
<xs:attribute name='destinationFilter' type='xs:string'/>
<xs:attribute name='discoveryAgent' type='xs:string'/>
<xs:attribute name='discoveryURI' type='xs:string'/>
<xs:attribute name='dispatchAsync' type='xs:boolean'/>
<xs:attribute name='duplex' type='xs:boolean'/>
<xs:attribute name='dynamicOnly' type='xs:boolean'/>
<xs:attribute name='localUri' type='xs:string'/>
<xs:attribute name='name' type='xs:string'/>
<xs:attribute name='networkTTL' type='xs:integer'/>
<xs:attribute name='objectName' type='xs:string'/>
<xs:attribute name='password' type='xs:string'/>
<xs:attribute name='prefetchSize' type='xs:integer'/>
<xs:attribute name='uri' type='xs:string'/>
<xs:attribute name='userName' type='xs:string'/>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.broker.region.policy.NoSubscriptionRecoveryPolicy -->
<xs:element name='noSubscriptionRecoveryPolicy'>
<xs:annotation>
<xs:documentation><![CDATA[
This SubscriptionRecoveryPolicy disable recovery of messages.
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.broker.region.policy.OldestMessageEvictionStrategy -->
<xs:element name='oldestMessageEvictionStrategy'>
<xs:annotation>
<xs:documentation><![CDATA[
An eviction strategy which evicts the oldest message first (which is the
default).
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:attribute name='evictExpiredMessagesHighWatermark' type='xs:integer'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the high water mark on which we will eagerly evict expired messages from RAM
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.broker.region.policy.OldestMessageWithLowestPriorityEvictionStrategy -->
<xs:element name='oldestMessageWithLowestPriorityEvictionStrategy'>
<xs:annotation>
<xs:documentation><![CDATA[
An eviction strategy which evicts the oldest message with the lowest priority first.
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:attribute name='evictExpiredMessagesHighWatermark' type='xs:integer'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the high water mark on which we will eagerly evict expired messages from RAM
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.store.jdbc.adapter.OracleJDBCAdapter -->
<xs:element name='oracleJDBCAdapter'>
<xs:annotation>
<xs:documentation><![CDATA[
Implements all the default JDBC operations that are used
by the JDBCPersistenceAdapter.
<p/>
Subclassing is encouraged to override the default
implementation of methods to account for differences
in JDBC Driver implementations.
<p/>
The JDBCAdapter inserts and extracts BLOB data using the
getBytes()/setBytes() operations.
<p/>
The databases/JDBC drivers that use this adapter are:
<ul>
<li></li>
</ul>
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name='statements' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:statements'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
</xs:sequence>
<xs:attribute name='batchStatments' type='xs:boolean'/>
<xs:attribute name='statements' type='xs:string'/>
<xs:attribute name='useExternalMessageReferences' type='xs:boolean'/>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.network.jms.OutboundQueueBridge -->
<xs:element name='outboundQueueBridge'>
<xs:annotation>
<xs:documentation><![CDATA[
Create an Outbound Queue Bridge
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name='consumer' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='consumerConnection' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='consumerQueue' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:queue'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='jmsConnector' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:jmsQueueConnector'/>
<xs:element ref='tns:jmsTopicConnector'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='jmsMessageConvertor' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:simpleJmsMessageConvertor'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='producerConnection' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='producerQueue' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:queue'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
</xs:sequence>
<xs:attribute name='consumer' type='xs:string'/>
<xs:attribute name='consumerConnection' type='xs:string'/>
<xs:attribute name='consumerQueue' type='xs:string'/>
<xs:attribute name='doHandleReplyTo' type='xs:boolean'/>
<xs:attribute name='jmsConnector' type='xs:string'/>
<xs:attribute name='jmsMessageConvertor' type='xs:string'/>
<xs:attribute name='localQueueName' type='xs:string'/>
<xs:attribute name='maximumRetries' type='xs:integer'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the maximum number of retries if a send fails before closing the
bridge
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='outboundQueueName' type='xs:string'/>
<xs:attribute name='producerConnection' type='xs:string'/>
<xs:attribute name='producerQueue' type='xs:string'/>
<xs:attribute name='selector' type='xs:string'/>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.network.jms.OutboundTopicBridge -->
<xs:element name='outboundTopicBridge'>
<xs:annotation>
<xs:documentation><![CDATA[
Create an Outbound Topic Bridge
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name='consumer' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='consumerConnection' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='consumerTopic' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:topic'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='jmsConnector' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:jmsQueueConnector'/>
<xs:element ref='tns:jmsTopicConnector'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='jmsMessageConvertor' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:simpleJmsMessageConvertor'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='producerConnection' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='producerTopic' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:topic'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
</xs:sequence>
<xs:attribute name='consumer' type='xs:string'/>
<xs:attribute name='consumerConnection' type='xs:string'/>
<xs:attribute name='consumerName' type='xs:string'/>
<xs:attribute name='consumerTopic' type='xs:string'/>
<xs:attribute name='doHandleReplyTo' type='xs:boolean'/>
<xs:attribute name='jmsConnector' type='xs:string'/>
<xs:attribute name='jmsMessageConvertor' type='xs:string'/>
<xs:attribute name='localTopicName' type='xs:string'/>
<xs:attribute name='maximumRetries' type='xs:integer'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the maximum number of retries if a send fails before closing the
bridge
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='outboundTopicName' type='xs:string'/>
<xs:attribute name='producerConnection' type='xs:string'/>
<xs:attribute name='producerTopic' type='xs:string'/>
<xs:attribute name='selector' type='xs:string'/>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.broker.region.policy.PolicyEntry -->
<xs:element name='policyEntry'>
<xs:annotation>
<xs:documentation><![CDATA[
Represents an entry in a {@link PolicyMap} for assigning policies to a
specific destination or a hierarchical wildcard area of destinations.
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name='deadLetterStrategy' minOccurs='0' maxOccurs='1'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the policy used to determine which dead letter queue destination
should be used
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:individualDeadLetterStrategy'/>
<xs:element ref='tns:sharedDeadLetterStrategy'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='destination' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:queue'/>
<xs:element ref='tns:topic'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='dispatchPolicy' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:roundRobinDispatchPolicy'/>
<xs:element ref='tns:simpleDispatchPolicy'/>
<xs:element ref='tns:strictOrderDispatchPolicy'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='messageEvictionStrategy' minOccurs='0' maxOccurs='1'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the eviction strategy used to decide which message to evict when the
slow consumer needs to discard messages
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:oldestMessageEvictionStrategy'/>
<xs:element ref='tns:oldestMessageWithLowestPriorityEvictionStrategy'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='messageGroupMapFactory' minOccurs='0' maxOccurs='1'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the factory used to create new instances of {MessageGroupMap} used
to implement the <a
href="http://activemq.apache.org/message-groups.html">Message Groups</a>
functionality.
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:messageGroupHashBucketFactory'/>
<xs:element ref='tns:simpleMessageGroupMapFactory'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='pendingDurableSubscriberPolicy' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:fileDurableSubscriberCursor'/>
<xs:element ref='tns:storeDurableSubscriberCursor'/>
<xs:element ref='tns:vmDurableCursor'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='pendingMessageLimitStrategy' minOccurs='0' maxOccurs='1'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the strategy to calculate the maximum number of messages that are
allowed to be pending on consumers (in addition to their prefetch sizes).
Once the limit is reached, non-durable topics can then start discarding
old messages. This allows us to keep dispatching messages to slow
consumers while not blocking fast consumers and discarding the messages
oldest first.
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:constantPendingMessageLimitStrategy'/>
<xs:element ref='tns:prefetchRatePendingMessageLimitStrategy'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='pendingQueuePolicy' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:fileQueueCursor'/>
<xs:element ref='tns:storeCursor'/>
<xs:element ref='tns:vmQueueCursor'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='pendingSubscriberPolicy' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:fileCursor'/>
<xs:element ref='tns:vmCursor'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='subscriptionRecoveryPolicy' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:fixedCountSubscriptionRecoveryPolicy'/>
<xs:element ref='tns:fixedSizedSubscriptionRecoveryPolicy'/>
<xs:element ref='tns:lastImageSubscriptionRecoveryPolicy'/>
<xs:element ref='tns:noSubscriptionRecoveryPolicy'/>
<xs:element ref='tns:queryBasedSubscriptionRecoveryPolicy'/>
<xs:element ref='tns:timedSubscriptionRecoveryPolicy'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
</xs:sequence>
<xs:attribute name='deadLetterStrategy' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the policy used to determine which dead letter queue destination
should be used
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='destination' type='xs:string'/>
<xs:attribute name='dispatchPolicy' type='xs:string'/>
<xs:attribute name='enableAudit' type='xs:boolean'/>
<xs:attribute name='lazyDispatch' type='xs:boolean'/>
<xs:attribute name='maxAuditDepth' type='xs:integer'/>
<xs:attribute name='maxPageSize' type='xs:integer'/>
<xs:attribute name='maxProducersToAudit' type='xs:integer'/>
<xs:attribute name='maxQueueAuditDepth' type='xs:integer'/>
<xs:attribute name='memoryLimit' type='xs:string'/>
<xs:attribute name='messageEvictionStrategy' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the eviction strategy used to decide which message to evict when the
slow consumer needs to discard messages
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='messageGroupMapFactory' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the factory used to create new instances of {MessageGroupMap} used
to implement the <a
href="http://activemq.apache.org/message-groups.html">Message Groups</a>
functionality.
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='minimumMessageSize' type='xs:long'/>
<xs:attribute name='optimizedDispatch' type='xs:boolean'/>
<xs:attribute name='pendingDurableSubscriberPolicy' type='xs:string'/>
<xs:attribute name='pendingMessageLimitStrategy' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the strategy to calculate the maximum number of messages that are
allowed to be pending on consumers (in addition to their prefetch sizes).
Once the limit is reached, non-durable topics can then start discarding
old messages. This allows us to keep dispatching messages to slow
consumers while not blocking fast consumers and discarding the messages
oldest first.
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='pendingQueuePolicy' type='xs:string'/>
<xs:attribute name='pendingSubscriberPolicy' type='xs:string'/>
<xs:attribute name='producerFlowControl' type='xs:boolean'/>
<xs:attribute name='queue' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
A helper method to set the destination from a configuration file
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='sendAdvisoryIfNoConsumers' type='xs:boolean'>
<xs:annotation>
<xs:documentation><![CDATA[
Sends an advisory message if a non-persistent message is sent and there
are no active consumers
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='strictOrderDispatch' type='xs:boolean'/>
<xs:attribute name='subscriptionRecoveryPolicy' type='xs:string'/>
<xs:attribute name='topic' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
A helper method to set the destination from a configuration file
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='useCache' type='xs:boolean'/>
<xs:attribute name='useConsumerPriority' type='xs:boolean'/>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.broker.region.policy.PolicyMap -->
<xs:element name='policyMap'>
<xs:annotation>
<xs:documentation><![CDATA[
Represents a destination based configuration of policies so that individual
destinations or wildcard hierarchies of destinations can be configured using
different policies.
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name='defaultEntry' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:policyEntry'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='entries' minOccurs='0' maxOccurs='1'>
<xs:annotation>
<xs:documentation><![CDATA[
A helper method to allow the destination map to be populated from a
dependency injection framework such as Spring
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='unbounded'><xs:any minOccurs='0' maxOccurs='unbounded'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='policyEntries' minOccurs='0' maxOccurs='1'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the individual entries on the policy map
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='unbounded'><xs:any minOccurs='0' maxOccurs='unbounded'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
</xs:sequence>
<xs:attribute name='defaultEntry' type='xs:string'/>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.ActiveMQPrefetchPolicy -->
<xs:element name='prefetchPolicy'>
<xs:annotation>
<xs:documentation><![CDATA[
Defines the prefetch message policies for different types of consumers
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:attribute name='all' type='xs:integer'/>
<xs:attribute name='durableTopicPrefetch' type='xs:integer'/>
<xs:attribute name='inputStreamPrefetch' type='xs:integer'/>
<xs:attribute name='maximumPendingMessageLimit' type='xs:integer'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets how many messages a broker will keep around, above the prefetch
limit, for non-durable topics before starting to discard older messages.
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='optimizeDurableTopicPrefetch' type='xs:integer'/>
<xs:attribute name='queueBrowserPrefetch' type='xs:integer'/>
<xs:attribute name='queuePrefetch' type='xs:integer'/>
<xs:attribute name='topicPrefetch' type='xs:integer'/>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.broker.region.policy.PrefetchRatePendingMessageLimitStrategy -->
<xs:element name='prefetchRatePendingMessageLimitStrategy'>
<xs:annotation>
<xs:documentation><![CDATA[
This PendingMessageLimitStrategy sets the maximum pending message limit value to be
a multiplier of the prefetch limit of the subscription.
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:attribute name='multiplier' type='xs:double'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the multiplier of the prefetch size which will be used to define the maximum number of pending
messages for non-durable topics before messages are discarded.
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.proxy.ProxyConnector -->
<xs:element name='proxyConnector'>
<xs:complexType>
<xs:sequence>
<xs:element name='server' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
</xs:sequence>
<xs:attribute name='bind' type='xs:string'/>
<xs:attribute name='localUri' type='xs:string'/>
<xs:attribute name='name' type='xs:string'/>
<xs:attribute name='remote' type='xs:string'/>
<xs:attribute name='server' type='xs:string'/>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.broker.region.policy.QueryBasedSubscriptionRecoveryPolicy -->
<xs:element name='queryBasedSubscriptionRecoveryPolicy'>
<xs:annotation>
<xs:documentation><![CDATA[
This implementation of {@link SubscriptionRecoveryPolicy} will perform a user
specific query mechanism to load any messages they may have missed.
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name='query' minOccurs='0' maxOccurs='1'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the query strategy to load initial messages
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
</xs:sequence>
<xs:attribute name='query' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the query strategy to load initial messages
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.command.ActiveMQQueue -->
<xs:element name='queue'>
<xs:annotation>
<xs:documentation><![CDATA[
An ActiveMQ Queue
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name='compositeDestinations' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='unbounded'>
<xs:element ref='tns:queue'/>
<xs:element ref='tns:topic'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='properties' minOccurs='0' maxOccurs='1'>
<xs:annotation>
<xs:documentation><![CDATA[
Get the properties from this instance for storing in JNDI
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
</xs:sequence>
<xs:attribute name='name' type='xs:string'/>
<xs:attribute name='physicalName' type='xs:string'/>
<xs:attribute name='properties' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
Get the properties from this instance for storing in JNDI
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.broker.region.QueueDispatchSelector -->
<xs:element name='queueDispatchSelector'>
<xs:annotation>
<xs:documentation><![CDATA[
Queue dispatch policy that determines if a message can be sent to a subscription
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name='destination' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:queue'/>
<xs:element ref='tns:topic'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='exclusiveConsumer' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
</xs:sequence>
<xs:attribute name='destination' type='xs:string'/>
<xs:attribute name='exclusiveConsumer' type='xs:string'/>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.RedeliveryPolicy -->
<xs:element name='redeliveryPolicy'>
<xs:annotation>
<xs:documentation><![CDATA[
Configuration options used to control how messages are re-delivered when they
are rolled back.
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:attribute name='backOffMultiplier' type='xs:short'/>
<xs:attribute name='collisionAvoidancePercent' type='xs:short'/>
<xs:attribute name='initialRedeliveryDelay' type='xs:long'/>
<xs:attribute name='maximumRedeliveries' type='xs:integer'/>
<xs:attribute name='useCollisionAvoidance' type='xs:boolean'/>
<xs:attribute name='useExponentialBackOff' type='xs:boolean'/>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.broker.region.policy.RoundRobinDispatchPolicy -->
<xs:element name='roundRobinDispatchPolicy'>
<xs:annotation>
<xs:documentation><![CDATA[
Simple dispatch policy that sends a message to every subscription that
matches the message.
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.broker.region.policy.SharedDeadLetterStrategy -->
<xs:element name='sharedDeadLetterStrategy'>
<xs:annotation>
<xs:documentation><![CDATA[
A default implementation of {@link DeadLetterStrategy} which uses
a constant destination.
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name='deadLetterQueue' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:queue'/>
<xs:element ref='tns:topic'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
</xs:sequence>
<xs:attribute name='deadLetterQueue' type='xs:string'/>
<xs:attribute name='processExpired' type='xs:boolean'/>
<xs:attribute name='processNonPersistent' type='xs:boolean'/>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.security.SimpleAuthenticationPlugin -->
<xs:element name='simpleAuthenticationPlugin'>
<xs:annotation>
<xs:documentation><![CDATA[
Provides a simple authentication plugin
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name='userGroups' minOccurs='0' maxOccurs='1'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the groups a user is in. The key is the user name and the value is a
Set of groups
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='unbounded'><xs:any minOccurs='0' maxOccurs='unbounded'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='userPasswords' minOccurs='0' maxOccurs='1'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the map indexed by user name with the value the password
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='unbounded'><xs:any minOccurs='0' maxOccurs='unbounded'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='users' minOccurs='0' maxOccurs='1'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets individual users for authentication
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='unbounded'><xs:any minOccurs='0' maxOccurs='unbounded'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
</xs:sequence>
<xs:attribute name='userGroups' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the groups a user is in. The key is the user name and the value is a
Set of groups
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='userPasswords' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the map indexed by user name with the value the password
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.security.SimpleAuthorizationMap -->
<xs:element name='simpleAuthorizationMap'>
<xs:annotation>
<xs:documentation><![CDATA[
An AuthorizationMap which is configured with individual DestinationMaps for
each operation.
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name='adminACLs' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:authorizationMap'/>
<xs:element ref='tns:policyMap'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='readACLs' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:authorizationMap'/>
<xs:element ref='tns:policyMap'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='tempDestinationAuthorizationEntry' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:tempDestinationAuthorizationEntry'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='writeACLs' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:authorizationMap'/>
<xs:element ref='tns:policyMap'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
</xs:sequence>
<xs:attribute name='adminACLs' type='xs:string'/>
<xs:attribute name='readACLs' type='xs:string'/>
<xs:attribute name='tempDestinationAuthorizationEntry' type='xs:string'/>
<xs:attribute name='writeACLs' type='xs:string'/>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.broker.region.policy.SimpleDispatchPolicy -->
<xs:element name='simpleDispatchPolicy'>
<xs:annotation>
<xs:documentation><![CDATA[
Simple dispatch policy that sends a message to every subscription that
matches the message.
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.broker.region.policy.SimpleDispatchSelector -->
<xs:element name='simpleDispatchSelector'>
<xs:annotation>
<xs:documentation><![CDATA[
Simple dispatch policy that determines if a message can be sent to a subscription
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name='destination' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:queue'/>
<xs:element ref='tns:topic'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
</xs:sequence>
<xs:attribute name='destination' type='xs:string'/>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.network.jms.SimpleJmsMessageConvertor -->
<xs:element name='simpleJmsMessageConvertor'>
<xs:annotation>
<xs:documentation><![CDATA[
Converts Message from one JMS to another
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name='connection' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
</xs:sequence>
<xs:attribute name='connection' type='xs:string'/>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.broker.region.group.SimpleMessageGroupMapFactory -->
<xs:element name='simpleMessageGroupMapFactory'>
<xs:annotation>
<xs:documentation><![CDATA[
A factory to create instances of {@link SimpleMessageGroupMap} when implementing the
<a href="http://activemq.apache.org/message-groups.html">Message Groups</a> functionality.
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.store.jdbc.Statements -->
<xs:element name='statements'>
<xs:complexType>
<xs:sequence>
<xs:element name='createSchemaStatements' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='unbounded'><xs:any minOccurs='0' maxOccurs='unbounded'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='dropSchemaStatements' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='unbounded'><xs:any minOccurs='0' maxOccurs='unbounded'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
</xs:sequence>
<xs:attribute name='addMessageStatement' type='xs:string'/>
<xs:attribute name='binaryDataType' type='xs:string'/>
<xs:attribute name='containerNameDataType' type='xs:string'/>
<xs:attribute name='createDurableSubStatement' type='xs:string'/>
<xs:attribute name='deleteOldMessagesStatement' type='xs:string'/>
<xs:attribute name='deleteSubscriptionStatement' type='xs:string'/>
<xs:attribute name='destinationMessageCountStatement' type='xs:string'/>
<xs:attribute name='durableSubAcksTableName' type='xs:string'/>
<xs:attribute name='durableSubscriberMessageCountStatement' type='xs:string'/>
<xs:attribute name='findAllDestinationsStatement' type='xs:string'/>
<xs:attribute name='findAllDurableSubMessagesStatement' type='xs:string'/>
<xs:attribute name='findAllDurableSubsStatement' type='xs:string'/>
<xs:attribute name='findAllMessagesStatement' type='xs:string'/>
<xs:attribute name='findDurableSubMessagesStatement' type='xs:string'/>
<xs:attribute name='findDurableSubStatement' type='xs:string'/>
<xs:attribute name='findLastSequenceIdInAcksStatement' type='xs:string'/>
<xs:attribute name='findLastSequenceIdInMsgsStatement' type='xs:string'/>
<xs:attribute name='findMessageSequenceIdStatement' type='xs:string'/>
<xs:attribute name='findMessageStatement' type='xs:string'/>
<xs:attribute name='findNextMessagesStatement' type='xs:string'/>
<xs:attribute name='lastAckedDurableSubscriberMessageStatement' type='xs:string'/>
<xs:attribute name='lockCreateStatement' type='xs:string'/>
<xs:attribute name='lockTableName' type='xs:string'/>
<xs:attribute name='lockUpdateStatement' type='xs:string'/>
<xs:attribute name='longDataType' type='xs:string'/>
<xs:attribute name='messageTableName' type='xs:string'/>
<xs:attribute name='msgIdDataType' type='xs:string'/>
<xs:attribute name='nextDurableSubscriberMessageStatement' type='xs:string'/>
<xs:attribute name='removeAllMessagesStatement' type='xs:string'/>
<xs:attribute name='removeAllSubscriptionsStatement' type='xs:string'/>
<xs:attribute name='removeMessageStatment' type='xs:string'/>
<xs:attribute name='sequenceDataType' type='xs:string'/>
<xs:attribute name='stringIdDataType' type='xs:string'/>
<xs:attribute name='tablePrefix' type='xs:string'/>
<xs:attribute name='updateLastAckOfDurableSubStatement' type='xs:string'/>
<xs:attribute name='updateMessageStatement' type='xs:string'/>
<xs:attribute name='useExternalMessageReferences' type='xs:boolean'/>
<xs:attribute name='useLockCreateWhereClause' type='xs:boolean'/>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.broker.region.policy.StorePendingQueueMessageStoragePolicy -->
<xs:element name='storeCursor'>
<xs:annotation>
<xs:documentation><![CDATA[
Pending messages
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.broker.region.policy.StorePendingDurableSubscriberMessageStoragePolicy -->
<xs:element name='storeDurableSubscriberCursor'>
<xs:annotation>
<xs:documentation><![CDATA[
Pending messages for a durable
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.usage.StoreUsage -->
<xs:element name='storeUsage'>
<xs:annotation>
<xs:documentation><![CDATA[
Used to keep track of how much of something is being used so that a
productive working set usage can be controlled. Main use case is manage
memory usage.
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name='limiter' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:defaultUsageCapacity'/>
<xs:element ref='tns:usageCapacity'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='parent' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='store' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:amqPersistenceAdapter'/>
<xs:element ref='tns:jdbcPersistenceAdapter'/>
<xs:element ref='tns:journalPersistenceAdapter'/>
<xs:element ref='tns:kahaPersistenceAdapter'/>
<xs:element ref='tns:memoryPersistenceAdapter'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
</xs:sequence>
<xs:attribute name='limit' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the memory limit in bytes. Setting the limit in bytes will set the
usagePortion to 0 since the UsageManager is not going to be portion based
off the parent. When set using XBean, you can use values such as: "20
mb", "1024 kb", or "1 gb"
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='limiter' type='xs:string'/>
<xs:attribute name='name' type='xs:string'/>
<xs:attribute name='parent' type='xs:string'/>
<xs:attribute name='percentUsage' type='xs:integer'/>
<xs:attribute name='percentUsageMinDelta' type='xs:integer'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the minimum number of percentage points the usage has to change
before a UsageListener event is fired by the manager.
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='pollingTime' type='xs:integer'/>
<xs:attribute name='store' type='xs:string'/>
<xs:attribute name='usagePortion' type='xs:float'/>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.store.jdbc.adapter.StreamJDBCAdapter -->
<xs:element name='streamJDBCAdapter'>
<xs:annotation>
<xs:documentation><![CDATA[
This JDBCAdapter inserts and extracts BLOB data using the
setBinaryStream()/getBinaryStream() operations.
The databases/JDBC drivers that use this adapter are:
<ul>
<li>Axion</li>
</ul>
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name='statements' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:statements'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
</xs:sequence>
<xs:attribute name='batchStatments' type='xs:boolean'/>
<xs:attribute name='statements' type='xs:string'/>
<xs:attribute name='useExternalMessageReferences' type='xs:boolean'/>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.broker.region.policy.StrictOrderDispatchPolicy -->
<xs:element name='strictOrderDispatchPolicy'>
<xs:annotation>
<xs:documentation><![CDATA[
Dispatch policy that causes every subscription to see messages in the same
order.
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.usage.SystemUsage -->
<xs:element name='systemUsage'>
<xs:annotation>
<xs:documentation><![CDATA[
Holder for Usage instances for memory, store and temp files Main use case is
manage memory usage.
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name='adapter' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:amqPersistenceAdapter'/>
<xs:element ref='tns:jdbcPersistenceAdapter'/>
<xs:element ref='tns:journalPersistenceAdapter'/>
<xs:element ref='tns:kahaPersistenceAdapter'/>
<xs:element ref='tns:memoryPersistenceAdapter'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='memoryUsage' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:memoryUsage'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='parent' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:systemUsage'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='storeUsage' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:storeUsage'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='tempStore' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='tempUsage' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:tempUsage'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
</xs:sequence>
<xs:attribute name='adapter' type='xs:string'/>
<xs:attribute name='memoryUsage' type='xs:string'/>
<xs:attribute name='name' type='xs:string'/>
<xs:attribute name='parent' type='xs:string'/>
<xs:attribute name='sendFailIfNoSpace' type='xs:boolean'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets whether or not a send() should fail if there is no space free. The
default value is false which means to block the send() method until space
becomes available
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='sendFailIfNoSpaceExplicitySet' type='xs:boolean'/>
<xs:attribute name='storeUsage' type='xs:string'/>
<xs:attribute name='tempStore' type='xs:string'/>
<xs:attribute name='tempUsage' type='xs:string'/>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.security.TempDestinationAuthorizationEntry -->
<xs:element name='tempDestinationAuthorizationEntry'>
<xs:annotation>
<xs:documentation><![CDATA[
Represents an entry in a {@link DefaultAuthorizationMap} for assigning
different operations (read, write, admin) of user roles to a temporary
destination
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name='adminACLs' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='unbounded'><xs:any minOccurs='0' maxOccurs='unbounded'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='destination' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:queue'/>
<xs:element ref='tns:topic'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='readACLs' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='unbounded'><xs:any minOccurs='0' maxOccurs='unbounded'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='writeACLs' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='unbounded'><xs:any minOccurs='0' maxOccurs='unbounded'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
</xs:sequence>
<xs:attribute name='admin' type='xs:string'/>
<xs:attribute name='destination' type='xs:string'/>
<xs:attribute name='groupClass' type='xs:string'/>
<xs:attribute name='queue' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
A helper method to set the destination from a configuration file
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='read' type='xs:string'/>
<xs:attribute name='topic' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
A helper method to set the destination from a configuration file
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='write' type='xs:string'/>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.usage.TempUsage -->
<xs:element name='tempUsage'>
<xs:annotation>
<xs:documentation><![CDATA[
Used to keep track of how much of something is being used so that a
productive working set usage can be controlled. Main use case is manage
memory usage.
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name='limiter' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:defaultUsageCapacity'/>
<xs:element ref='tns:usageCapacity'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='parent' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='store' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
</xs:sequence>
<xs:attribute name='limit' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the memory limit in bytes. Setting the limit in bytes will set the
usagePortion to 0 since the UsageManager is not going to be portion based
off the parent. When set using XBean, you can use values such as: "20
mb", "1024 kb", or "1 gb"
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='limiter' type='xs:string'/>
<xs:attribute name='name' type='xs:string'/>
<xs:attribute name='parent' type='xs:string'/>
<xs:attribute name='percentUsage' type='xs:integer'/>
<xs:attribute name='percentUsageMinDelta' type='xs:integer'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the minimum number of percentage points the usage has to change
before a UsageListener event is fired by the manager.
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='pollingTime' type='xs:integer'/>
<xs:attribute name='store' type='xs:string'/>
<xs:attribute name='usagePortion' type='xs:float'/>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.broker.util.TimeStampingBrokerPlugin -->
<xs:element name='timeStampingBrokerPlugin'>
<xs:annotation>
<xs:documentation><![CDATA[
A Broker interceptor which updates a JMS Client's timestamp on the message
with a broker timestamp. Useful when the clocks on client machines are known
to not be correct and you can only trust the time set on the broker machines.
Enabling this plugin will break JMS compliance since the timestamp that the
producer sees on the messages after as send() will be different from the
timestamp the consumer will observe when he receives the message. This plugin
is not enabled in the default ActiveMQ configuration.
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name='adminConnectionContext' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='next' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:loggingBrokerPlugin'/>
<xs:element ref='tns:multicastTraceBrokerPlugin'/>
<xs:element ref='tns:timeStampingBrokerPlugin'/>
<xs:element ref='tns:udpTraceBrokerPlugin'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
</xs:sequence>
<xs:attribute name='adminConnectionContext' type='xs:string'/>
<xs:attribute name='next' type='xs:string'/>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.broker.region.policy.TimedSubscriptionRecoveryPolicy -->
<xs:element name='timedSubscriptionRecoveryPolicy'>
<xs:annotation>
<xs:documentation><![CDATA[
This implementation of {@link SubscriptionRecoveryPolicy} will keep a timed
buffer of messages around in memory and use that to recover new
subscriptions.
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:attribute name='recoverDuration' type='xs:long'/>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.command.ActiveMQTopic -->
<xs:element name='topic'>
<xs:annotation>
<xs:documentation><![CDATA[
An ActiveMQ Topic
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name='compositeDestinations' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='unbounded'>
<xs:element ref='tns:queue'/>
<xs:element ref='tns:topic'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='properties' minOccurs='0' maxOccurs='1'>
<xs:annotation>
<xs:documentation><![CDATA[
Get the properties from this instance for storing in JNDI
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
</xs:sequence>
<xs:attribute name='name' type='xs:string'/>
<xs:attribute name='physicalName' type='xs:string'/>
<xs:attribute name='properties' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
Get the properties from this instance for storing in JNDI
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.broker.TransportConnector -->
<xs:element name='transportConnector'>
<xs:complexType>
<xs:sequence>
<xs:element name='brokerInfo' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='brokerService' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:broker'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='discoveryAgent' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='messageAuthorizationPolicy' minOccurs='0' maxOccurs='1'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the policy used to decide if the current connection is authorized to
consume a given message
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='server' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='taskRunnerFactory' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
</xs:sequence>
<xs:attribute name='brokerInfo' type='xs:string'/>
<xs:attribute name='brokerService' type='xs:string'/>
<xs:attribute name='connectUri' type='xs:string'/>
<xs:attribute name='disableAsyncDispatch' type='xs:boolean'/>
<xs:attribute name='discoveryAgent' type='xs:string'/>
<xs:attribute name='discoveryUri' type='xs:string'/>
<xs:attribute name='enableStatusMonitor' type='xs:boolean'/>
<xs:attribute name='messageAuthorizationPolicy' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the policy used to decide if the current connection is authorized to
consume a given message
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='name' type='xs:string'/>
<xs:attribute name='server' type='xs:string'/>
<xs:attribute name='taskRunnerFactory' type='xs:string'/>
<xs:attribute name='uri' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the server transport URI to use if there is not a
{@link TransportServer} configured via the
{@link #setServer(TransportServer)} method. This value is used to lazy
create a {@link TransportServer} instance
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.broker.util.UDPTraceBrokerPlugin -->
<xs:element name='udpTraceBrokerPlugin'>
<xs:annotation>
<xs:documentation><![CDATA[
A Broker interceptor which allows you to trace all operations to a UDP
socket.
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name='address' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='adminConnectionContext' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='next' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:loggingBrokerPlugin'/>
<xs:element ref='tns:multicastTraceBrokerPlugin'/>
<xs:element ref='tns:timeStampingBrokerPlugin'/>
<xs:element ref='tns:udpTraceBrokerPlugin'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='wireFormat' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='wireFormatFactory' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
</xs:sequence>
<xs:attribute name='address' type='xs:string'/>
<xs:attribute name='adminConnectionContext' type='xs:string'/>
<xs:attribute name='broadcast' type='xs:boolean'/>
<xs:attribute name='destination' type='xs:string'/>
<xs:attribute name='maxTraceDatagramSize' type='xs:integer'/>
<xs:attribute name='next' type='xs:string'/>
<xs:attribute name='wireFormat' type='xs:string'/>
<xs:attribute name='wireFormatFactory' type='xs:string'/>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.usage.UsageCapacity -->
<xs:element name='usageCapacity'>
<xs:annotation>
<xs:documentation><![CDATA[
Identify if a limit has been reached
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:attribute name='limit' type='xs:string'/>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.broker.region.virtual.VirtualDestinationInterceptor -->
<xs:element name='virtualDestinationInterceptor'>
<xs:annotation>
<xs:documentation><![CDATA[
Implements <a
href="http://activemq.apache.org/virtual-destinations.html">Virtual Topics</a>.
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name='virtualDestinations' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='unbounded'>
<xs:element ref='tns:compositeQueue'/>
<xs:element ref='tns:compositeTopic'/>
<xs:element ref='tns:virtualTopic'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
</xs:sequence>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.broker.region.virtual.VirtualTopic -->
<xs:element name='virtualTopic'>
<xs:annotation>
<xs:documentation><![CDATA[
Creates <a href="http://activemq.org/site/virtual-destinations.html">Virtual
Topics</a> using a prefix and postfix. The virtual destination creates a
wildcard that is then used to look up all active queue subscriptions which
match.
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:attribute name='name' type='xs:string'/>
<xs:attribute name='postfix' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets any postix used to identify the queue consumers
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='prefix' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the prefix wildcard used to identify the queue consumers for a given
topic
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.broker.region.policy.VMPendingSubscriberMessageStoragePolicy -->
<xs:element name='vmCursor'>
<xs:annotation>
<xs:documentation><![CDATA[
Pending messages held
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.broker.region.policy.VMPendingDurableSubscriberMessageStoragePolicy -->
<xs:element name='vmDurableCursor'>
<xs:annotation>
<xs:documentation><![CDATA[
Pending
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.broker.region.policy.VMPendingQueueMessageStoragePolicy -->
<xs:element name='vmQueueCursor'>
<xs:annotation>
<xs:documentation><![CDATA[
Pending messages
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<!-- element for type: org.apache.activemq.spring.ActiveMQXAConnectionFactory -->
<xs:element name='xaConnectionFactory'>
<xs:annotation>
<xs:documentation><![CDATA[
A <a href="http://www.springframework.org/">Spring</a> enhanced XA connection
factory which will automatically use the Spring bean name as the clientIDPrefix property
so that connections created have client IDs related to your Spring.xml file for
easier comprehension from <a href="http://activemq.apache.org/jmx.html">JMX</a>.
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name='blobTransferPolicy' minOccurs='0' maxOccurs='1'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the policy used to describe how out-of-band BLOBs (Binary Large
OBjects) are transferred from producers to brokers to consumers
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='clientIdGenerator' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='prefetchPolicy' minOccurs='0' maxOccurs='1'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the <a
href="http://activemq.apache.org/what-is-the-prefetch-limit-for.html">prefetch
policy</a> for consumers created by this connection.
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:prefetchPolicy'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='properties' minOccurs='0' maxOccurs='1'>
<xs:annotation>
<xs:documentation><![CDATA[
Get the properties from this instance for storing in JNDI
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='redeliveryPolicy' minOccurs='0' maxOccurs='1'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the global redelivery policy to be used when a message is delivered
but the session is rolled back
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:redeliveryPolicy'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name='transformer' minOccurs='0' maxOccurs='1'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the transformer used to transform messages before they are sent on
to the JMS bus or when they are received from the bus but before they are
delivered to the JMS client
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='transportListener' minOccurs='0' maxOccurs='1'>
<xs:annotation>
<xs:documentation><![CDATA[
Allows a listener to be configured on the ConnectionFactory so that when this factory is used
with frameworks which don't expose the Connection such as Spring JmsTemplate, you can still register
a transport listener.
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
</xs:sequence>
<xs:attribute name='alwaysSessionAsync' type='xs:boolean'>
<xs:annotation>
<xs:documentation><![CDATA[
If this flag is set then a separate thread is not used for dispatching
messages for each Session in the Connection. However, a separate thread
is always used if there is more than one session, or the session isn't in
auto acknowledge or duplicates ok mode
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='alwaysSyncSend' type='xs:boolean'>
<xs:annotation>
<xs:documentation><![CDATA[
Set true if always require messages to be sync sent
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='beanName' type='xs:string'/>
<xs:attribute name='blobTransferPolicy' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the policy used to describe how out-of-band BLOBs (Binary Large
OBjects) are transferred from producers to brokers to consumers
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='brokerURL' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the <a
href="http://activemq.apache.org/configuring-transports.html">connection
URL</a> used to connect to the ActiveMQ broker.
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='clientID' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the JMS clientID to use for the created connection. Note that this
can only be used by one connection at once so generally its a better idea
to set the clientID on a Connection
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='clientIDPrefix' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the prefix used by autogenerated JMS Client ID values which are used
if the JMS client does not explicitly specify on.
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='clientIdGenerator' type='xs:string'/>
<xs:attribute name='closeTimeout' type='xs:integer'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the timeout before a close is considered complete. Normally a
close() on a connection waits for confirmation from the broker; this
allows that operation to timeout to save the client hanging if there is
no broker
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='copyMessageOnSend' type='xs:boolean'>
<xs:annotation>
<xs:documentation><![CDATA[
Should a JMS message be copied to a new JMS Message object as part of the
send() method in JMS. This is enabled by default to be compliant with the
JMS specification. You can disable it if you do not mutate JMS messages
after they are sent for a performance boost
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='disableTimeStampsByDefault' type='xs:boolean'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets whether or not timestamps on messages should be disabled or not. If
you disable them it adds a small performance boost.
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='dispatchAsync' type='xs:boolean'>
<xs:annotation>
<xs:documentation><![CDATA[
Enables or disables the default setting of whether or not consumers have
their messages <a
href="http://activemq.apache.org/consumer-dispatch-async.html">dispatched
synchronously or asynchronously by the broker</a>. For non-durable
topics for example we typically dispatch synchronously by default to
minimize context switches which boost performance. However sometimes its
better to go slower to ensure that a single blocked consumer socket does
not block delivery to other consumers.
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='exclusiveConsumer' type='xs:boolean'>
<xs:annotation>
<xs:documentation><![CDATA[
Enables or disables whether or not queue consumers should be exclusive or
not for example to preserve ordering when not using <a
href="http://activemq.apache.org/message-groups.html">Message Groups</a>
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='nestedMapAndListEnabled' type='xs:boolean'>
<xs:annotation>
<xs:documentation><![CDATA[
Enables/disables whether or not Message properties and MapMessage entries
support <a
href="http://activemq.apache.org/structured-message-properties-and-mapmessages.html">Nested
Structures</a> of Map and List objects
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='objectMessageSerializationDefered' type='xs:boolean'>
<xs:annotation>
<xs:documentation><![CDATA[
When an object is set on an ObjectMessage, the JMS spec requires the
object to be serialized by that set method. Enabling this flag causes the
object to not get serialized. The object may subsequently get serialized
if the message needs to be sent over a socket or stored to disk.
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='optimizeAcknowledge' type='xs:boolean'/>
<xs:attribute name='optimizedMessageDispatch' type='xs:boolean'>
<xs:annotation>
<xs:documentation><![CDATA[
If this flag is set then an larger prefetch limit is used - only
applicable for durable topic subscribers.
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='password' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the JMS password used for connections created from this factory
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='prefetchPolicy' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the <a
href="http://activemq.apache.org/what-is-the-prefetch-limit-for.html">prefetch
policy</a> for consumers created by this connection.
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='producerWindowSize' type='xs:integer'/>
<xs:attribute name='properties' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
Get the properties from this instance for storing in JNDI
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='redeliveryPolicy' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the global redelivery policy to be used when a message is delivered
but the session is rolled back
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='sendTimeout' type='xs:integer'/>
<xs:attribute name='statsEnabled' type='xs:boolean'/>
<xs:attribute name='transformer' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the transformer used to transform messages before they are sent on
to the JMS bus or when they are received from the bus but before they are
delivered to the JMS client
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='transportListener' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
Allows a listener to be configured on the ConnectionFactory so that when this factory is used
with frameworks which don't expose the Connection such as Spring JmsTemplate, you can still register
a transport listener.
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='useAsyncSend' type='xs:boolean'>
<xs:annotation>
<xs:documentation><![CDATA[
Forces the use of <a
href="http://activemq.apache.org/async-sends.html">Async Sends</a> which
adds a massive performance boost; but means that the send() method will
return immediately whether the message has been sent or not which could
lead to message loss.
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='useBeanNameAsClientIdPrefix' type='xs:boolean'/>
<xs:attribute name='useCompression' type='xs:boolean'>
<xs:annotation>
<xs:documentation><![CDATA[
Enables the use of compression of the message bodies
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='useRetroactiveConsumer' type='xs:boolean'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets whether or not retroactive consumers are enabled. Retroactive
consumers allow non-durable topic subscribers to receive old messages
that were published before the non-durable subscriber started.
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='userName' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the JMS userName used by connections created by this factory
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='warnAboutUnstartedConnectionTimeout' type='xs:long'>
<xs:annotation>
<xs:documentation><![CDATA[
Enables the timeout from a connection creation to when a warning is
generated if the connection is not properly started via
{@link Connection#start()} and a message is received by a consumer. It is
a very common gotcha to forget to <a
href="http://activemq.apache.org/i-am-not-receiving-any-messages-what-is-wrong.html">start
the connection</a> so this option makes the default case to create a
warning if the user forgets. To disable the warning just set the value to <
0 (say -1).
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name='watchTopicAdvisories' type='xs:boolean'/>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
</xs:schema>