Author: scabanovich
Date: 2012-05-03 13:49:13 -0400 (Thu, 03 May 2012)
New Revision: 40762
Added:
trunk/esb/plugins/org.jboss.tools.esb.core/resources/meta/esb131.meta
trunk/esb/plugins/org.jboss.tools.esb.core/schemas/jbossesb-1.3.1.xsd
Modified:
trunk/esb/plugins/org.jboss.tools.esb.core/plugin.xml
trunk/esb/plugins/org.jboss.tools.esb.core/resources/help/keys-esb-attrs.properties
trunk/esb/plugins/org.jboss.tools.esb.core/resources/help/keys-esb.properties
trunk/esb/plugins/org.jboss.tools.esb.core/src/org/jboss/tools/esb/core/model/ESBConstants.java
trunk/esb/plugins/org.jboss.tools.esb.core/src/org/jboss/tools/esb/core/model/ESBEntityRecognizer.java
trunk/esb/plugins/org.jboss.tools.esb.core/src/org/jboss/tools/esb/core/model/SpecificActionLoader.java
Log:
JBIDE-11769
https://issues.jboss.org/browse/JBIDE-11769
Support for jbossesb-1.3.1.xsd
Modified: trunk/esb/plugins/org.jboss.tools.esb.core/plugin.xml
===================================================================
--- trunk/esb/plugins/org.jboss.tools.esb.core/plugin.xml 2012-05-03 17:25:19 UTC (rev
40761)
+++ trunk/esb/plugins/org.jboss.tools.esb.core/plugin.xml 2012-05-03 17:49:13 UTC (rev
40762)
@@ -8,6 +8,7 @@
<meta path="meta/esb-notifiers.meta"/>
<meta path="meta/esb12.meta"/>
<meta path="meta/esb13.meta"/>
+ <meta path="meta/esb131.meta"/>
<meta path="meta/esb-riftsaw-actions.meta"/>
</extension>
@@ -116,6 +117,10 @@
<uri
name="http://anonsvn.jboss.org/repos/labs/labs/jbossesb/trunk/produc...
uri="platform:/plugin/org.jboss.tools.esb.core/schemas/jbossesb-1.3.0.xsd"/>
+
+ <uri
+
name="http://anonsvn.jboss.org/repos/labs/labs/jbossesb/trunk/produc...
+
uri="platform:/plugin/org.jboss.tools.esb.core/schemas/jbossesb-1.3.1.xsd"/>
</catalogContribution>
</extension>
Modified:
trunk/esb/plugins/org.jboss.tools.esb.core/resources/help/keys-esb-attrs.properties
===================================================================
---
trunk/esb/plugins/org.jboss.tools.esb.core/resources/help/keys-esb-attrs.properties 2012-05-03
17:25:19 UTC (rev 40761)
+++
trunk/esb/plugins/org.jboss.tools.esb.core/resources/help/keys-esb-attrs.properties 2012-05-03
17:49:13 UTC (rev 40762)
@@ -179,3 +179,4 @@
ESB.jndi_pkg_prefix=JNDI pkg Prefix
ESB.connection_factory=Connection Factory
ESB.attachment_name=Message Attachment Name
+ESB.record_route=Record Route
Modified: trunk/esb/plugins/org.jboss.tools.esb.core/resources/help/keys-esb.properties
===================================================================
---
trunk/esb/plugins/org.jboss.tools.esb.core/resources/help/keys-esb.properties 2012-05-03
17:25:19 UTC (rev 40761)
+++
trunk/esb/plugins/org.jboss.tools.esb.core/resources/help/keys-esb.properties 2012-05-03
17:49:13 UTC (rev 40762)
@@ -256,6 +256,8 @@
ESBServices101_Properties.Title=Services List
ESBServices110_Properties.Title=Services List
ESBServices120_Properties.Title=Services List
+ESBServices130_Properties.Title=Services List
+ESBServices131_Properties.Title=Services List
ESB.AddProperty.WindowTitle=Add Property
ESB.AddProperty.Title=ESB Property
@@ -430,6 +432,8 @@
ESBService101_Properties.Title=ESB Service
ESBService110_Properties.Title=ESB Service
+ESBService120_Properties.Title=ESB Service
+ESBService130_Properties.Title=ESB Service
#Listeners List
Added: trunk/esb/plugins/org.jboss.tools.esb.core/resources/meta/esb131.meta
===================================================================
--- trunk/esb/plugins/org.jboss.tools.esb.core/resources/meta/esb131.meta
(rev 0)
+++ trunk/esb/plugins/org.jboss.tools.esb.core/resources/meta/esb131.meta 2012-05-03
17:49:13 UTC (rev 40762)
@@ -0,0 +1,226 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE XModelEntityGroup PUBLIC "-//Red Hat, Inc.//DTD Meta 1.0//EN"
+ "meta.dtd">
+<XModelEntityGroup>
+ <VERSION DEPENDS="Model:1.0" MODULE="ESB"
VERSION="1.0"/>
+ <MAPPINGS>
+ <MAPPING name="FileVersions">
+ <PAIR name="ESB1.3.1" value="FileESB131"/>
+ </MAPPING>
+ </MAPPINGS>
+ <ICONS>
+ <GROUP name="main">
+ <GROUP name="esb"/>
+ </GROUP>
+ </ICONS>
+ <GlobalActions kind="list"/>
+ <XModelEntity ImplementingClass="%ESB%"
+
PROPERTIES="formFactory=%Default%;formLayout=org.jboss.tools.esb.ui.editor.form.ESBXMLFormLayoutData;children=%ESBOrderedService%"
+ XMLSUBPATH="service" name="ESBService131">
+ <XChildrenEntities>
+ <XChildEntity maxCount="1" name="ESBSecurity101P"
required="yes"/>
+ <XChildEntity name="ESBProperty"/>
+ <XChildEntity maxCount="1" name="ESBListeners130"
required="yes"/>
+ <XChildEntity maxCount="1" name="ESBActions130"
required="yes"/>
+ </XChildrenEntities>
+ <XEntityRenderer>
+ <ICONS>
+ <ICON info="main.esb.service" type="main"/>
+ </ICONS>
+ </XEntityRenderer>
+ <XModelAttributes>
+ <XModelAttribute default="service" loader="ElementType"
name="element type">
+ <Editor name="Uneditable"/>
+ </XModelAttribute>
+ <XModelAttributeReference
+ attributes="name,category,description,invm scope,invm transacted"
+ entity="ESBService101" name="service"/>
+ <XModelAttribute PROPERTIES="category=advanced"
+ name="alertTimeThreshold" xmlname="alertTimeThreshold"/>
+ <XModelAttribute PROPERTIES="category=advanced"
+ name="alertLengthThreshold" xmlname="alertLengthThreshold"/>
+ <XModelAttribute PROPERTIES="category=advanced" name="record
route" xmlname="recordRoute">
+ <Constraint loader="ListString">
+ <value/>
+ <value name="true"/>
+ <value name="false"/>
+ </Constraint>
+ <Editor name="ListString"/>
+ </XModelAttribute>
+ <XModelAttribute TRIM="no" name="comment"
visibility="false" xmlname="#comment">
+ <Editor name="Note"/>
+ </XModelAttribute>
+ </XModelAttributes>
+ <XActionItem kind="list">
+ <XActionItemReference entity="ESBService101"
name="CreateActions" path="CreateActions"/>
+ <XActionItemReference entity="ESBService101" name="CopyActions"
path="CopyActions"/>
+ <XActionItemReference entity="ESBService101"
name="DeleteActions" path="DeleteActions"/>
+ <XActionItemReference entity="ESBProperty"
name="Properties"/>
+ <XActionItemReference entity="ESBProperty"
name="MoveActions"/>
+ </XActionItem>
+ <XDependencies/>
+ </XModelEntity>
+ <XModelEntity ImplementingClass="%ESB%"
+
PROPERTIES="formFactory=%Default%;formLayout=org.jboss.tools.esb.ui.editor.form.ESBXMLFormLayoutData;saveDefault=false;children=%Ordered%"
+ XMLSUBPATH="services" name="ESBServices131">
+ <XChildrenEntities>
+ <XChildEntity name="ESBService131"/>
+ </XChildrenEntities>
+ <XEntityRenderer>
+ <ICONS>
+ <ICON info="main.esb.services" type="main"/>
+ </ICONS>
+ </XEntityRenderer>
+ <XModelAttributes>
+ <XModelAttribute default="services list" loader="ElementType"
name="element type">
+ <Editor name="Uneditable"/>
+ </XModelAttribute>
+ <XModelAttribute PROPERTIES="category=general;id=true"
+ default="Services" name="name" visibility="false">
+ <Editor name="Uneditable"/>
+ </XModelAttribute>
+ <XModelAttribute TRIM="no" name="comment"
visibility="false" xmlname="#comment">
+ <Editor name="Note"/>
+ </XModelAttribute>
+ </XModelAttributes>
+ <XActionItem kind="list">
+ <XActionItem kind="list" name="CreateActions">
+ <XActionItem HandlerClassName="%Create%" ICON="action.empty"
+ PROPERTIES="validator.add=true" WizardClassName="%Default%"
+ displayName="Add Service..." kind="action"
name="AddService">
+ <EntityData EntityName="ESBService131">
+ <AttributeData AttributeName="name"/>
+ <AttributeData AttributeName="category"/>
+ <AttributeData AttributeName="description"/>
+ </EntityData>
+ </XActionItem>
+ </XActionItem>
+ <XActionItemReference entity="ESBServices101"
name="CopyActions" path="CopyActions"/>
+ <XActionItemReference entity="ESBServices101"
name="DeleteActions" path="DeleteActions"/>
+ <XActionItemReference entity="ESBProperty"
name="Properties"/>
+ </XActionItem>
+ <XDependencies/>
+ </XModelEntity>
+ <XModelEntity
+ ImplementationLoadingClass="org.jboss.tools.esb.core.model.ESBFileLoader"
+ ImplementingClass="org.jboss.tools.esb.core.model.ESBFileImpl"
+ ObjectEditorClass="%XML%"
+
PROPERTIES="formFactory=%Default%;formLayout=org.jboss.tools.esb.ui.editor.form.ESBXMLFormLayoutData;children=%EntityOrdered%;editorTreeConstraint=org.jboss.tools.esb.core.model.impl.ESBTreeConstraint"
+ XMLSUBPATH="jbossesb" name="FileESB131">
+ <XChildrenEntities>
+ <XChildEntity maxCount="1" name="ESBGlobals120"
required="yes"/>
+ <XChildEntity maxCount="1" name="ESBProviders130"
required="yes"/>
+ <XChildEntity maxCount="1" name="ESBServices131"
required="yes"/>
+ </XChildrenEntities>
+ <XEntityRenderer>
+ <ICONS>
+ <ICON info="main.esb.file" type="main"/>
+ </ICONS>
+ </XEntityRenderer>
+ <XModelAttributes>
+ <XModelAttribute default="JBoss esb" loader="ElementType"
name="element type">
+ <Editor name="Uneditable"/>
+ </XModelAttribute>
+ <XModelAttribute PROPERTIES="category=general" name="name"
xmlname="NAME"/>
+ <XModelAttribute default="xml" name="extension"
xmlname="EXTENSION">
+ <Editor name="Uneditable"/>
+ </XModelAttribute>
+ <XModelAttribute TRIM="no" name="comment"
visibility="false" xmlname="#comment">
+ <Editor name="Note"/>
+ </XModelAttribute>
+ <XModelAttribute loader="ElementType" name="_lateload"
visibility="false">
+ <Editor name="Uneditable"/>
+ </XModelAttribute>
+ <XModelAttribute default="no" name="isIncorrect"
visibility="false">
+ <Constraint loader="List">
+ <value name="yes"/>
+ <value name="no"/>
+ </Constraint>
+ <Editor name="Uneditable"/>
+ </XModelAttribute>
+ <XModelAttribute name="incorrectBody" visibility="false"/>
+ <XModelAttribute PROPERTIES="save=always"
+
default="http://anonsvn.labs.jboss.com/labs/jbossesb/trunk/product/e...
+ name="xmlns" xmlname="xmlns"/>
+ <XModelAttribute PROPERTIES="save=always"
+
default="http://www.w3.org/2001/XMLSchema-instance"
name="xmlns:xsi" xmlname="xmlns:xsi"/>
+ <XModelAttribute PROPERTIES="save=always"
+
default="http://anonsvn.labs.jboss.com/labs/jbossesb/trunk/product/e...
http://anonsvn.jboss.org/repos/labs/labs/jbossesb/trunk/product/etc/schem...
+ name="xsi:schemaLocation" xmlname="xsi:schemaLocation"/>
+ <XModelAttribute name="encoding">
+ <Constraint loader="ListString">
+ <value name="ISO-8859-1"/>
+ <value name="UTF-8"/>
+ </Constraint>
+ <Editor name="ListString"/>
+ </XModelAttribute>
+ <XModelAttribute PROPERTIES="category=general" default="180"
+ name="parameter reload secs" xmlname="parameterReloadSecs"/>
+ </XModelAttributes>
+ <XActionItem kind="list">
+ <XActionItem BaseActionName="Open" HandlerClassName="%Open%"
+ ICON="action.empty" displayName="Open" kind="action"
name="Open"/>
+ <XActionItem displayName="Open With" group="1"
kind="list" name="OpenWith">
+ <XActionItem HIDE="always"
+
HandlerClassName="org.jboss.tools.common.meta.action.impl.handlers.OpenWithExternalHandler"
+ ICON="action.empty" PROPERTIES="extension=struts-config"
+ displayName="Open with External Program" kind="action"
name="OpenWithSelected"/>
+ <XActionItem HIDE="always"
+
HandlerClassName="org.jboss.tools.common.meta.action.impl.handlers.OpenWithChoiceHandler"
+ ICON="action.empty" PROPERTIES="extension=struts-config"
+ displayName="Choose Program..." kind="action"
name="OpenWithChoice">
+ <EntityData EntityName="OpenWithHelper">
+ <AttributeData AttributeName="name"/>
+ <AttributeData AttributeName="default"/>
+ </EntityData>
+ </XActionItem>
+ </XActionItem>
+ <XActionItem kind="list" name="EditActions">
+ <XActionItem HIDE="always"
+
HandlerClassName="org.jboss.tools.jsf.model.handlers.RenameFacesConfigHandler"
+ ICON="action.empty" PROPERTIES="validator.edit=true"
+ WizardClassName="%Default%" displayName="Rename..."
kind="action" name="Rename">
+ <EntityData EntityName="FileESB110">
+ <AttributeData AttributeName="name"/>
+ </EntityData>
+ </XActionItem>
+ <XActionItem
+
HandlerClassName="org.jboss.tools.common.model.filesystems.impl.handlers.RenameEclipseFileHandler"
+ ICON="action.empty" displayName="Rename..."
kind="action" name="RenameEclipse"/>
+ </XActionItem>
+ <XActionItemReference entity="FileTXT" name="SaveActions"/>
+ <XActionItem ICON="action.empty" displayName="New"
group="1"
+ kind="list" name="CreateActions"/>
+ <XActionItemReference entity="FileESB101"
name="CopyActions"/>
+ <XActionItemReference entity="FileTXT"
name="DeleteActions"/>
+ <XActionItemReference entity="FileTXT" name="Properties"/>
+ <XActionItemReference entity="FileTXT"
name="DiscardActions"/>
+ </XActionItem>
+ <XDependencies/>
+ </XModelEntity>
+ <XModelEntity name="FileESB131_EditorActionList">
+ <XChildrenEntities/>
+ <XEntityRenderer/>
+ <XModelAttributes/>
+ <XActionItem kind="list">
+ <XActionItem displayName="New" group="1" kind="list"
name="CreateActions"/>
+ <XActionItem ICON="action.empty" kind="list"
name="Properties">
+ <XActionItem HandlerClassName="%Properties%"
ICON="action.empty"
+ displayName="Properties..." kind="action"
name="Properties"/>
+ </XActionItem>
+ </XActionItem>
+ <XDependencies/>
+ </XModelEntity>
+ <XEntityExtension name="FileFolder">
+ <XChildrenEntities>
+ <XChildEntity name="FileESB131"/>
+ </XChildrenEntities>
+ <XActionItem kind="list"/>
+ </XEntityExtension>
+ <XEntityExtension name="FileSystemFolder">
+ <XChildrenEntities>
+ <XChildEntity name="FileESB131"/>
+ </XChildrenEntities>
+ <XActionItem kind="list"/>
+ </XEntityExtension>
+</XModelEntityGroup>
Added: trunk/esb/plugins/org.jboss.tools.esb.core/schemas/jbossesb-1.3.1.xsd
===================================================================
--- trunk/esb/plugins/org.jboss.tools.esb.core/schemas/jbossesb-1.3.1.xsd
(rev 0)
+++ trunk/esb/plugins/org.jboss.tools.esb.core/schemas/jbossesb-1.3.1.xsd 2012-05-03
17:49:13 UTC (rev 40762)
@@ -0,0 +1,2192 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--Generated by Turbo XML 2.4.1.100. Conforms to w3c
http://www.w3.org/2001/XMLSchema-->
+<xsd:schema
+
xmlns:jesb="http://anonsvn.labs.jboss.com/labs/jbossesb/trunk/produc...
+
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ elementFormDefault="qualified"
+
targetNamespace="http://anonsvn.labs.jboss.com/labs/jbossesb/trunk/p...
+
+ <!--
88888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888
+ Document root + some basic types.
+ 88888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888-->
+
+ <xsd:element name="jbossesb">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ The jbossesb configuration for a single instance.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element maxOccurs="1" minOccurs="0"
+ ref="jesb:globals" />
+ <xsd:element maxOccurs="1" minOccurs="0"
+ ref="jesb:providers" />
+ <xsd:element maxOccurs="1" minOccurs="0"
+ ref="jesb:services" />
+ </xsd:sequence>
+ <xsd:attribute default="180" name="parameterReloadSecs"
+ use="optional" />
+ </xsd:complexType>
+ </xsd:element>
+
+ <xsd:element name="property">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ A simple name-value pair.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:complexType>
+ <xsd:complexContent>
+ <xsd:extension base="xsd:anyType">
+ <xsd:attribute name="name" type="xsd:string"
+ use="required" />
+ <xsd:attribute name="value" type="xsd:string" />
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+ </xsd:element>
+
+ <xsd:element name="globals">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ A container for the configurations global to a jbossesb config file
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element name="war-security" minOccurs="0"
maxOccurs="1">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ Security configuration that is global to the jboss-esb.xml
file.
+ These configuration settings are shared for all
http-providers and EBWS that are defined in jboss-esb.xml.Domain.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:complexType>
+ <xsd:attribute name="method"
use="optional" default="BASIC">
+ <xsd:simpleType>
+ <xsd:restriction base="xsd:NMTOKEN">
+ <xsd:enumeration value="BASIC" />
+ <xsd:enumeration value="DIGEST" />
+ <xsd:enumeration value="CLIENT-CERT" />
+ </xsd:restriction>
+ </xsd:simpleType>
+ </xsd:attribute>
+ <xsd:attribute name="domain"
type="xsd:string" use="optional">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">Security
Domain.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ </xsd:complexType>
+ </xsd:element>
+ </xsd:sequence>
+ </xsd:complexType>
+ </xsd:element>
+
+ <!--
88888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888
+ Provider and Bus base types.
+ 88888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888-->
+
+ <xsd:element name="providers">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ A container for the providers referenced in the jbossesb
+ config file
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element maxOccurs="unbounded" minOccurs="0"
+ ref="jesb:provider" />
+ </xsd:sequence>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:complexType abstract="true" name="provider">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ Abstract provider.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element maxOccurs="unbounded" minOccurs="0"
+ ref="jesb:property" />
+ </xsd:sequence>
+ <xsd:attribute name="name" type="xsd:string"
use="required" />
+ </xsd:complexType>
+ <xsd:element abstract="true" name="provider"
type="jesb:provider" />
+
+ <xsd:complexType name="bus-provider">
+ <xsd:complexContent>
+ <xsd:extension base="jesb:provider">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ A provider of a bus. So for instance you can
+ have a jms-provider (JBossMQ) or an
+ ftp-provider.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element maxOccurs="unbounded" minOccurs="1"
+ ref="jesb:bus" />
+ </xsd:sequence>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+ <xsd:element name="bus-provider"
+ substitutionGroup="jesb:provider">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ Generic Bus Provider.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:complexType>
+ <xsd:complexContent>
+ <xsd:extension base="jesb:bus-provider" />
+ </xsd:complexContent>
+ </xsd:complexType>
+ </xsd:element>
+
+ <xsd:complexType name="bus">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ A bus (also called "channel" by others) is a means by
+ which Services communicate with each other (JMS, FTP,
+ HTTP, etc).
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element maxOccurs="unbounded" minOccurs="0"
+ ref="jesb:property" />
+ </xsd:sequence>
+ <xsd:attribute name="busid" type="xsd:string"
use="required">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ An id such that this bus can be referenced by
+ Service listn.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ </xsd:complexType>
+ <xsd:element name="bus" type="jesb:bus" />
+
+ <xsd:element name="schedule-provider"
+ substitutionGroup="jesb:provider">
+ <xsd:complexType>
+ <xsd:complexContent>
+ <xsd:extension base="jesb:provider">
+ <xsd:sequence>
+ <xsd:element maxOccurs="unbounded" minOccurs="1"
+ ref="jesb:schedule" />
+ </xsd:sequence>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+ </xsd:element>
+
+ <xsd:complexType abstract="true" name="schedule">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ Schedule Configuration.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element maxOccurs="unbounded" minOccurs="0"
+ ref="jesb:property" />
+ </xsd:sequence>
+ <xsd:attribute name="scheduleid" type="xsd:string"
+ use="required">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ An id such that this schedule can be referenced by
+ Service listner.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="startDate" type="xsd:dateTime"
+ use="optional">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ Schedule start time and date.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="endDate" type="xsd:dateTime"
+ use="optional">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ Schedule end time and date.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ </xsd:complexType>
+ <xsd:element abstract="true" name="schedule"
type="jesb:schedule" />
+
+ <xsd:element name="simple-schedule"
+ substitutionGroup="jesb:schedule">
+ <xsd:complexType>
+ <xsd:complexContent>
+ <xsd:extension base="jesb:schedule">
+ <xsd:attribute name="frequency" use="optional"
type="xsd:long" default="10">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">Schedule
frequency.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="frequencyUnits"
use="optional" type="jesb:frequency-unit"
default="seconds">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">Schedule
frequency time units.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute default="-1" name="execCount"
type="xsd:int" use="optional">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ Schedule execution count. -1 to execute indefinitely.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+ </xsd:element>
+
+ <xsd:simpleType name="frequency-unit">
+ <xsd:restriction base="xsd:NMTOKEN">
+ <xsd:enumeration value="seconds"/>
+ <xsd:enumeration value="milliseconds"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+ <xsd:element name="cron-schedule"
+ substitutionGroup="jesb:schedule">
+ <xsd:complexType>
+ <xsd:complexContent>
+ <xsd:extension base="jesb:schedule">
+ <xsd:attribute name="cronExpression"
+ type="xsd:string" use="optional">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ Schedule CRON expression.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+ </xsd:element>
+
+ <!--
88888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888
+ Service and Action types.
+ 88888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888-->
+
+ <xsd:element name="services">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ A container for services.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element maxOccurs="unbounded" minOccurs="1"
+ ref="jesb:service" />
+ </xsd:sequence>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="service">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ A service has listener or gateways and a list of
+ actions.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element maxOccurs="1" minOccurs="0"
ref="jesb:security" />
+ <xsd:element maxOccurs="unbounded" minOccurs="0"
+ ref="jesb:property" />
+ <xsd:element maxOccurs="1" minOccurs="0"
+ ref="jesb:listeners" />
+ <xsd:element maxOccurs="1" minOccurs="0"
+ ref="jesb:actions" />
+ </xsd:sequence>
+ <xsd:attribute name="category"
+ use="required">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ The service category which will be used to store
+ a reference to this service in the registry.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleType>
+ <xsd:restriction
base="xsd:string">
+ <xsd:maxLength
value="255"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+ </xsd:attribute>
+ <xsd:attribute name="name"
+ use="required">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ The service name which will be used to store a
+ reference to this service in the registry.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleType>
+ <xsd:restriction
base="xsd:string">
+ <xsd:maxLength
value="255"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+ </xsd:attribute>
+ <xsd:attribute name="description"
+ use="required">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ The service description which stored with this
+ service in the registry, so that the purpose of
+ this service can be understood by a human.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleType>
+ <xsd:restriction
base="xsd:string">
+ <xsd:maxLength
value="255"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+ </xsd:attribute>
+ <xsd:attribute name="alertTimeThreshold"
+ use="optional">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ A value used for monitoring to produce alerts
+ if the service takes longer to complete than
+ the value of the field.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleType>
+ <xsd:restriction base="xsd:decimal"/>
+ </xsd:simpleType>
+ </xsd:attribute>
+ <xsd:attribute name="alertLengthThreshold"
+ use="optional">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ A value used for monitoring to produce alerts
+ if the service takes longer to complete than
+ the value of the field.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleType>
+ <xsd:restriction base="xsd:decimal"/>
+ </xsd:simpleType>
+ </xsd:attribute>
+ <xsd:attribute name="invmScope" type="jesb:invmScope"
use="optional">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ All services are locally invokable over an "in VM"
transport. Invokability
+ can be scoped using this attribute. An "invmScope"
value of "NONE" means that
+ the Service should not be locally invokable over the "in
VM" transport.
+ More fine grained scoping will be added in the future.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="invmTransacted"
type="xsd:boolean">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ Should the InVM listener execute in a transacted environment?
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="recordRoute"
type="xsd:boolean">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ Should the service update the message header upon service
entrance and exit?
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+
+ </xsd:complexType>
+ </xsd:element>
+
+ <xsd:simpleType name="invmScope">
+ <xsd:restriction base="xsd:NMTOKEN">
+ <!-- Not invokable over InVM -->
+ <xsd:enumeration value="NONE" />
+
+ <!-- Invokable over InVM only from within the same/local deployment.
-->
+ <!-- xsd:enumeration value="LOCAL" / -->
+
+ <!-- (DEFAULT) Invokable over InVM from within the same classloader scope.
-->
+ <xsd:enumeration value="GLOBAL" />
+ </xsd:restriction>
+ </xsd:simpleType>
+
+ <xsd:simpleType name="mepType">
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value="RequestResponse" />
+ <xsd:enumeration value="OneWay" />
+ </xsd:restriction>
+ </xsd:simpleType>
+
+ <xsd:element name="actions">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ A container for actions belonging to this service.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element maxOccurs="unbounded" minOccurs="1"
+ ref="jesb:action" />
+ </xsd:sequence>
+ <xsd:attribute name="mep" type="jesb:mepType" />
+ <xsd:attribute name="inXsd"
type="xsd:string" />
+ <xsd:attribute name="outXsd"
type="xsd:string" />
+ <xsd:attribute name="requestLocation"
type="xsd:string"/>
+ <xsd:attribute name="responseLocation"
type="xsd:string"/>
+ <xsd:attribute name="faultXsd"
type="xsd:string" />
+ <xsd:attribute name="webservice"
type="xsd:boolean" default="true"/>
+ <xsd:attribute name="validate"
type="xsd:boolean" default="false"/>
+ <xsd:attribute name="addressing"
type="xsd:boolean" default="false"/>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="action">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ An action which will act on the message when it is
+ received by the service. Actions can be chained. Hence
+ you can specify a list of actions. Action are
+ 'pluggable' and can be custom code, however JBossESB
+ comes with a list of predefined actions.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element maxOccurs="unbounded" minOccurs="0"
+ ref="jesb:property" />
+ </xsd:sequence>
+ <xsd:attribute name="name" type="xsd:string"
+ use="required">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ The logical name of the action.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="class" type="xsd:string"
+ use="required">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ The full classname of the java class in which
+ this action is defined.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="process" type="xsd:string">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ The name of the method on the action that needs
+ to be called when the message is received.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="alertTimeThreshold"
+ use="optional">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ A value used for monitoring to produce alerts
+ if the service takes longer to complete than
+ the value of the field.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleType>
+ <xsd:restriction base="xsd:decimal"/>
+ </xsd:simpleType>
+ </xsd:attribute>
+ <xsd:attribute name="alertLengthThreshold"
+ use="optional">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ A value used for monitoring to produce alerts
+ if the service takes longer to complete than
+ the value of the field.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleType>
+ <xsd:restriction base="xsd:decimal"/>
+ </xsd:simpleType>
+ </xsd:attribute>
+ </xsd:complexType>
+ </xsd:element>
+
+ <xsd:element name="security">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element maxOccurs="unbounded" minOccurs="0"
ref="jesb:property" />
+ </xsd:sequence>
+ <xsd:attribute name="runAs" type="xsd:string"
use="optional">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ Is used to specify that a specific security role given by the role-name value
should be used
+ as the security identity for this service.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="rolesAllowed" type="xsd:string"
use="optional">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ Specifies one or more logical roles that are allowed to acccess the service.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="moduleName" type="xsd:string"
use="required">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="useCallerIdentity" type="xsd:string"
use="optional">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ Is used to indicate that the current caller's identity should be propagated as
the security identity
+ this service.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="callbackHandler" type="xsd:string"
use="optional">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ CallbackHandler implementation class. This will override the global callbackhandler
+ which can be specified in jbossesb-properties.xml
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ </xsd:complexType>
+ </xsd:element>
+
+ <!--
88888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888
+ Listener base types.
+ 88888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888-->
+
+ <xsd:element name="listeners">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ A container for all listener for a service.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element maxOccurs="unbounded" minOccurs="1"
+ ref="jesb:abstract-listener" />
+ </xsd:sequence>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:complexType name="listener">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ A listener is a listener or a gateway. The listener
+ defines to which bus the service is listening. The
+ service can simultaneniously listen to multiple buses.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element maxOccurs="unbounded" minOccurs="0"
+ ref="jesb:property" />
+ </xsd:sequence>
+ <xsd:attribute name="name" type="xsd:string"
use="required">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ The logical name of the listener.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute default="$not-defined$" name="busidref"
+ type="xsd:string" use="optional">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ A reference to an existing bus, as defined in the
+ 'buses' section of this jbossesb config.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ </xsd:complexType>
+
+ <xsd:complexType abstract="true"
name="gateway-only-listener">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ Listener type that can only act as a message-unaware listener (gateway)
.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:complexContent>
+ <xsd:extension base="jesb:listener" />
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:complexType name="dual-listener">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ Listener type that can act as both a message-aware and message-unaware
listener (gateway).
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:complexContent>
+ <xsd:extension base="jesb:listener">
+ <xsd:attribute default="1" name="maxThreads"
type="xsd:int" use="optional">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ The number of threads which will be started for this
+ listener.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute default="false" name="is-gateway"
type="xsd:boolean" use="optional">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ true if the listener is a gateway. A gateway is an
+ ESB-Unware listener, while a listener is ESB-aware
+ and as such expects jbossesb formatted messages.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="abstract-listener" type="jesb:listener"
abstract="true"/>
+
+ <xsd:element name="listener" type="jesb:dual-listener"
substitutionGroup="jesb:abstract-listener"/>
+
+ <xsd:complexType abstract="true"
+ name="abstract-scheduled-listener">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ Abstract scheduled listener.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:complexContent>
+ <xsd:extension base="jesb:dual-listener">
+ <xsd:attribute default="-1"
+ name="poll-frequency-seconds" type="xsd:int"
use="optional">
+<!-- Purposely defaults to -1 -->
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ DEPRECATED (use "schedule-frequency" or
+ "scheduleidref"): The frequency with which
+ this listener is scheduled (in seconds).
+ Defaults to 10 seconds.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute default="-1" name="schedule-frequency"
+ type="xsd:int" use="optional">
+<!-- Purposely defaults to -1 -->
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ The frequency with which this listener is
+ scheduled (in seconds). Defaults to 10
+ seconds.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="scheduleidref" type="xsd:string"
+ use="optional">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ The id reference for the schedule that's
+ driving this scheduled listener.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="scheduled-listener"
+ substitutionGroup="jesb:abstract-listener">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ Scheduled listener.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:complexType>
+ <xsd:complexContent>
+ <xsd:extension
+ base="jesb:abstract-scheduled-listener">
+ <xsd:attribute name="event-processor"
+ type="xsd:string" use="required">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ Message Composer class name.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="transacted"
+ type="xsd:boolean">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ Should the schedule execute in a
+ transacted environment?
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+ </xsd:element>
+
+ <!-- JCA Types -->
+ <xsd:element name="activation-config">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ Activation configuration for jca bus or listener.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element maxOccurs="unbounded" minOccurs="1"
+ ref="jesb:property" />
+ </xsd:sequence>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="jca-gateway"
substitutionGroup="jesb:abstract-listener">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ A specific gateway using JCA inflow.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:complexType>
+ <xsd:complexContent>
+ <xsd:extension base="jesb:gateway-only-listener">
+ <xsd:sequence>
+ <xsd:element maxOccurs="1" minOccurs="0"
+ ref="jesb:activation-config" />
+ </xsd:sequence>
+ <xsd:attribute name="adapter" type="xsd:string"
+ use="required" />
+ <xsd:attribute name="endpointClass"
+ type="xsd:string" use="required" />
+ <xsd:attribute name="messagingType"
+ type="xsd:string" use="optional" />
+ <xsd:attribute name="jcaBridge" type="xsd:string"
+ use="optional" />
+ <xsd:attribute name="transacted" type="xsd:boolean"
+ use="optional" />
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+ </xsd:element>
+
+ <!--
88888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888
+ JMS Type Implementations.
+ 88888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888-->
+
+ <xsd:element name="jms-message-filter">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ A JMS filter can add information to a Queue, or Topic.
+ For example you can defined a message-selector. However,
+ you can also push the queue name and type into this
+ filter given you did not already specify them in the
+ jms-bus.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:complexType>
+ <xsd:attribute name="dest-name" type="xsd:string"
+ use="required">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ Name of the Queue of Topic.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="dest-type" use="required">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ A Queue delivers a message once, a topic
+ broadcasts a message to all registered
+ listeners.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleType>
+ <xsd:restriction base="xsd:NMTOKEN">
+ <xsd:enumeration value="QUEUE" />
+ <xsd:enumeration value="TOPIC" />
+ </xsd:restriction>
+ </xsd:simpleType>
+ </xsd:attribute>
+ <xsd:attribute name="selector" type="xsd:string">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ A message-selector allows multiple listeners to
+ register with the same queue/topic, but they
+ will filter on this message-selector.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute default="true" name="persistent"
+ type="xsd:boolean" use="optional">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ If false, JMS messages will be sent
+ non-persistent. Default is to send messages with
+ DeliveryMode.PERSISTENT.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute default="AUTO_ACKNOWLEDGE"
+ name="acknowledge-mode" type="xsd:string"
use="optional">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ JMS Session acknowledge mode. Can be on of
+ AUTO_ACKNOWLEDGE (default), CLIENT_ACKNOWLEDGE,
+ or DUPS_OK_ACKNOWLEDGE.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute
+ name="jms-security-principal" type="xsd:string"
use="optional">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ JMS destination username. Will be used when creating a connection
+ to the destination.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute
+ name="jms-security-credential" type="xsd:string"
use="optional">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ JMS destination password. Will be used when creating a connection
+ to the destination. Will be ignored if username is not specified.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute default="false" name="transacted"
+ type="xsd:boolean" use="optional">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ If true, JMS sessions will be transaction aware.
+ Default is false.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="jms-bus" substitutionGroup="jesb:bus">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ A JMS-Bus is a specific instance of a bus using the JMS
+ protocol.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:complexType>
+ <xsd:complexContent>
+ <xsd:extension base="jesb:bus">
+ <xsd:sequence>
+ <xsd:element maxOccurs="1" minOccurs="0"
+ ref="jesb:jms-message-filter" />
+ </xsd:sequence>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:complexType name="jms-provider-type">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ A specific instance of a provider, providing JMS.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:complexContent>
+ <xsd:extension base="jesb:bus-provider">
+ <xsd:attribute name="connection-factory"
+ type="xsd:string" use="required">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ The connection-factory used to lookup
+ queues/topics in a naming directory (JNDI)
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="jndi-context-factory"
+ type="xsd:string">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ The context factory class the JBossESB will
+ use to do naming lookups.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="jndi-pkg-prefix"
+ type="xsd:string">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ The pkg-prefix which will be used to do
+ naming lookups. It is left empty by default.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="jndi-URL" type="xsd:anyURI">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ The URL used to do naming lookups.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+ <xsd:element name="jms-provider"
substitutionGroup="jesb:provider"
+ type="jesb:jms-provider-type" />
+
+ <xsd:element name="jms-jca-provider"
+ substitutionGroup="jesb:provider">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ A specific instance of a provider, providing JMS through
+ JCA inflow.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:complexType>
+ <xsd:complexContent>
+ <xsd:extension base="jesb:jms-provider-type">
+ <xsd:sequence>
+ <xsd:element maxOccurs="1" minOccurs="0"
+ ref="jesb:activation-config" />
+ </xsd:sequence>
+ <xsd:attribute name="adapter" type="xsd:string">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ The artifact containing the resource
+ adapter.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="endpointClass"
+ type="xsd:string">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ The class name of the JCA endpoint.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="messagingType"
+ type="xsd:string">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ The class name of the messaging specific
+ interface.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="jcaBridge" type="xsd:string">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ The class name of the JCA Bridge.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="transacted"
+ type="xsd:boolean">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ The transacted flag.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="providerAdapterJNDI"
type="xsd:string">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ The JNDI location of an alternate provider adapter
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="jms-listener"
+ substitutionGroup="jesb:abstract-listener">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ A specific listener using the jms protocol.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:complexType>
+ <xsd:complexContent>
+ <xsd:extension base="jesb:dual-listener">
+ <xsd:sequence>
+ <xsd:element maxOccurs="1" minOccurs="0"
+ ref="jesb:jms-message-filter" />
+ </xsd:sequence>
+ <xsd:attribute name="clientId" type="xsd:string"
use="optional">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ Client ID to be associated with the connection. Used to associate a connection
and its objects with
+ state maintained on behalf of the client by a provider e.g. durable
subscriptions.
+ <p/>
+ If a clientId is required (e.g. when a 'durableSubscriptionName' is
specified), but is not specified,
+ it will default to the listener name.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="durableSubscriptionName"
type="xsd:string" use="optional">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ Durable subscription name. Only relevant for JMS Topics.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+ </xsd:element>
+
+ <!--
88888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888
+ FS Type Implementations.
+ 88888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888-->
+ <xsd:element name="fs-message-filter">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ A FS filter.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:complexType>
+ <xsd:attribute name="directory" type="xsd:string"
+ use="required">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ The file share that is monitored for incoming
+ new files.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="input-suffix" type="xsd:string"
+ use="optional">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ The file suffix used to filter files targeted
+ for comsumption by the ESB (note: add the dot,
+ so something like '.esbIn').
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute default=".esbInProcess" name="work-suffix"
+ type="xsd:string" use="optional">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ The file suffix used while the file is being
+ process, so that another thread or process won't
+ pick it up too.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute default="true" name="post-delete"
+ type="xsd:boolean" use="optional">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ If true, the file will be deleted after it is
+ processed. Note that in that case post-directory
+ and post-suffix have no effect.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute default="true" name="post-rename"
+ type="xsd:boolean" use="optional">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ If true, the file will be renamed after it is
+ processed. Note that in that case post-directory
+ and post-suffix have no effect.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute default="processed" name="post-directory"
+ type="xsd:string" use="optional">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ The file share to which the file will be moved
+ after it is processed by the ESB
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute default=".esbDone" name="post-suffix"
+ type="xsd:string" use="optional">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ The file suffix which will be added to the file
+ name after it is processed.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute default="true" name="error-delete"
+ type="xsd:boolean" use="optional">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ If true, the file will be deleted if an error
+ occurs during processing. Note that in that case
+ error-directory and error-suffix have no effect.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute default="processed" name="error-directory"
+ type="xsd:string" use="optional">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ The file share to which the file will be moved
+ after when an error occurs during processing.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute default=".esbERROR" name="error-suffix"
+ type="xsd:string" use="optional">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ The file suffix which will be added to the file
+ name after an error occurs during processing.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="fs-bus" substitutionGroup="jesb:bus">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ A Fs-Bus is a specific instance of a bus using the File
+ protocol.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:complexType>
+ <xsd:complexContent>
+ <xsd:extension base="jesb:bus">
+ <xsd:sequence>
+ <xsd:element maxOccurs="1" minOccurs="0"
+ ref="jesb:fs-message-filter" />
+ </xsd:sequence>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="fs-provider"
substitutionGroup="jesb:provider">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ A specific instance of a provider, providing a file
+ system (local fileshare or NAS).
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:complexType>
+ <xsd:complexContent>
+ <xsd:extension base="jesb:bus-provider" />
+ </xsd:complexContent>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="fs-listener"
substitutionGroup="jesb:abstract-listener">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ A specific listener using the file protocol.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:complexType>
+ <xsd:complexContent>
+ <xsd:extension
+ base="jesb:abstract-scheduled-listener">
+ <xsd:sequence>
+ <xsd:element maxOccurs="1" minOccurs="0"
+ ref="jesb:fs-message-filter" />
+ </xsd:sequence>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+ </xsd:element>
+ <!--
88888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888
+ FTP Type Implementations.
+ 88888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888-->
+ <xsd:element name="ftp-message-filter">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ A FTP filter.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:complexType>
+ <xsd:attribute name="directory" type="xsd:string"
+ use="required">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ The ftp directory that is monitored for incoming
+ new files.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="username" type="xsd:string"
+ use="required">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ The username used to access the ftp server
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="password" type="xsd:string">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ The password used to access the ftp server.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="input-suffix" type="xsd:string"
+ use="required">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ The file suffix used to filter files targeted
+ for comsumption by the ESB (note: add the dot,
+ so something like '.esbIn').
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute default=".esbInProcess" name="work-suffix"
+ type="xsd:string" use="optional">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ The file suffix used while the file is being
+ process, so that another thread or process won't
+ pick it up too.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute default="true" name="post-delete"
+ type="xsd:boolean" use="optional">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ If true, the file will be deleted after it is
+ processed. Note that in that case post-directory
+ and post-suffix have no effect.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute default="true" name="post-rename"
+ type="xsd:boolean" use="optional">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ If true, the file will be renamed after it is
+ processed. Note that in that case post-directory
+ and post-suffix have no effect.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="post-directory" type="xsd:string"
+ use="optional">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ The ftp directory to which the file will be
+ moved after it is processed by the ESB
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute default=".esbDone" name="post-suffix"
+ type="xsd:string" use="optional">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ The file suffix which will be added to the file
+ name after it is processed.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute default="true" name="error-delete"
+ type="xsd:boolean" use="optional">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ If true, the file will be deleted if an error
+ occurs during processing. Note that in that case
+ error-directory and error-suffix have no effect.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute default="processed" name="error-directory"
+ type="xsd:string" use="optional">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ The ftp directory to which the file will be
+ moved after when an error occurs during
+ processing.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute default=".esbERROR" name="error-suffix"
+ type="xsd:string" use="optional">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ The file suffix which will be added to the file
+ name after an error occurs during processing.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="passive" type="xsd:boolean"
+ use="optional">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ This is an ftp server setting which may vary per
+ session.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute default="ftp" name="protocol"
+ use="optional">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ The protocol, can be sftp (SSH File Transfer
+ Protocol), ftps (FTP over SLL) and ftp (to which
+ it defaults).
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleType>
+ <xsd:restriction base="xsd:NMTOKEN">
+ <xsd:enumeration value="ftp" />
+ <xsd:enumeration value="ftps" />
+ <xsd:enumeration value="sftp" />
+ </xsd:restriction>
+ </xsd:simpleType>
+ </xsd:attribute>
+ <xsd:attribute name="certificate-url" type="xsd:string"
+ use="optional">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ The url to a public server certificate for ftps, or to a
+ private certificate for sftp client verification. sftp certificate
+ can be located via a resource.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="certificate-name" type="xsd:string"
+ use="optional">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ The common name of a certificate, which may be needed
+ for ftps.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="certificate-passphrase" type="xsd:string"
+ use="optional">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ The passphrase of the private key, if necessary, for sftp client verification.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute default="false" name="read-only"
+ type="xsd:boolean" use="optional">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ If true, the ftp server does not permit write
+ opertations on files. Note that in this case the
+ following properties have no effect:
+ work-suffix, post-delete, post-directory,
+ post-suffix, error-delete, error-directory, and
+ error-suffix.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="ftp-bus" substitutionGroup="jesb:bus">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ A FTP-Bus is a specific instance of a bus using the FTP
+ protocol.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:complexType>
+ <xsd:complexContent>
+ <xsd:extension base="jesb:bus">
+ <xsd:sequence>
+ <xsd:element maxOccurs="1" minOccurs="0"
+ ref="jesb:ftp-message-filter" />
+ </xsd:sequence>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="ftp-provider"
+ substitutionGroup="jesb:provider">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ A specific instance of a provider, providing a ftp
+ service.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:complexType>
+ <xsd:complexContent>
+ <xsd:extension base="jesb:bus-provider">
+ <xsd:attribute name="hostname" type="xsd:string"
+ use="required">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ The ftp hostname, as it can be resolved
+ by DNS.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="ftp-listener"
+ substitutionGroup="jesb:abstract-listener">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ A specific listener using the ftp protocol.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:complexType>
+ <xsd:complexContent>
+ <xsd:extension
+ base="jesb:abstract-scheduled-listener">
+ <xsd:sequence>
+ <xsd:element maxOccurs="1" minOccurs="0"
+ ref="jesb:ftp-message-filter" />
+ </xsd:sequence>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+ </xsd:element>
+
+ <!--
88888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888
+ SQL Type Implementations.
+ 88888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888-->
+ <xsd:element name="sql-message-filter">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ A SQL filter.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:complexType>
+ <xsd:attribute name="tablename" type="xsd:string"
+ use="required">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ The table in which esb message are stored.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="message-id-column"
+ type="xsd:string" use="required">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ A unique key (PK) in the table.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="retry-count-column"
type="xsd:string" use="optional">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ Column name for storing the message delivery retry count.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="message-column"
+ type="xsd:string" use="required">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ The field that holds the serialized message.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="status-column"
+ type="xsd:string" use="required">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ This column contents ('P', 'W', 'E' or 'D')
+ indicates if the row is pending (P), in process
+ (W), in error(E) or done (D) if postDelete
+ and/or errorDelete are 'true' rows might be
+ deleted
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="where-condition" use="optional"
+ type="xsd:string" default="">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ A where clause, not including the word where,
+ which is applied to the query.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="order-by" use="optional"
+ type="xsd:string" default="">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ A where clause, not including the word where,
+ which is applied to the query.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="insert-timestamp-column" use="optional"
+ type="xsd:string">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ Holds the timestamp when the record was
+ inserted.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute default="true" name="post-delete"
+ type="xsd:boolean" use="optional">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ If true, records will be deleted after
+ processing.((e.g. no rows with a 'D' for done,
+ in column defined in 'status_column')
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute default="true" name="error-delete"
+ type="xsd:boolean" use="optional">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ If true, records in error will be deleted after
+ attempted picked up for processing.(e.g. no rows
+ with a 'E' for error, in column defined in
+ 'status_column')
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="sql-bus" substitutionGroup="jesb:bus">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ A SQL-Bus is a specific instance of a bus using the SQL
+ protocol.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:complexType>
+ <xsd:complexContent>
+ <xsd:extension base="jesb:bus">
+ <xsd:sequence>
+ <xsd:element maxOccurs="1" minOccurs="0"
+ ref="jesb:sql-message-filter" />
+ </xsd:sequence>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="sql-provider"
+ substitutionGroup="jesb:provider">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ A specific instance of a provider, providing a db
+ service.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:complexType>
+ <xsd:complexContent>
+ <xsd:extension base="jesb:bus-provider">
+ <xsd:attribute name="datasource" type="xsd:string"
+ use="optional">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ The name of the datasource.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="url" type="xsd:string"
+ use="optional">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ The url needed to connect to the db.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="driver" type="xsd:string"
+ use="optional">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ The driver needed to connect to the db.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="username" type="xsd:string"
+ use="optional">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ The username used to access the
+ database.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="password" type="xsd:string"
+ use="optional">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ The password used to access the
+ database.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="transacted"
+ type="xsd:boolean">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ The transacted flag.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="sql-listener"
+ substitutionGroup="jesb:abstract-listener">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ A specific listener using the SQL protocol.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:complexType>
+ <xsd:complexContent>
+ <xsd:extension base="jesb:dual-listener">
+ <xsd:sequence>
+ <xsd:element maxOccurs="1" minOccurs="0"
+ ref="jesb:sql-message-filter" />
+ </xsd:sequence>
+ <xsd:attribute default="10"
+ name="poll-frequency-seconds" use="optional">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ The frequency with which this listener
+ polls the db in seconds. Defaults to 10
+ seconds.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleType>
+ <xsd:restriction base="xsd:integer">
+ <xsd:minExclusive value="0" />
+ </xsd:restriction>
+ </xsd:simpleType>
+ </xsd:attribute>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+ </xsd:element>
+
+ <!--
88888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888
+ Hibernate Type Implementations.
+ 88888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888-->
+ <xsd:element name="hibernate-message-filter">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ A Hibernate filter.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:complexType>
+ <xsd:attribute name="classname" type="xsd:string"
+ use="required">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ The class name to monitor.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute default="message_id" name="event"
+ type="xsd:string" use="optional">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ A comma-separated list of events to intercept.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="hibernate-bus"
substitutionGroup="jesb:bus">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ A hibernate-bus is a specific instance of a bus using
+ the Hibernate protocol.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:complexType>
+ <xsd:complexContent>
+ <xsd:extension base="jesb:bus">
+ <xsd:sequence>
+ <xsd:element maxOccurs="unbounded" minOccurs="1"
+ ref="jesb:hibernate-message-filter" />
+ </xsd:sequence>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="hibernate-provider"
+ substitutionGroup="jesb:provider">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ A specific instance of a provider, providing a hibernate
+ service.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:complexType>
+ <xsd:complexContent>
+ <xsd:extension base="jesb:bus-provider">
+ <xsd:attribute name="hibernate-cfg-file"
+ type="xsd:string" use="required">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ The Hibernate configuration file to use.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="hibernate-listener"
+ substitutionGroup="jesb:abstract-listener">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ A specific listener using the hibernate protocol.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:complexType>
+ <xsd:complexContent>
+ <xsd:extension base="jesb:dual-listener">
+ <xsd:sequence>
+ <xsd:element maxOccurs="unbounded" minOccurs="0"
+ ref="jesb:hibernate-message-filter" />
+ </xsd:sequence>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+ </xsd:element>
+
+
+
+ <!--
88888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888
+ JBoss Remoting Type Implementations.
+ 88888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888-->
+ <xsd:element name="jbr-bus" substitutionGroup="jesb:bus">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ JBoss Remoting Bus
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:complexType>
+ <xsd:complexContent>
+ <xsd:extension base="jesb:bus">
+ <xsd:attribute name="port" type="xsd:int"
+ use="required">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ JBoss Remoting Server listen port.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="jbr-provider"
+ substitutionGroup="jesb:provider">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ JBoss Remoting Provider.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:complexType>
+ <xsd:complexContent>
+ <xsd:extension base="jesb:bus-provider">
+ <xsd:attribute name="protocol" use="required">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ Jboss Remoting Listener/Server protocol.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleType>
+ <xsd:restriction base="xsd:NMTOKEN">
+ <xsd:enumeration value="http" />
+ <xsd:enumeration value="https" />
+ <xsd:enumeration value="socket" />
+ <xsd:enumeration value="sslsocket" />
+ </xsd:restriction>
+ </xsd:simpleType>
+ </xsd:attribute>
+ <xsd:attribute name="host" type="xsd:string">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ JBoss Remoting Server bind address. When
+ not specified, defaults to
+ InetAddress.getLocalHost().getHostName().
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="jbr-listener"
+ substitutionGroup="jesb:abstract-listener">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ JBoss Remoting Listener.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:complexType>
+ <xsd:complexContent>
+ <xsd:extension base="jesb:dual-listener" />
+ </xsd:complexContent>
+ </xsd:complexType>
+ </xsd:element>
+
+
+ <!--
88888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888
+ Http Type Implementations.
+
88888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888-->
+ <xsd:element name="http-bus" substitutionGroup="jesb:bus">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ Http Bus
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:complexType>
+ <xsd:complexContent>
+ <xsd:extension base="jesb:bus">
+ <xsd:choice minOccurs="0" maxOccurs="2">
+ <xsd:element name="protected-methods"
minOccurs="0" maxOccurs="1">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element name="method"
minOccurs="1" maxOccurs="5">
+ <xsd:complexType>
+ <xsd:attribute name="name"
use="required">
+ <xsd:simpleType>
+ <xsd:restriction
base="xsd:NMTOKEN">
+ <xsd:enumeration
value="GET" />
+ <xsd:enumeration
value="POST" />
+ <xsd:enumeration
value="PUT" />
+ <xsd:enumeration
value="DELETE" />
+ <xsd:enumeration
value="HEAD" />
+ </xsd:restriction>
+ </xsd:simpleType>
+ </xsd:attribute>
+ </xsd:complexType>
+ </xsd:element>
+ </xsd:sequence>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="allowed-roles"
minOccurs="0" maxOccurs="1">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element name="role"
minOccurs="1" maxOccurs="unbounded">
+ <xsd:complexType>
+ <xsd:attribute name="name"
type="xsd:string" use="required" />
+ </xsd:complexType>
+ </xsd:element>
+ </xsd:sequence>
+ </xsd:complexType>
+ </xsd:element>
+ </xsd:choice>
+ <xsd:attribute name="transportGuarantee"
use="optional">
+ <xsd:simpleType>
+ <xsd:restriction base="xsd:NMTOKEN">
+ <xsd:enumeration value="NONE" />
+ <xsd:enumeration value="INTEGRAL" />
+ <xsd:enumeration value="CONFIDENTIAL" />
+ </xsd:restriction>
+ </xsd:simpleType>
+ </xsd:attribute>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="http-provider"
+ substitutionGroup="jesb:provider">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ Http Provider.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:complexType>
+ <xsd:complexContent>
+ <xsd:extension base="jesb:bus-provider">
+ <xsd:sequence>
+ <xsd:element name="exception"
type="jesb:httpExceptionMappings" minOccurs="0"
maxOccurs="1" />
+ </xsd:sequence>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="http-gateway"
+ substitutionGroup="jesb:abstract-listener">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ http Listener.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:complexType>
+ <xsd:complexContent>
+ <xsd:extension base="jesb:gateway-only-listener">
+ <xsd:choice minOccurs="0" maxOccurs="2">
+ <xsd:element name="exception"
type="jesb:httpExceptionMappings">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ Exception to HTTP status code mappings.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="asyncResponse"
type="jesb:asyncHttpResponse">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ Aynchronous HTTP Response. If set, the gateway will
asynchronously deliver the
+ message to the target Service.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:choice>
+ <xsd:attribute name="urlPattern"
type="xsd:string" use="optional">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ The URL Pattern of requests to be filtered to this
listener.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="payloadAs"
type="jesb:payloadAs" use="optional">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ Set the ESB Message payload ass either a String or an
array of bytes.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:simpleType name="payloadAs">
+ <xsd:restriction base="xsd:NMTOKEN">
+ <xsd:enumeration value="STRING"/>
+ <xsd:enumeration value="BYTES"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+ <xsd:complexType name="httpExceptionMappings">
+ <xsd:sequence>
+ <xsd:element name="mapping" minOccurs="0"
maxOccurs="unbounded">
+ <xsd:complexType>
+ <xsd:attribute name="class" type="xsd:string"
use="required" />
+ <xsd:attribute name="status"
type="xsd:integer" use="required" />
+ </xsd:complexType>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="mappingsFile" type="xsd:string"
use="optional">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ Path to a .properties file containing a list of Exception to HTTP
Status code mappings.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ </xsd:complexType>
+ <xsd:complexType name="asyncHttpResponse">
+ <xsd:sequence>
+ <xsd:element name="payload" minOccurs="0"
maxOccurs="1">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ Static HTTP Gateway response payload for async message delivery
to service.
+ <p/>
+ If not set, an empty (zero length) payload will be returned in
the HTTP Response.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:complexType>
+ <xsd:attribute name="classpathResource"
type="xsd:string" use="required" />
+ <xsd:attribute name="contentType"
type="xsd:string" use="required" />
+ <xsd:attribute name="characterEncoding"
type="xsd:string" use="optional" />
+ </xsd:complexType>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="statusCode" type="xsd:int"
default="200" use="optional">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ Static HTTP Gateway response code for async message delivery to
service.
+ <p/>
+ If not set, a 200 status (OK) will be returned in the HTTP Response.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ </xsd:complexType>
+
+ <!--
88888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888
+ Groovy Gateway Type Implementations.
+ 88888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888-->
+ <xsd:element name="groovy-listener"
+ substitutionGroup="jesb:abstract-listener">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ Groovy Listener.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:complexType>
+ <xsd:complexContent>
+ <xsd:extension base="jesb:dual-listener">
+ <xsd:attribute name="script" type="xsd:string"
+ use="required">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ The path (classpath) to the Groovy
+ Gateway script. Or, the alias for the
+ pre-packaged Groovy Gateway script.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+ </xsd:element>
+
+ <!--
88888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888
+ UDP Gateway Type Implementations.
+
88888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888-->
+ <xsd:element name="udp-listener"
substitutionGroup="jesb:abstract-listener">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ UDP Listener that uses Mina.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:complexType>
+ <xsd:complexContent>
+ <xsd:extension base="jesb:dual-listener">
+ <xsd:attribute name="host" type="xsd:string"
use="required">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ The host that this listener will listen to.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="port" type="xsd:integer"
use="required">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ The port that this listener will listen to.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="handlerClass"
type="xsd:string" use="optional"
default="org.jboss.soa.esb.listeners.gateway.mina.DefaultMessageHandler">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ The fully qualified name of a
org.jboss.soa.esb.listeners.gateway.mina.MessageHandler implementation.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+ </xsd:element>
+
+ <!--
88888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888
+ Camel Type Implementations.
+
88888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888-->
+ <xsd:element name="from">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ Camel "from" element.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:complexType>
+ <xsd:attribute name="uri" type="xsd:string"
+ use="required">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ Camel "uri" attribute.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="camel-bus" substitutionGroup="jesb:bus">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ Camel Bus
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:complexType>
+ <xsd:complexContent>
+ <xsd:extension base="jesb:bus">
+ <xsd:sequence>
+ <xsd:element maxOccurs="unbounded" minOccurs="0"
+ ref="jesb:from" />
+ </xsd:sequence>
+ <xsd:attribute name="from-uri" type="xsd:string"
+ use="optional">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ Camel "from" URI.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="async" type="xsd:boolean"
+ use="optional">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ Should the Service be invoked asynchronously?
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="timeout" type="xsd:long"
+ use="optional">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ Synchronous Service invocation timeout.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="camel-provider"
+ substitutionGroup="jesb:provider">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ Camel Provider.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:complexType>
+ <xsd:complexContent>
+ <xsd:extension base="jesb:bus-provider" />
+ </xsd:complexContent>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="camel-gateway"
+ substitutionGroup="jesb:abstract-listener">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ Camel Gateway.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:complexType>
+ <xsd:complexContent>
+ <xsd:extension base="jesb:gateway-only-listener">
+ <xsd:sequence>
+ <xsd:element maxOccurs="unbounded" minOccurs="0"
+ ref="jesb:from" />
+ </xsd:sequence>
+ <xsd:attribute name="from-uri" type="xsd:string"
+ use="optional">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ Camel "from" URI.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="async" type="xsd:boolean"
+ use="optional">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ Should the Service be invoked asynchronously?
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="timeout" type="xsd:long"
+ use="optional">
+ <xsd:annotation>
+ <xsd:documentation xml:lang="en">
+ Synchronous Service invocation timeout.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+ </xsd:element>
+
+</xsd:schema>
Modified:
trunk/esb/plugins/org.jboss.tools.esb.core/src/org/jboss/tools/esb/core/model/ESBConstants.java
===================================================================
---
trunk/esb/plugins/org.jboss.tools.esb.core/src/org/jboss/tools/esb/core/model/ESBConstants.java 2012-05-03
17:25:19 UTC (rev 40761)
+++
trunk/esb/plugins/org.jboss.tools.esb.core/src/org/jboss/tools/esb/core/model/ESBConstants.java 2012-05-03
17:49:13 UTC (rev 40762)
@@ -14,32 +14,45 @@
* @author Viacheslav Kabanovich
*/
public interface ESBConstants {
- public String SCHEMA_101 =
"http://anonsvn.labs.jboss.com/labs/jbossesb/trunk/product/etc/schemas/xml/jbossesb-1.0.1.xsd";
//$NON-NLS-1$
- public String SCHEMA_110 =
"http://anonsvn.labs.jboss.com/labs/jbossesb/trunk/product/etc/schemas/xml/jbossesb-1.1.0.xsd";
//$NON-NLS-1$
- public String SCHEMA_120 =
"http://anonsvn.labs.jboss.com/labs/jbossesb/trunk/product/etc/schemas/xml/jbossesb-1.2.0.xsd";
//$NON-NLS-1$
- public String SCHEMA_130 =
"http://anonsvn.labs.jboss.com/labs/jbossesb/trunk/product/etc/schemas/xml/jbossesb-1.3.0.xsd";
//$NON-NLS-1$
+ public String VERSION_101 = "1.0.1.xsd"; //$NON-NLS-1$
+ public String VERSION_110 = "1.1.0.xsd"; //$NON-NLS-1$
+ public String VERSION_120 = "1.2.0.xsd"; //$NON-NLS-1$
+ public String VERSION_130 = "1.3.0.xsd"; //$NON-NLS-1$
+ public String VERSION_131 = "1.3.1.xsd"; //$NON-NLS-1$
+
+ public String SCHEMA_PREFIX =
"http://anonsvn.labs.jboss.com/labs/jbossesb/trunk/product/etc/schemas/xml/jbossesb-";
//$NON-NLS-1$
+ public String SCHEMA_101 = SCHEMA_PREFIX + VERSION_101;
+ public String SCHEMA_110 = SCHEMA_PREFIX + VERSION_110;
+ public String SCHEMA_120 = SCHEMA_PREFIX + VERSION_120;
+ public String SCHEMA_130 = SCHEMA_PREFIX + VERSION_130;
+ public String SCHEMA_131 = SCHEMA_PREFIX + VERSION_131;
- public String NEW_SCHEMA_101 =
"http://anonsvn.jboss.org/repos/labs/labs/jbossesb/trunk/product/etc/schemas/xml/jbossesb-1.0.1.xsd";
//$NON-NLS-1$
- public String NEW_SCHEMA_110 =
"http://anonsvn.jboss.org/repos/labs/labs/jbossesb/trunk/product/etc/schemas/xml/jbossesb-1.1.0.xsd";
//$NON-NLS-1$
- public String NEW_SCHEMA_120 =
"http://anonsvn.jboss.org/repos/labs/labs/jbossesb/trunk/product/etc/schemas/xml/jbossesb-1.2.0.xsd";
//$NON-NLS-1$
- public String NEW_SCHEMA_130 =
"http://anonsvn.jboss.org/repos/labs/labs/jbossesb/trunk/product/etc/schemas/xml/jbossesb-1.3.0.xsd";
//$NON-NLS-1$
+ public String NEW_SCHEMA_PREFIX =
"http://anonsvn.jboss.org/repos/labs/labs/jbossesb/trunk/product/etc/schemas/xml/jbossesb-";
//$NON-NLS-1$
+ public String NEW_SCHEMA_101 = NEW_SCHEMA_PREFIX + VERSION_101;
+ public String NEW_SCHEMA_110 = NEW_SCHEMA_PREFIX + VERSION_110;
+ public String NEW_SCHEMA_120 = NEW_SCHEMA_PREFIX + VERSION_120;
+ public String NEW_SCHEMA_130 = NEW_SCHEMA_PREFIX + VERSION_130;
+ public String NEW_SCHEMA_131 = NEW_SCHEMA_PREFIX + VERSION_131;
public String SUFF_101 = "101"; //$NON-NLS-1$
public String SUFF_110 = "110"; //$NON-NLS-1$
public String SUFF_120 = "120"; //$NON-NLS-1$
public String SUFF_130 = "130"; //$NON-NLS-1$
+ public String SUFF_131 = "131"; //$NON-NLS-1$
public String[] KNOWN_SUFFIXES = {
SUFF_101,
SUFF_110,
SUFF_120,
SUFF_130,
+ SUFF_131,
};
public String ENT_ESB_FILE = "FileESB"; //$NON-NLS-1$
public String ENT_ESB_FILE_101 = ENT_ESB_FILE + SUFF_101;
public String ENT_ESB_FILE_110 = ENT_ESB_FILE + SUFF_110;
public String ENT_ESB_FILE_120 = ENT_ESB_FILE + SUFF_120;
public String ENT_ESB_FILE_130 = ENT_ESB_FILE + SUFF_130;
+ public String ENT_ESB_FILE_131 = ENT_ESB_FILE + SUFF_131;
public String ENT_ESB_PROPERTY = "ESBProperty"; //$NON-NLS-1$
@@ -149,6 +162,7 @@
public String ENT_ESB_SERVICE_110 = ENT_ESB_SERVICE + SUFF_110;
public String ENT_ESB_SERVICE_120 = ENT_ESB_SERVICE + SUFF_120;
public String ENT_ESB_SERVICE_130 = ENT_ESB_SERVICE + SUFF_130;
+ public String ENT_ESB_SERVICE_131 = ENT_ESB_SERVICE + SUFF_131;
//prefix
public String ENT_ESB_ACTIONS = "ESBActions"; //$NON-NLS-1$
Modified:
trunk/esb/plugins/org.jboss.tools.esb.core/src/org/jboss/tools/esb/core/model/ESBEntityRecognizer.java
===================================================================
---
trunk/esb/plugins/org.jboss.tools.esb.core/src/org/jboss/tools/esb/core/model/ESBEntityRecognizer.java 2012-05-03
17:25:19 UTC (rev 40761)
+++
trunk/esb/plugins/org.jboss.tools.esb.core/src/org/jboss/tools/esb/core/model/ESBEntityRecognizer.java 2012-05-03
17:49:13 UTC (rev 40762)
@@ -27,53 +27,39 @@
String getEntityName(String ext, String body) {
if(body == null) return null;
- if(!isSchema(body)) {
+
+ String suffix = getSuffixBySchema(body);
+ if(suffix == null) {
return null;
}
-// int i = body.indexOf("xsi:schemaLocation"); //$NON-NLS-1$
- int i = body.indexOf("xmlns="); //$NON-NLS-1$
- if(i < 0) return null;
- int j = body.indexOf("\"", i); //$NON-NLS-1$
- if(j < 0) return null;
- int k = body.indexOf("\"", j + 1); //$NON-NLS-1$
- if(k < 0) return null;
- String schema = body.substring(j + 1, k);
-
- int i101 = schema.indexOf("1.0.1"); //$NON-NLS-1$
- if(i101 >= 0) {
- return ENT_ESB_FILE_101;
- }
- int i110 = schema.indexOf("1.1.0"); //$NON-NLS-1$
- if(i110 >= 0) {
- return ENT_ESB_FILE_110;
- }
- int i120 = schema.indexOf("1.2.0"); //$NON-NLS-1$
- if(i120 >= 0) {
- return ENT_ESB_FILE_120;
- }
- int i130 = schema.indexOf("1.3.0"); //$NON-NLS-1$
- if(i130 >= 0) {
- return ENT_ESB_FILE_130;
- }
- return null;
+ return ENT_ESB_FILE + suffix;
}
- private boolean isSchema(String body) {
+ private String getSuffixBySchema(String body) {
int i = body.indexOf("<jbossesb"); //$NON-NLS-1$
- if(i < 0) return false;
+ if(i < 0) return null;
int j = body.indexOf(">", i); //$NON-NLS-1$
- if(j < 0) return false;
+ if(j < 0) return null;
String s = body.substring(i, j);
- String q = "\"";
- return s.indexOf(q + SCHEMA_101 + q) > 0
- || s.indexOf(q + SCHEMA_110 + q) > 0
- || s.indexOf(q + SCHEMA_120 + q) > 0
- || s.indexOf(q + SCHEMA_130 + q) > 0
- || s.indexOf(q + NEW_SCHEMA_101 + q) > 0
- || s.indexOf(q + NEW_SCHEMA_110 + q) > 0
- || s.indexOf(q + NEW_SCHEMA_120 + q) > 0
- || s.indexOf(q + NEW_SCHEMA_130 + q) > 0;
+ i = s.indexOf("xmlns="); //$NON-NLS-1$
+ if(i < 0) return null;
+ j = s.indexOf("\"", i); //$NON-NLS-1$
+ if(j < 0) return null;
+ int k = s.indexOf("\"", j + 1); //$NON-NLS-1$
+ if(k < 0) return null;
+ String schema = s.substring(j + 1, k);
+ return schema.equals(SCHEMA_101) ? SUFF_101 :
+ schema.equals(SCHEMA_110) ? SUFF_110 :
+ schema.equals(SCHEMA_120) ? SUFF_120 :
+ schema.equals(SCHEMA_130) ? SUFF_130 :
+ schema.equals(SCHEMA_131) ? SUFF_131 :
+ schema.equals(NEW_SCHEMA_101) ? SUFF_101 :
+ schema.equals(NEW_SCHEMA_110) ? SUFF_110 :
+ schema.equals(NEW_SCHEMA_120) ? SUFF_120 :
+ schema.equals(NEW_SCHEMA_130) ? SUFF_130 :
+ schema.equals(NEW_SCHEMA_131) ? SUFF_131 :
+ null;
}
}
Modified:
trunk/esb/plugins/org.jboss.tools.esb.core/src/org/jboss/tools/esb/core/model/SpecificActionLoader.java
===================================================================
---
trunk/esb/plugins/org.jboss.tools.esb.core/src/org/jboss/tools/esb/core/model/SpecificActionLoader.java 2012-05-03
17:25:19 UTC (rev 40761)
+++
trunk/esb/plugins/org.jboss.tools.esb.core/src/org/jboss/tools/esb/core/model/SpecificActionLoader.java 2012-05-03
17:49:13 UTC (rev 40762)
@@ -17,10 +17,10 @@
import org.jboss.tools.common.meta.XChild;
import org.jboss.tools.common.meta.XMapping;
import org.jboss.tools.common.meta.XModelEntity;
+import org.jboss.tools.common.meta.impl.XModelMetaDataImpl;
import org.jboss.tools.common.model.XModelException;
import org.jboss.tools.common.model.XModelObject;
import org.jboss.tools.common.model.impl.RegularObjectImpl;
-import org.jboss.tools.common.model.options.PreferenceModelUtilities;
import org.jboss.tools.common.model.util.XModelObjectLoaderUtil;
import org.jboss.tools.esb.core.ESBCorePlugin;
import org.jboss.tools.esb.core.model.converters.ConverterConstants;
@@ -41,7 +41,7 @@
SpecificActionLoader() {
if(classToEntity.isEmpty()) {
- XMapping m =
PreferenceModelUtilities.getPreferenceModel().getMetaData().getMapping("ESBSpecificActions");
+ XMapping m =
XModelMetaDataImpl.getInstance().getMapping("ESBSpecificActions");
if(m != null) {
String[] classes = m.getKeys();
for (String c: classes) {