blob: 084687c63c377dd967266e9ce35b91a77c3e3198 [file] [log] [blame]
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<xsd:schema xmlns="http://www.mulesource.org/schema/mule/vm/2.1"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:mule="http://www.mulesource.org/schema/mule/core/2.1"
xmlns:schemadoc="http://www.mulesource.org/schema/mule/schemadoc/2.1"
targetNamespace="http://www.mulesource.org/schema/mule/vm/2.1"
elementFormDefault="qualified"
attributeFormDefault="unqualified">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace"/>
<xsd:import namespace="http://www.mulesource.org/schema/mule/core/2.1"
schemaLocation="IDEADEV_32773.xsd" />
<xsd:import namespace = "http://www.mulesource.org/schema/mule/schemadoc/2.1"
schemaLocation = "IDEADEV_32773-schemadoc.xsd"/>
<xsd:annotation>
<xsd:documentation>
The VM transport is used for intra-VM communication between components managed by Mule. The transport provides options for configuring VM transient or persistent queues.
</xsd:documentation>
<xsd:appinfo>
<schemadoc:short-name>VM</schemadoc:short-name>
<schemadoc:page-title>VM Transport</schemadoc:page-title>
<schemadoc:transport-features receiveEvents="true" dispatchEvents="true" responseEvents="true"
requestEvents="true"
transactions="true" streaming="true">
<schemadoc:inboundMEPs in-only="true" in-out="true" in-optional-out="true"/>
<schemadoc:outboundMEPs out-only="true" out-in="true" out-optional-in="true"/>
</schemadoc:transport-features>
</xsd:appinfo>
</xsd:annotation>
<xsd:element name="connector" type="vmConnectorType" substitutionGroup="mule:abstract-connector"/>
<xsd:complexType name="vmConnectorType">
<xsd:complexContent>
<xsd:extension base="mule:connectorType">
<xsd:sequence>
<xsd:element name="queueProfile" type="mule:queueProfileType" minOccurs="0">
<xsd:annotation>
<xsd:documentation>DEPRECATED. USE "&lt;queue-profile&gt;" instead.</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="queue-profile" type="mule:queueProfileType" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Configures the properties of this connector's queue (see [Configuring Queues]).
</xsd:documentation>
</xsd:annotation>
</xsd:element>
</xsd:sequence>
<xsd:attribute name="queueEvents" type="mule:substitutableBoolean">
<xsd:annotation>
<xsd:documentation>
Determines whether queues should be set up for listeners on the connector. If set to false, the connector simply forwards messsages to components via the Mule server. If it is set to true, the queues are configured using the queuing profile.
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attribute name="queueTimeout" type="xsd:positiveInteger">
<xsd:annotation>
<xsd:documentation>
The timeout setting for the queue.
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
<xsd:element name="inbound-endpoint" type="inboundEndpointType" substitutionGroup="mule:abstract-inbound-endpoint">
<xsd:annotation>
<xsd:documentation>
The endpoint on which this connector receives messages from the transport.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:complexType name="inboundEndpointType">
<xsd:complexContent>
<xsd:extension base="mule:inboundEndpointWithXaType">
<xsd:attributeGroup ref="addressAttributes"/>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
<xsd:element name="outbound-endpoint" type="outboundEndpointType" substitutionGroup="mule:abstract-outbound-endpoint">
<xsd:annotation>
<xsd:documentation>
The endpoint to which this connector sends messages.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:complexType name="outboundEndpointType">
<xsd:complexContent>
<xsd:extension base="mule:outboundEndpointWithXaType">
<xsd:attributeGroup ref="addressAttributes"/>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
<xsd:element name="endpoint" type="globalEndpointType" substitutionGroup="mule:abstract-global-endpoint">
<xsd:annotation>
<xsd:documentation>
An endpoint "template" that can be used to construct an inbound or outbound endpoint elsewhere in the configuration by referencing the endpoint name.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:complexType name="globalEndpointType">
<xsd:complexContent>
<xsd:extension base="mule:globalEndpointWithXaType">
<xsd:attributeGroup ref="addressAttributes"/>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
<xsd:attributeGroup name="addressAttributes">
<xsd:attribute name="path" type="xsd:string">
<xsd:annotation>
<xsd:documentation>
The queue path, such as {{dispatchInQueue}} to create the address {{vm://dispatchInQueue}}.
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
</xsd:attributeGroup>
<xsd:element name="transaction" type="mule:baseTransactionType" substitutionGroup="mule:abstract-transaction">
<xsd:annotation>
<xsd:documentation>
The transaction configuration.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
</xsd:schema>