blob: cbaae025a3802ac3c830d6caf7c6a7a816b0317c [file] [log] [blame]
<?xml version='1.0'?>
<!-- NOTE: this file is autogenerated by Apache XBean -->
<xs:schema elementFormDefault='qualified'
targetNamespace='http://activemq.org/config/1.0'
xmlns:xs='http://www.w3.org/2001/XMLSchema'
xmlns:tns='http://activemq.org/config/1.0'>
<!-- 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='1'><xs:any namespace='##other'/></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='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='writeACLs' 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'/>
</xs:sequence>
<xs:attribute name='admin' type='xs:string'/>
<xs:attribute name='adminACLs' type='xs:string'/>
<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='read' type='xs:string'/>
<xs:attribute name='readACLs' 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='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.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 namespace='##other'/></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: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 namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:any namespace='##other'/>
</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.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'/>
</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'/>
</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'/>
</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='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: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='memoryManager' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:usageManager'/>
<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 namespace='##other'/></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:multicastNetworkConnector'/>
<xs:element ref='tns:networkConnector'/>
<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: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:jdbcPersistenceAdapter'/>
<xs:element ref='tns:journalPersistenceAdapter'/>
<xs:element ref='tns:kahaPersistenceAdapter'/>
<xs:element ref='tns:memoryPersistenceAdapter'/>
<xs:element ref='tns:quickJournalPersistenceAdapter'/>
<xs:element ref='tns:rapidPersistenceAdapter'/>
<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: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='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 namespace='##other'/></xs:sequence>
</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:inboundQueueBridge'/>
<xs:element ref='tns:inboundTopicBridge'/>
<xs:element ref='tns:jmsQueueConnector'/>
<xs:element ref='tns:jmsTopicConnector'/>
<xs:element ref='tns:managementContext'/>
<xs:element ref='tns:masterConnector'/>
<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: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 namespace='##other'/></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'/>
</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='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='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='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='keepDurableSubsActive' type='xs:boolean'/>
<xs:attribute name='managementContext' type='xs:string'/>
<xs:attribute name='masterConnectorURI' type='xs:string'/>
<xs:attribute name='memoryManager' 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='pendingDurableSubscriberPolicy' type='xs:string'/>
<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='shutdownOnMasterFailure' 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='taskRunnerFactory' type='xs:string'/>
<xs:attribute name='tempDataStore' type='xs:string'/>
<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='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='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://incubator.apache.org/activemq/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'/>
</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='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='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'/>
</xs:sequence>
<xs:attribute name='brokerService' type='xs:string'/>
<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='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='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'/>
</xs:sequence>
<xs:attribute name='bridgeTempDestinations' type='xs:boolean'/>
<xs:attribute name='decreaseNetworkConsumerPriority' type='xs:boolean'/>
<xs:attribute name='dispatchAsync' type='xs:boolean'/>
<xs:attribute name='localBroker' type='xs:string'/>
<xs:attribute name='localBrokerName' type='xs:string'/>
<xs:attribute name='name' type='xs:string'/>
<xs:attribute name='networkTTL' type='xs:integer'/>
<xs:attribute name='password' type='xs:string'/>
<xs:attribute name='prefetchSize' type='xs:integer'/>
<xs:attribute name='remoteBroker' 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.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='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:any namespace='##other'/>
</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='forwardTo' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the list of destinations to forward to
]]></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='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:any namespace='##other'/>
</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='forwardTo' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the list of destinations to forward to
]]></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://incubator.apache.org/activemq/jmx.html">JMX</a>.
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<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://incubator.apache.org/activemq/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:any namespace='##other'/>
</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='beanName' type='xs:string'/>
<xs:attribute name='brokerURL' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the <a
href="http://incubator.apache.org/activemq/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://incubator.apache.org/activemq/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='nestedMapAndListEnabled' type='xs:boolean'>
<xs:annotation>
<xs:documentation><![CDATA[
Enables/disables whether or not Message properties and MapMessage entries
support <a
href="http://incubator.apache.org/activemq/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://incubator.apache.org/activemq/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='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='statsEnabled' type='xs:boolean'/>
<xs:attribute name='useAsyncSend' type='xs:boolean'>
<xs:annotation>
<xs:documentation><![CDATA[
Forces the use of <a
href="http://incubator.apache.org/activemq/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='useSyncSend' type='xs:boolean'/>
<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='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'/>
</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'/>
</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.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='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='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'/>
</xs:sequence>
<xs:attribute name='bridgeTempDestinations' type='xs:boolean'/>
<xs:attribute name='decreaseNetworkConsumerPriority' type='xs:boolean'/>
<xs:attribute name='dispatchAsync' type='xs:boolean'/>
<xs:attribute name='localBroker' type='xs:string'/>
<xs:attribute name='localBrokerName' type='xs:string'/>
<xs:attribute name='name' type='xs:string'/>
<xs:attribute name='networkTTL' type='xs:integer'/>
<xs:attribute name='password' type='xs:string'/>
<xs:attribute name='prefetchSize' type='xs:integer'/>
<xs:attribute name='remoteBroker' 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.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'/>
</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.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.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'/>
</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='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'/>
</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='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'/>
</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'/>
</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'/>
</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='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'/>
</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:usageManager'/>
<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'/>
</xs:sequence>
<xs:attribute name='adapter' 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='ds' type='xs:string'/>
<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'/>
</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='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='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'/>
</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='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='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:jdbcPersistenceAdapter'/>
<xs:element ref='tns:journalPersistenceAdapter'/>
<xs:element ref='tns:kahaPersistenceAdapter'/>
<xs:element ref='tns:memoryPersistenceAdapter'/>
<xs:element ref='tns:quickJournalPersistenceAdapter'/>
<xs:element ref='tns:rapidPersistenceAdapter'/>
<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:usageManager'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:any namespace='##other'/>
</xs:sequence>
<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'/>
</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='usageManager' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:usageManager'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:any namespace='##other'/>
</xs:sequence>
<xs:attribute name='dir' type='xs:string'/>
<xs:attribute name='indexType' type='xs:string'/>
<xs:attribute name='maxDataFileLength' type='xs:long'/>
<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.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='1'><xs:any namespace='##other'/></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'/>
</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.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='pendingDurableSubscriberPolicy' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:fileDurableSubscriberCursor'/>
<xs:element ref='tns:storeDurableSubscriberCursor'/>
<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'/>
</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='pendingDurableSubscriberPolicy' 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'/>
</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://incubator.apache.org/activemq/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'/>
</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:usageManager'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:any namespace='##other'/>
</xs:sequence>
<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.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://incubator.apache.org/activemq/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.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='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='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='dynamicallyIncludedDestinations' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='unbounded'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='excludedDestinations' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='unbounded'><xs:any namespace='##other'/></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 namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:any namespace='##other'/>
</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='conduitSubscriptions' type='xs:boolean'/>
<xs:attribute name='connectionFilter' type='xs:string'/>
<xs:attribute name='decreaseNetworkConsumerPriority' type='xs:boolean'/>
<xs:attribute name='dispatchAsync' type='xs:boolean'/>
<xs:attribute name='durableDestinations' type='xs:string'/>
<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='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='pendingDurableSubscriberPolicy' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:fileDurableSubscriberCursor'/>
<xs:element ref='tns:storeDurableSubscriberCursor'/>
<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'/>
</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='pendingDurableSubscriberPolicy' 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='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='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='dynamicallyIncludedDestinations' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='unbounded'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='excludedDestinations' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='unbounded'><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 namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:any namespace='##other'/>
</xs:sequence>
<xs:attribute name='bridgeTempDestinations' type='xs:boolean'/>
<xs:attribute name='brokerName' 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='discoveryAgent' type='xs:string'/>
<xs:attribute name='discoveryURI' type='xs:string'/>
<xs:attribute name='dispatchAsync' type='xs:boolean'/>
<xs:attribute name='durableDestinations' type='xs:string'/>
<xs:attribute name='dynamicOnly' type='xs:boolean'/>
<xs:attribute name='failover' 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='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'/>
</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'/>
</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'/>
</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://incubator.apache.org/activemq/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='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='pendingQueueMessageStoragePolicy' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<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'/>
</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='memoryLimit' type='xs:long'/>
<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://incubator.apache.org/activemq/message-groups.html">Message Groups</a> functionality.
]]></xs:documentation>
</xs:annotation>
</xs:attribute>
<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='pendingQueueMessageStoragePolicy' 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='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='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='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 namespace='##other'/></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 namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:any namespace='##other'/>
</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'/>
</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'/>
</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 Destination
]]></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'/>
</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.store.journal.QuickJournalPersistenceAdapter -->
<xs:element name='quickJournalPersistenceAdapter'>
<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:jdbcPersistenceAdapter'/>
<xs:element ref='tns:journalPersistenceAdapter'/>
<xs:element ref='tns:kahaPersistenceAdapter'/>
<xs:element ref='tns:memoryPersistenceAdapter'/>
<xs:element ref='tns:quickJournalPersistenceAdapter'/>
<xs:element ref='tns:rapidPersistenceAdapter'/>
<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:usageManager'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:any namespace='##other'/>
</xs:sequence>
<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.rapid.RapidPersistenceAdapter -->
<xs:element name='rapidPersistenceAdapter'>
<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='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:usageManager'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:any namespace='##other'/>
</xs:sequence>
<xs:attribute name='journal' 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.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'/>
</xs:sequence>
<xs:attribute name='deadLetterQueue' 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.SimpleAuthenticationPlugin -->
<xs:element name='simpleAuthenticationPlugin'>
<xs:annotation>
<xs:documentation><![CDATA[
Provides a simple authentication
]]></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='1'><xs:any namespace='##other'/></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='1'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:any namespace='##other'/>
</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='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'/>
</xs:sequence>
<xs:attribute name='adminACLs' type='xs:string'/>
<xs:attribute name='readACLs' 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.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'/>
</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://incubator.apache.org/activemq/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 namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='dropSchemaStatements' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:sequence minOccurs='0' maxOccurs='unbounded'><xs:any namespace='##other'/></xs:sequence>
</xs:complexType>
</xs:element>
<xs:any namespace='##other'/>
</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='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='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='nextDurableSubscriberMessageIdStatement' type='xs:string'/>
<xs:attribute name='nextDurableSubscriberMessageStatement' type='xs:string'/>
<xs:attribute name='prevDurableSubscriberMessageIdStatement' 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.StorePendingDurableSubscriberMessageStoragePolicy -->
<xs:element name='storeDurableSubscriberCursor'>
<xs:annotation>
<xs:documentation><![CDATA[
Pending messages for a durable subscriber
]]></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.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'/>
</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.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: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:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:any namespace='##other'/>
</xs:sequence>
<xs:attribute name='adminConnectionContext' type='xs:string'/>
<xs:attribute name='next' type='xs:string'/>
<xs:attribute name='pendingDurableSubscriberPolicy' 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 Destination
]]></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'/>
</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='broker' 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='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='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'/>
</xs:sequence>
<xs:attribute name='broker' type='xs:string'/>
<xs:attribute name='brokerInfo' type='xs:string'/>
<xs:attribute name='brokerName' 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='pendingDurableSubscriberPolicy' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:fileDurableSubscriberCursor'/>
<xs:element ref='tns:storeDurableSubscriberCursor'/>
<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'/>
</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='pendingDurableSubscriberPolicy' 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.memory.UsageManager -->
<xs:element name='usageManager'>
<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='parent' minOccurs='0' maxOccurs='1'>
<xs:complexType>
<xs:choice minOccurs='0' maxOccurs='1'>
<xs:element ref='tns:usageManager'/>
<xs:any namespace='##other'/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:any namespace='##other'/>
</xs:sequence>
<xs:attribute name='limit' type='xs:long'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the memory limit in bytes.
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='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='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='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://incubator.apache.org/activemq/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'/>
</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.VMPendingQueueMessageStoragePolicy -->
<xs:element name='vmCursor'>
<xs:annotation>
<xs:documentation><![CDATA[
Pending messages held in the JVM
]]></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://incubator.apache.org/activemq/jmx.html">JMX</a>.
]]></xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<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://incubator.apache.org/activemq/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:any namespace='##other'/>
</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='beanName' type='xs:string'/>
<xs:attribute name='brokerURL' type='xs:string'>
<xs:annotation>
<xs:documentation><![CDATA[
Sets the <a
href="http://incubator.apache.org/activemq/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://incubator.apache.org/activemq/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='nestedMapAndListEnabled' type='xs:boolean'>
<xs:annotation>
<xs:documentation><![CDATA[
Enables/disables whether or not Message properties and MapMessage entries
support <a
href="http://incubator.apache.org/activemq/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://incubator.apache.org/activemq/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='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='statsEnabled' type='xs:boolean'/>
<xs:attribute name='useAsyncSend' type='xs:boolean'>
<xs:annotation>
<xs:documentation><![CDATA[
Forces the use of <a
href="http://incubator.apache.org/activemq/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='useSyncSend' type='xs:boolean'/>
<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='watchTopicAdvisories' type='xs:boolean'/>
<xs:attribute name='id' type='xs:ID'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
</xs:schema>