Overlord SVN: r201 - in cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src: test/org/jboss/tools/overlord/jbossesb/model and 1 other directories.
by overlord-commits@lists.jboss.org
Author: objectiser
Date: 2008-07-28 07:44:17 -0400 (Mon, 28 Jul 2008)
New Revision: 201
Modified:
cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/DefaultESBLanguageModel.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/DefaultESBService.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/ESBService.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/DefaultESBLanguageModelTest.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/DefaultESBServiceTest.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/TestESBLanguageModel.java
Log:
More generation related work.....
Modified: cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/DefaultESBLanguageModel.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/DefaultESBLanguageModel.java 2008-07-25 15:48:04 UTC (rev 200)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/DefaultESBLanguageModel.java 2008-07-28 11:44:17 UTC (rev 201)
@@ -396,6 +396,12 @@
// Add provider information
String busId=service.getJMSBusIdRef();
+ // Check if busId is unique
+ if (busId == null || findJMSBus(busId) != null) {
+ busId = getUniqueBusId();
+ service.setJMSBusIdRef(busId);
+ }
+
if (busId != null) {
addJMSBus(busId, getJMSDestination(service.getCategory(),
service.getName()));
@@ -405,6 +411,18 @@
}
}
+ protected String getUniqueBusId() {
+ int index=1;
+ String ret="busId"+index;
+
+ while (findJMSBus(ret) != null) {
+ index++;
+ ret = "busId"+index;
+ }
+
+ return(ret);
+ }
+
protected void addJMSBus(String jmsBusId, String dest) {
org.w3c.dom.Element jmsBus=
Modified: cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/DefaultESBService.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/DefaultESBService.java 2008-07-25 15:48:04 UTC (rev 200)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/DefaultESBService.java 2008-07-28 11:44:17 UTC (rev 201)
@@ -35,20 +35,21 @@
*/
public class DefaultESBService extends ModelObject implements ESBService {
- private static final String LISTENERS_ELEMENT = "listeners";
- private static final String BUSIDREF_ATTR = "busidref";
- private static final String JMS_LISTENER_ELEMENT = "jms-listener";
- private static final String NAME_ATTR = "name";
- private static final String CATEGORY_ATTR = "category";
- protected static final String ROOT_PROPERTY = "root";
- protected static final String BUSINESS_OBJECT_TYPE_PROPERTY = "session";
- protected static final String CONVERSATION_TYPE_PROPERTY = "conversationType";
- protected static final String SERVICE_NAME_PROPERTY = "serviceName";
- private static final String SERVICE_ANNOTATION = "org.jboss.soa.overlord.jbossesb.actions.Service";
- private static final String SERVICE_ELEMENT = "service";
- private static final String RETRIEVE_SESSION_ACTION_CLASS = "org.jboss.soa.overlord.jbossesb.actions.RetrieveSessionAction";
- private static final String ACTION_ELEMENT = "action";
- private static final String ACTIONS_ELEMENT = "actions";
+ public static final String LISTENERS_ELEMENT = "listeners";
+ public static final String BUSIDREF_ATTR = "busidref";
+ public static final String JMS_LISTENER_ELEMENT = "jms-listener";
+ public static final String MAX_THREADS_ATTR = "maxThreads";
+ public static final String NAME_ATTR = "name";
+ public static final String CATEGORY_ATTR = "category";
+ public static final String ROOT_PROPERTY = "root";
+ public static final String BUSINESS_OBJECT_TYPE_PROPERTY = "session";
+ public static final String CONVERSATION_TYPE_PROPERTY = "conversationType";
+ public static final String SERVICE_NAME_PROPERTY = "serviceName";
+ public static final String SERVICE_ANNOTATION = "org.jboss.soa.overlord.jbossesb.actions.Service";
+ public static final String SERVICE_ELEMENT = "service";
+ public static final String RETRIEVE_SESSION_ACTION_CLASS = "org.jboss.soa.overlord.jbossesb.actions.RetrieveSessionAction";
+ public static final String ACTION_ELEMENT = "action";
+ public static final String ACTIONS_ELEMENT = "actions";
/**
* This is the constructor for the ESB service. This construct
@@ -92,15 +93,18 @@
m_service.setAttribute(CATEGORY_ATTR, category);
m_service.setAttribute(NAME_ATTR, name);
+ /* Create jms listener and bus id when added to model
org.w3c.dom.Element listeners=m_service.getOwnerDocument().createElement(LISTENERS_ELEMENT);
m_service.appendChild(listeners);
- org.w3c.dom.Element jmslistener=m_service.getOwnerDocument().createElement(JMS_LISTENER_ELEMENT);
- listeners.appendChild(jmslistener);
+ m_jmsListenerElem = m_service.getOwnerDocument().createElement(JMS_LISTENER_ELEMENT);
+ listeners.appendChild(m_jmsListenerElem);
- jmslistener.setAttribute(BUSIDREF_ATTR, getBusId(category,name));
+ m_jmsListenerElem.setAttribute(BUSIDREF_ATTR, getBusId(category,name));
+ */
}
+ /*
protected String getBusId(String category, String name) {
String ret=category.replace('.', '_');
@@ -108,6 +112,7 @@
return(ret);
}
+ */
/**
* This method initializes the service.
@@ -135,24 +140,33 @@
String str=getModel().getOriginalContents();
- int startPosition=str.indexOf("<service ");
- int endPosition=-1;
-
- while (startPosition != -1 && servCount > 0) {
- servCount--;
+ if (str != null) {
+ int startPosition=str.indexOf("<service ");
+ int endPosition=-1;
- endPosition = str.indexOf("</service>", startPosition);
+ while (startPosition != -1 && servCount > 0) {
+ servCount--;
+
+ endPosition = str.indexOf("</service>", startPosition);
+
+ if (servCount > 0) {
+ startPosition=str.indexOf("<service ", endPosition);
+ }
+ }
- if (servCount > 0) {
- startPosition=str.indexOf("<service ", endPosition);
+ if (startPosition != -1) {
+ endPosition = str.indexOf("</service>", startPosition);
+
+ getSource().setStartPosition(startPosition);
+ getSource().setEndPosition(endPosition);
}
}
- if (startPosition != -1) {
- endPosition = str.indexOf("</service>", startPosition);
-
- getSource().setStartPosition(startPosition);
- getSource().setEndPosition(endPosition);
+ // Get jms listener
+ org.w3c.dom.NodeList nl=m_service.getElementsByTagName(DefaultESBService.JMS_LISTENER_ELEMENT);
+
+ if (nl.getLength() > 0 && nl.item(0) instanceof org.w3c.dom.Element) {
+ m_jmsListenerElem = (org.w3c.dom.Element)nl.item(0);
}
}
@@ -582,16 +596,58 @@
public String getJMSBusIdRef() {
String ret=null;
- org.w3c.dom.NodeList nl=
- m_service.getElementsByTagName(JMS_LISTENER_ELEMENT);
-
- if (nl.getLength() > 0) {
- ret = ((org.w3c.dom.Element)nl.item(0)).getAttribute(BUSIDREF_ATTR);
+ if (m_jmsListenerElem != null) {
+ ret = m_jmsListenerElem.getAttribute(BUSIDREF_ATTR);
}
return(ret);
}
+ /**
+ * This method sets the JMS Bus Id Ref associated with the
+ * service's JMS listener.
+ *
+ * @param busId The JMS Bus Id Ref
+ */
+ public void setJMSBusIdRef(String busId) {
+ if (m_jmsListenerElem == null) {
+ m_jmsListenerElem = m_service.getOwnerDocument().createElement(JMS_LISTENER_ELEMENT);
+
+ org.w3c.dom.NodeList nl=m_service.getElementsByTagName(LISTENERS_ELEMENT);
+ org.w3c.dom.Element listeners=null;
+
+ if (nl.getLength() > 0) {
+ listeners = (org.w3c.dom.Element)nl.item(0);
+ } else {
+ listeners = m_service.getOwnerDocument().createElement(LISTENERS_ELEMENT);
+ if (m_service.getFirstChild() != null) {
+ m_service.insertBefore(m_service.getFirstChild(),
+ listeners);
+ } else {
+ m_service.appendChild(listeners);
+ }
+ }
+
+ if (listeners != null) {
+ listeners.appendChild(m_jmsListenerElem);
+ }
+ }
+
+ if (m_jmsListenerElem != null) {
+ m_jmsListenerElem.setAttribute(BUSIDREF_ATTR,
+ busId);
+
+ if (m_jmsListenerElem.hasAttribute(NAME_ATTR) == false) {
+ m_jmsListenerElem.setAttribute(NAME_ATTR,
+ getCategory()+"-"+getName());
+ }
+
+ if (m_jmsListenerElem.hasAttribute(MAX_THREADS_ATTR) == false) {
+ m_jmsListenerElem.setAttribute(MAX_THREADS_ATTR, "1");
+ }
+ }
+ }
+
public int hashCode() {
return(m_service.hashCode());
}
@@ -618,5 +674,6 @@
private ESBLanguageModel m_model=null;
private org.w3c.dom.Element m_service=null;
+ private org.w3c.dom.Element m_jmsListenerElem=null;
private java.util.List<ESBAction> m_actions=new java.util.Vector<ESBAction>();
}
Modified: cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/ESBService.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/ESBService.java 2008-07-25 15:48:04 UTC (rev 200)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/ESBService.java 2008-07-28 11:44:17 UTC (rev 201)
@@ -168,4 +168,12 @@
*/
public String getJMSBusIdRef();
+ /**
+ * This method sets the JMS Bus Id Ref associated with the
+ * service's JMS listener.
+ *
+ * @param busId The JMS Bus Id Ref
+ */
+ public void setJMSBusIdRef(String busId);
+
}
Modified: cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/DefaultESBLanguageModelTest.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/DefaultESBLanguageModelTest.java 2008-07-25 15:48:04 UTC (rev 200)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/DefaultESBLanguageModelTest.java 2008-07-28 11:44:17 UTC (rev 201)
@@ -123,6 +123,14 @@
model.addService(service);
+ if (service.getJMSBusIdRef() == null) {
+ fail("JMS BusIdRef not set");
+ }
+
+ if (service.getJMSBusIdRef().equals(busId) == false) {
+ fail("Bus Id should be '"+busId+"', but got: "+service.getJMSBusIdRef());
+ }
+
// Check that the jms bus id has been created
org.w3c.dom.NodeList nl=config.getElementsByTagName(
DefaultESBLanguageModel.JMS_PROVIDER_ELEMENT);
@@ -205,4 +213,57 @@
fail("JMS bus element should NOT be found");
}
}
+
+ public void testAddServiceWithNoBusId() {
+ String category="category.one";
+ String name="serviceName";
+
+ ModelReference ref=new ModelReference(ESBLanguageModel.JBOSSESB_NOTATION);
+
+ DefaultESBLanguageModel model=new DefaultESBLanguageModel(ref);
+
+ TestESBService service=new TestESBService();
+ service.setCategory(category);
+ service.setName(name);
+
+ model.addService(service);
+
+ if (service.getJMSBusIdRef() == null) {
+ fail("JMS BusIdRef not set");
+ }
+ }
+
+ public void testAddMultipleServiceWithNoBusId() {
+ String category="category.one";
+ String name1="serviceName1";
+ String name2="serviceName2";
+
+ ModelReference ref=new ModelReference(ESBLanguageModel.JBOSSESB_NOTATION);
+
+ DefaultESBLanguageModel model=new DefaultESBLanguageModel(ref);
+
+ TestESBService service1=new TestESBService();
+ service1.setCategory(category);
+ service1.setName(name1);
+
+ model.addService(service1);
+
+ if (service1.getJMSBusIdRef() == null) {
+ fail("JMS BusIdRef1 not set");
+ }
+
+ TestESBService service2=new TestESBService();
+ service2.setCategory(category);
+ service2.setName(name2);
+
+ model.addService(service2);
+
+ if (service2.getJMSBusIdRef() == null) {
+ fail("JMS BusIdRef2 not set");
+ }
+
+ if (service1.getJMSBusIdRef().equals(service2.getJMSBusIdRef())) {
+ fail("Service JMS bus ids should be unique");
+ }
+ }
}
Modified: cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/DefaultESBServiceTest.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/DefaultESBServiceTest.java 2008-07-25 15:48:04 UTC (rev 200)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/DefaultESBServiceTest.java 2008-07-28 11:44:17 UTC (rev 201)
@@ -19,6 +19,8 @@
import junit.framework.TestCase;
+import org.jboss.tools.overlord.jbossesb.model.actions.*;
+
public class DefaultESBServiceTest extends TestCase {
public void testValidateSessionClassRequired() {
@@ -216,4 +218,146 @@
"' invalid, expecting: "+name);
}
}
+
+ public void testBaseConfiguration() {
+ String category="category";
+ String name="name";
+
+ DefaultESBService service=new DefaultESBService(new TestESBLanguageModel(),
+ category, name);
+
+ org.w3c.dom.Element servElem=service.getService();
+
+ if (servElem == null) {
+ fail("Service element is null");
+ }
+
+ if (servElem.getNodeName().equals(DefaultESBService.SERVICE_ELEMENT) == false) {
+ fail("Root element is incorrect: "+servElem.getNodeName());
+ }
+
+ if (servElem.getAttribute(DefaultESBService.CATEGORY_ATTR).equals(category) == false) {
+ fail("Category invalid: "+servElem.getAttribute(DefaultESBService.CATEGORY_ATTR));
+ }
+
+ if (servElem.getAttribute(DefaultESBService.NAME_ATTR).equals(name) == false) {
+ fail("Name invalid: "+servElem.getAttribute(DefaultESBService.NAME_ATTR));
+ }
+ }
+
+ public void testSetInitialBusIdRef() {
+ String category="category";
+ String name="name";
+ String busId="myBusId";
+
+ DefaultESBService service=new DefaultESBService(new TestESBLanguageModel(),
+ category, name);
+
+ org.w3c.dom.Element servElem=service.getService();
+
+ service.setJMSBusIdRef(busId);
+
+ if (service.getJMSBusIdRef() == null) {
+ fail("Bus id not set");
+ }
+
+ if (service.getJMSBusIdRef().equals(busId) == false) {
+ fail("Bus Id not '"+busId+"', got: "+service.getJMSBusIdRef());
+ }
+
+ org.w3c.dom.NodeList nl=servElem.getElementsByTagName(DefaultESBService.JMS_LISTENER_ELEMENT);
+
+ if (nl.getLength() != 1) {
+ fail("Expecting one JMS listener element, but got: "+
+ nl.getLength());
+ }
+
+ org.w3c.dom.Element jmslistener=(org.w3c.dom.Element)nl.item(0);
+
+ if (jmslistener.getParentNode().getNodeName().equals(DefaultESBService.LISTENERS_ELEMENT) == false) {
+ fail("JMS listener parent not expected");
+ }
+
+ if (jmslistener.getParentNode().getParentNode() != servElem) {
+ fail("JMS listener grandparent should be service");
+ }
+
+ if (jmslistener.getAttribute(DefaultESBService.BUSIDREF_ATTR).equals(busId) == false) {
+ fail("Bus Id not '"+busId+"', got: "+jmslistener.getAttribute(DefaultESBService.BUSIDREF_ATTR));
+ }
+
+ if (jmslistener.hasAttribute(DefaultESBService.NAME_ATTR) == false) {
+ fail("Name attribute not set on jms listener");
+ }
+
+ if (jmslistener.hasAttribute(DefaultESBService.MAX_THREADS_ATTR) == false) {
+ fail("Max Threads attribute not set on jms listener");
+ }
+ }
+
+ public void testChangeBusIdRef() {
+ String initialBusId="busId1";
+ String initialName="name1";
+ String initialMaxThreads="2";
+ String changedBusId="busId2";
+
+ org.w3c.dom.Element top=null;
+
+ // Create an empty document
+ org.w3c.dom.Document doc=null;
+ try {
+ doc = javax.xml.parsers.DocumentBuilderFactory.
+ newInstance().newDocumentBuilder().newDocument();
+
+ top = doc.createElement(DefaultESBLanguageModel.TOP_LEVEL_ELEMENT);
+
+ } catch(Exception e) {
+ e.printStackTrace();
+ }
+
+ org.w3c.dom.Element services=doc.createElement(DefaultESBLanguageModel.SERVICES_ELEMENT);
+ top.appendChild(services);
+
+ org.w3c.dom.Element serviceElem=doc.createElement(DefaultESBLanguageModel.SERVICE_ELEMENT);
+ services.appendChild(serviceElem);
+
+ org.w3c.dom.Element listeners=doc.createElement(DefaultESBService.LISTENERS_ELEMENT);
+ serviceElem.appendChild(listeners);
+
+ org.w3c.dom.Element jmslistener=doc.createElement(DefaultESBService.JMS_LISTENER_ELEMENT);
+ listeners.appendChild(jmslistener);
+
+ jmslistener.setAttribute(DefaultESBService.BUSIDREF_ATTR, initialBusId);
+ jmslistener.setAttribute(DefaultESBService.NAME_ATTR, initialName);
+ jmslistener.setAttribute(DefaultESBService.MAX_THREADS_ATTR, initialMaxThreads);
+
+ DefaultESBService service=new DefaultESBService(new TestESBLanguageModel(),
+ serviceElem);
+
+ if (service.getJMSBusIdRef() == null) {
+ fail("JMS bus id not set");
+ }
+
+ if (service.getJMSBusIdRef().equals(initialBusId) == false) {
+ fail("JMS bus id not '"+initialBusId+"', got: "+service.getJMSBusIdRef());
+ }
+
+ service.setJMSBusIdRef(changedBusId);
+
+ if (service.getJMSBusIdRef().equals(changedBusId) == false) {
+ fail("Changed JMS bus id not '"+changedBusId+"', got: "+service.getJMSBusIdRef());
+ }
+
+ if (jmslistener.getAttribute(DefaultESBService.BUSIDREF_ATTR).equals(changedBusId)==false) {
+ fail("Changed bus id not reflected in element");
+ }
+
+ if (jmslistener.getAttribute(DefaultESBService.NAME_ATTR).equals(initialName)==false) {
+ fail("Name attribute incorrect");
+ }
+
+ if (jmslistener.getAttribute(DefaultESBService.MAX_THREADS_ATTR).equals(initialMaxThreads)==false) {
+ fail("MaxThreads attribute incorrect");
+ }
+ }
}
Modified: cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/TestESBLanguageModel.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/TestESBLanguageModel.java 2008-07-25 15:48:04 UTC (rev 200)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/TestESBLanguageModel.java 2008-07-28 11:44:17 UTC (rev 201)
@@ -19,13 +19,27 @@
import java.util.Collection;
-import org.jboss.tools.overlord.jbossesb.model.ESBService;
+import org.jboss.tools.overlord.jbossesb.model.*;
import org.scribble.model.ModelListener;
import org.scribble.model.ModelReference;
import org.w3c.dom.Element;
public class TestESBLanguageModel implements org.jboss.tools.overlord.jbossesb.model.ESBLanguageModel {
+ public TestESBLanguageModel() {
+ org.w3c.dom.Document doc=null;
+
+ // Create an empty document
+ try {
+ doc = javax.xml.parsers.DocumentBuilderFactory.
+ newInstance().newDocumentBuilder().newDocument();
+
+ m_esbConfig = doc.createElement(DefaultESBLanguageModel.TOP_LEVEL_ELEMENT);
+
+ } catch(Exception e) {
+ e.printStackTrace();
+ }
+ }
public String getOriginalContents() {
// TODO Auto-generated method stub
return null;
@@ -54,9 +68,9 @@
}
public Element getESBConfiguration() {
- // TODO Auto-generated method stub
- return null;
+ return(m_esbConfig);
}
private java.util.Map<String,ESBService> m_services=new java.util.Hashtable<String,ESBService>();
+ private org.w3c.dom.Element m_esbConfig=null;
}
15 years, 9 months
Overlord SVN: r200 - cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions.
by overlord-commits@lists.jboss.org
Author: objectiser
Date: 2008-07-25 11:48:04 -0400 (Fri, 25 Jul 2008)
New Revision: 200
Modified:
cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/AbstractESBAction.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/UnsupportedAction.java
Log:
Fix for #SOAG-44, plus some other service/action focus related issues.
Modified: cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/AbstractESBAction.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/AbstractESBAction.java 2008-07-25 11:40:41 UTC (rev 199)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/AbstractESBAction.java 2008-07-25 15:48:04 UTC (rev 200)
@@ -61,8 +61,12 @@
m_service = service;
m_action = action;
+ int servicesStartPos=-1;
+
if (m_service.getModel() != null &&
- m_service.getModel().getOriginalContents() != null) {
+ m_service.getModel().getOriginalContents() != null &&
+ (servicesStartPos=m_service.getModel().
+ getOriginalContents().indexOf("<services>")) != -1) {
// Find positional information
int servCount=m_service.getServicePosition();
@@ -70,7 +74,7 @@
String str=m_service.getModel().getOriginalContents();
- int startPosition=str.indexOf("<service ");
+ int startPosition=str.indexOf("<service", servicesStartPos+2);
int endPosition=-1;
while (startPosition != -1 && servCount > 0) {
@@ -79,13 +83,18 @@
endPosition = str.indexOf("</service>", startPosition);
if (servCount > 0) {
- startPosition=str.indexOf("<service ", endPosition);
+ startPosition=str.indexOf("<service", endPosition);
}
}
+ int actionsStartPos=-1;
+
if (actionCount > 0 &&
- startPosition != -1 && endPosition != -1) {
- startPosition=str.indexOf("<action ", startPosition);
+ startPosition != -1 && endPosition != -1 &&
+ (actionsStartPos=str.indexOf("<actions",
+ startPosition)) != -1 &&
+ actionsStartPos < endPosition) {
+ startPosition=str.indexOf("<action", actionsStartPos+2);
endPosition=-1;
while (startPosition != -1 && actionCount > 0) {
@@ -94,9 +103,17 @@
endPosition = str.indexOf("</action>", startPosition);
if (actionCount > 0) {
- startPosition=str.indexOf("<action ", endPosition);
+ startPosition=str.indexOf("<action", endPosition);
}
}
+
+ // Check whether single line element
+ int inlineEndPos=str.indexOf("/>", startPosition);
+ int nextStartPos=str.indexOf("<", startPosition+1);
+
+ if (inlineEndPos != -1 && inlineEndPos < nextStartPos) {
+ endPosition = inlineEndPos;
+ }
}
getSource().setStartPosition(startPosition);
Modified: cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/UnsupportedAction.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/UnsupportedAction.java 2008-07-25 11:40:41 UTC (rev 199)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/UnsupportedAction.java 2008-07-25 15:48:04 UTC (rev 200)
@@ -51,6 +51,17 @@
}
/**
+ * This method validates the ESB action and reports warnings or
+ * errors to the supplied model listener.
+ *
+ * @param l The model listener
+ */
+ @Override
+ public void validate(ModelListener l) {
+ // Don't validate unsupported actions
+ }
+
+ /**
* This method converts the ESB action into an equivalent
* behavioural description for conformance checking.
*
15 years, 9 months
Overlord SVN: r199 - in cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src: test/org/jboss/tools/overlord/jbossesb/model and 1 other directories.
by overlord-commits@lists.jboss.org
Author: objectiser
Date: 2008-07-25 07:40:41 -0400 (Fri, 25 Jul 2008)
New Revision: 199
Modified:
cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/DefaultESBLanguageModel.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/DefaultESBService.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/ESBService.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/DefaultESBLanguageModelTest.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/TestESBService.java
Log:
More generation stuff.
Modified: cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/DefaultESBLanguageModel.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/DefaultESBLanguageModel.java 2008-07-24 11:06:52 UTC (rev 198)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/DefaultESBLanguageModel.java 2008-07-25 11:40:41 UTC (rev 199)
@@ -40,6 +40,13 @@
public class DefaultESBLanguageModel extends org.scribble.lang.model.LanguageModel
implements ESBLanguageModel {
+ public static final String DEST_NAME_PREFIX = "queue/";
+ public static final String DEST_NAME_ATTR = "dest-name";
+ public static final String DEST_TYPE_VALUE = "QUEUE";
+ public static final String DEST_TYPE_ATTR = "dest-type";
+ public static final String JMS_MESSAGE_FILTER_ELEMENT = "jms-message-filter";
+ public static final String JMS_BUS_ELEMENT = "jms-bus";
+ public static final String BUSID_ATTR = "busid";
public static final String JBOSSESB_XML_NAMESPACE = "http://anonsvn.labs.jboss.com/labs/jbossesb/trunk/product/etc/schemas/xml...";
public static final String XMLNS = "xmlns";
public static final String TOP_LEVEL_ELEMENT = "jbossesb";
@@ -107,6 +114,13 @@
m_jmsProviderElem = doc.createElement(JMS_PROVIDER_ELEMENT);
providers.appendChild(m_jmsProviderElem);
+ // Configure the jms provider
+ m_jmsProviderElem.setAttribute("name", "JBossMQ");
+ m_jmsProviderElem.setAttribute("connection-factory", "ConnectionFactory");
+ m_jmsProviderElem.setAttribute("jndi-context-factory", "org.jnp.interfaces.NamingContextFactory");
+ m_jmsProviderElem.setAttribute("jndi-URL", "localhost");
+
+ // Create services element
m_servicesElem = doc.createElement(SERVICES_ELEMENT);
m_esbConfig.appendChild(m_servicesElem);
@@ -380,9 +394,68 @@
service);
// Add provider information
+ String busId=service.getJMSBusIdRef();
+ if (busId != null) {
+ addJMSBus(busId, getJMSDestination(service.getCategory(),
+ service.getName()));
+ } else {
+ logger.severe("Service '"+service+
+ "' does not have a bus Id");
+ }
}
+ protected void addJMSBus(String jmsBusId, String dest) {
+
+ org.w3c.dom.Element jmsBus=
+ m_esbConfig.getOwnerDocument().createElement(JMS_BUS_ELEMENT);
+ m_jmsProviderElem.appendChild(jmsBus);
+
+ jmsBus.setAttribute(BUSID_ATTR, jmsBusId);
+
+ org.w3c.dom.Element mesgFilter=
+ m_esbConfig.getOwnerDocument().createElement(JMS_MESSAGE_FILTER_ELEMENT);
+ jmsBus.appendChild(mesgFilter);
+
+ mesgFilter.setAttribute(DEST_TYPE_ATTR, DEST_TYPE_VALUE);
+ mesgFilter.setAttribute(DEST_NAME_ATTR, DEST_NAME_PREFIX+dest);
+ }
+
+ protected org.w3c.dom.Element findJMSBus(String jmsBusId) {
+ org.w3c.dom.Element ret=null;
+
+ org.w3c.dom.NodeList nl=m_jmsProviderElem.getChildNodes();
+ for (int i=0; i < nl.getLength(); i++) {
+ if (nl.item(i) instanceof org.w3c.dom.Element &&
+ nl.item(i).getNodeName().equals(JMS_BUS_ELEMENT) &&
+ ((org.w3c.dom.Element)nl.item(i)).
+ getAttribute(BUSID_ATTR).equals(jmsBusId)) {
+ ret = (org.w3c.dom.Element)nl.item(i);
+ }
+ }
+
+ return(ret);
+ }
+
+ protected void removeJMSBus(String jmsBusId) {
+ org.w3c.dom.Element bus=findJMSBus(jmsBusId);
+
+ if (bus != null) {
+ m_jmsProviderElem.removeChild(bus);
+ } else {
+ logger.severe("Remove JMS bus '"+jmsBusId+
+ "' failed, unable to find bus");
+ }
+ }
+
+ protected String getJMSDestination(String category, String name) {
+ String ret=category.replace('.', '_');
+
+ ret += "_"+name;
+
+ return(ret);
+ }
+
/**
* This method removes a service from the model.
*
@@ -393,6 +466,14 @@
service.getName()));
// Remove provider information
+ String busId=service.getJMSBusIdRef();
+
+ if (busId != null) {
+ removeJMSBus(busId);
+ } else {
+ logger.severe("Service '"+service+
+ "' does not have a bus Id");
+ }
}
/**
Modified: cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/DefaultESBService.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/DefaultESBService.java 2008-07-24 11:06:52 UTC (rev 198)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/DefaultESBService.java 2008-07-25 11:40:41 UTC (rev 199)
@@ -35,6 +35,9 @@
*/
public class DefaultESBService extends ModelObject implements ESBService {
+ private static final String LISTENERS_ELEMENT = "listeners";
+ private static final String BUSIDREF_ATTR = "busidref";
+ private static final String JMS_LISTENER_ELEMENT = "jms-listener";
private static final String NAME_ATTR = "name";
private static final String CATEGORY_ATTR = "category";
protected static final String ROOT_PROPERTY = "root";
@@ -89,9 +92,23 @@
m_service.setAttribute(CATEGORY_ATTR, category);
m_service.setAttribute(NAME_ATTR, name);
+ org.w3c.dom.Element listeners=m_service.getOwnerDocument().createElement(LISTENERS_ELEMENT);
+ m_service.appendChild(listeners);
+ org.w3c.dom.Element jmslistener=m_service.getOwnerDocument().createElement(JMS_LISTENER_ELEMENT);
+ listeners.appendChild(jmslistener);
+
+ jmslistener.setAttribute(BUSIDREF_ATTR, getBusId(category,name));
}
+ protected String getBusId(String category, String name) {
+ String ret=category.replace('.', '_');
+
+ ret += "_"+name;
+
+ return(ret);
+ }
+
/**
* This method initializes the service.
*/
@@ -556,6 +573,25 @@
return(servCount);
}
+ /**
+ * This method returns the JMS Bus Id Ref associated with the
+ * service's JMS listener.
+ *
+ * @return The JMS Bus Id Ref
+ */
+ public String getJMSBusIdRef() {
+ String ret=null;
+
+ org.w3c.dom.NodeList nl=
+ m_service.getElementsByTagName(JMS_LISTENER_ELEMENT);
+
+ if (nl.getLength() > 0) {
+ ret = ((org.w3c.dom.Element)nl.item(0)).getAttribute(BUSIDREF_ATTR);
+ }
+
+ return(ret);
+ }
+
public int hashCode() {
return(m_service.hashCode());
}
Modified: cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/ESBService.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/ESBService.java 2008-07-24 11:06:52 UTC (rev 198)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/ESBService.java 2008-07-25 11:40:41 UTC (rev 199)
@@ -160,4 +160,12 @@
*/
public int getServicePosition();
+ /**
+ * This method returns the JMS Bus Id Ref associated with the
+ * service's JMS listener.
+ *
+ * @return The JMS Bus Id Ref
+ */
+ public String getJMSBusIdRef();
+
}
Modified: cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/DefaultESBLanguageModelTest.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/DefaultESBLanguageModelTest.java 2008-07-24 11:06:52 UTC (rev 198)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/DefaultESBLanguageModelTest.java 2008-07-25 11:40:41 UTC (rev 199)
@@ -18,6 +18,8 @@
package org.jboss.tools.overlord.jbossesb.model;
import junit.framework.TestCase;
+
+import org.jboss.tools.overlord.jbossesb.model.actions.TestESBService;
import org.scribble.model.*;
public class DefaultESBLanguageModelTest extends TestCase {
@@ -102,4 +104,105 @@
fail("Element '"+DefaultESBLanguageModel.SERVICES_ELEMENT+"' not found");
}
}
+
+ public void testAddService() {
+ String busId="TestBusId";
+ String category="category.one";
+ String name="serviceName";
+
+ ModelReference ref=new ModelReference(ESBLanguageModel.JBOSSESB_NOTATION);
+
+ DefaultESBLanguageModel model=new DefaultESBLanguageModel(ref);
+
+ org.w3c.dom.Element config=model.getESBConfiguration();
+
+ TestESBService service=new TestESBService();
+ service.setJMSBusIdRef(busId);
+ service.setCategory(category);
+ service.setName(name);
+
+ model.addService(service);
+
+ // Check that the jms bus id has been created
+ org.w3c.dom.NodeList nl=config.getElementsByTagName(
+ DefaultESBLanguageModel.JMS_PROVIDER_ELEMENT);
+
+ if (nl.getLength() != 1) {
+ fail("JMS provider element not found");
+ }
+
+ org.w3c.dom.Element provider=(org.w3c.dom.Element)nl.item(0);
+
+ nl = provider.getElementsByTagName(
+ DefaultESBLanguageModel.JMS_BUS_ELEMENT);
+
+ if (nl.getLength() != 1) {
+ fail("JMS bus element not found");
+ }
+
+ org.w3c.dom.Element bus=(org.w3c.dom.Element)nl.item(0);
+
+ if (bus.getAttribute("busid").equals(busId) == false) {
+ fail("Bus had invalid busid '"+bus.getAttribute("busid")+
+ "', was expecting: "+busId);
+ }
+
+ if (bus.getParentNode() != provider) {
+ fail("Bus not contained directly within provider");
+ }
+
+ // Check bus retrieved directly
+ org.w3c.dom.Element bus2=model.findJMSBus(busId);
+
+ if (bus2 != bus) {
+ fail("Bus elements not the same");
+ }
+ }
+
+ public void testRemoveService() {
+ String busId="TestBusId";
+ String category="category.two";
+ String name="serviceName";
+
+ ModelReference ref=new ModelReference(ESBLanguageModel.JBOSSESB_NOTATION);
+
+ DefaultESBLanguageModel model=new DefaultESBLanguageModel(ref);
+
+ org.w3c.dom.Element config=model.getESBConfiguration();
+
+ TestESBService service=new TestESBService();
+ service.setJMSBusIdRef(busId);
+ service.setCategory(category);
+ service.setName(name);
+
+ model.addService(service);
+
+ // Check that the jms bus id has been created
+ org.w3c.dom.NodeList nl=config.getElementsByTagName(
+ DefaultESBLanguageModel.JMS_PROVIDER_ELEMENT);
+
+ if (nl.getLength() != 1) {
+ fail("JMS provider element not found");
+ }
+
+ org.w3c.dom.Element provider=(org.w3c.dom.Element)nl.item(0);
+
+ nl = provider.getElementsByTagName(
+ DefaultESBLanguageModel.JMS_BUS_ELEMENT);
+
+ if (nl.getLength() != 1) {
+ fail("JMS bus element not found");
+ }
+
+ // Remove the service and check that the bus entry
+ // is no longer there
+ model.removeService(service);
+
+ nl = provider.getElementsByTagName(
+ DefaultESBLanguageModel.JMS_BUS_ELEMENT);
+
+ if (nl.getLength() != 0) {
+ fail("JMS bus element should NOT be found");
+ }
+ }
}
Modified: cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/TestESBService.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/TestESBService.java 2008-07-24 11:06:52 UTC (rev 198)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/TestESBService.java 2008-07-25 11:40:41 UTC (rev 199)
@@ -147,6 +147,14 @@
}
+ public String getJMSBusIdRef() {
+ return(m_jmsBusIdRef);
+ }
+
+ public void setJMSBusIdRef(String busId) {
+ m_jmsBusIdRef = busId;
+ }
+
private String m_category=null;
private String m_name=null;
private ESBLanguageModel m_model=null;
@@ -158,4 +166,5 @@
private Class<?> m_sessionClass=null;
private String m_conversationType=null;
private List<Activity> m_contents=new java.util.Vector<Activity>();
+ private String m_jmsBusIdRef=null;
}
15 years, 9 months
Overlord SVN: r198 - in cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb: src/java/org/jboss/tools/overlord/jbossesb/model and 3 other directories.
by overlord-commits@lists.jboss.org
Author: objectiser
Date: 2008-07-24 07:06:52 -0400 (Thu, 24 Jul 2008)
New Revision: 198
Added:
cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/DefaultESBLanguageModelTest.java
Modified:
cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/META-INF/MANIFEST.MF
cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/DefaultESBLanguageModel.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/DefaultESBService.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/ESBLanguageModel.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/AbstractESBAction.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/TestESBLanguageModel.java
Log:
Initial work on using the in memory ESB config model to generate a new configuration.
Modified: cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/META-INF/MANIFEST.MF
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/META-INF/MANIFEST.MF 2008-07-23 14:28:48 UTC (rev 197)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/META-INF/MANIFEST.MF 2008-07-24 11:06:52 UTC (rev 198)
@@ -17,4 +17,4 @@
Scribble-Extensions: org.jboss.tools.overlord.jbossesb.parser.JBossESBParser,
org.jboss.tools.overlord.jbossesb.parser.JBossESBNotation,
org.jboss.tools.overlord.jbossesb.validation.ESBLanguageModelValidationRule
-Eclipse-LazyStart: true
+Bundle-ActivationPolicy: lazy
Modified: cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/DefaultESBLanguageModel.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/DefaultESBLanguageModel.java 2008-07-23 14:28:48 UTC (rev 197)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/DefaultESBLanguageModel.java 2008-07-24 11:06:52 UTC (rev 198)
@@ -40,9 +40,15 @@
public class DefaultESBLanguageModel extends org.scribble.lang.model.LanguageModel
implements ESBLanguageModel {
+ public static final String JBOSSESB_XML_NAMESPACE = "http://anonsvn.labs.jboss.com/labs/jbossesb/trunk/product/etc/schemas/xml...";
+ public static final String XMLNS = "xmlns";
+ public static final String TOP_LEVEL_ELEMENT = "jbossesb";
+ public static final String PARAMETER_RELOAD_SECS_ATTR = "parameterReloadSecs";
+ public static final String PROVIDERS_ELEMENT = "providers";
+ public static final String JMS_PROVIDER_ELEMENT = "jms-provider";
public static final String JAVA_NOTATION = "java";
- private static final String SERVICE_ELEMENT = "service";
- private static final String SERVICES_ELEMENT = "services";
+ public static final String SERVICE_ELEMENT = "service";
+ public static final String SERVICES_ELEMENT = "services";
public static final String JBOSSESB_NOTATION = "jboss-esb.xml";
@@ -60,13 +66,60 @@
m_contents = contents;
// Extract service action pipelines
- initialize();
+ initializeExistingConfig();
}
/**
+ * This constructor initializes a new ESB configuration.
+ *
+ * @param source The model reference for the JBossESB configuration
+ */
+ public DefaultESBLanguageModel(ModelReference source) {
+ m_source = source;
+
+ initializeNewConfig();
+ }
+
+ /**
+ * This method creates a new ESB configuration.
+ */
+ protected void initializeNewConfig() {
+
+ org.w3c.dom.Document doc=null;
+
+ // Create an empty document
+ try {
+ doc = javax.xml.parsers.DocumentBuilderFactory.
+ newInstance().newDocumentBuilder().newDocument();
+
+ m_esbConfig = doc.createElement(TOP_LEVEL_ELEMENT);
+
+ m_esbConfig.setAttribute(XMLNS,
+ JBOSSESB_XML_NAMESPACE);
+ m_esbConfig.setAttribute(PARAMETER_RELOAD_SECS_ATTR,"5000");
+
+ doc.appendChild(m_esbConfig);
+
+ // Create provider information
+ org.w3c.dom.Element providers=doc.createElement(PROVIDERS_ELEMENT);
+ m_esbConfig.appendChild(providers);
+
+ m_jmsProviderElem = doc.createElement(JMS_PROVIDER_ELEMENT);
+ providers.appendChild(m_jmsProviderElem);
+
+ m_servicesElem = doc.createElement(SERVICES_ELEMENT);
+ m_esbConfig.appendChild(m_servicesElem);
+
+ } catch(Exception e) {
+ logger.severe("Failed to create initial jbossesb document: "+e);
+ }
+
+ }
+
+ /**
* This method initializes the ESB Model.
*/
- protected void initialize() {
+ protected void initializeExistingConfig() {
org.w3c.dom.NodeList services=
m_esbConfig.getElementsByTagName(SERVICES_ELEMENT);
@@ -318,15 +371,50 @@
}
/**
+ * This method adds a new service to the model.
+ *
+ * @param service The service
+ */
+ public void addService(ESBService service) {
+ m_services.put(getKey(service.getCategory(), service.getName()),
+ service);
+
+ // Add provider information
+
+ }
+
+ /**
+ * This method removes a service from the model.
+ *
+ * @param service The service
+ */
+ public void removeService(ESBService service) {
+ m_services.remove(getKey(service.getCategory(),
+ service.getName()));
+
+ // Remove provider information
+ }
+
+ /**
* This textual contents of the model.
*
* @return The textual contents
*/
- public String getContents() {
+ public String getOriginalContents() {
return(m_contents);
}
/**
+ * This method returns the reference to the DOM
+ * representation of the ESB configuration.
+ *
+ * @return The ESB configuration
+ */
+ public org.w3c.dom.Element getESBConfiguration() {
+ return(m_esbConfig);
+ }
+
+ /**
* This method returns a custom classloader that uses the project's
* classpath to locate classes referenced by the ESB config file.
*
@@ -349,6 +437,8 @@
private ModelReference m_source=null;
private org.w3c.dom.Element m_esbConfig=null;
+ private org.w3c.dom.Element m_jmsProviderElem=null;
+ private org.w3c.dom.Element m_servicesElem=null;
private String m_contents=null;
private java.util.Map<String,ESBService> m_services=new java.util.Hashtable<String,ESBService>();
private ClassLoader m_classLoader=null;
Modified: cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/DefaultESBService.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/DefaultESBService.java 2008-07-23 14:28:48 UTC (rev 197)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/DefaultESBService.java 2008-07-24 11:06:52 UTC (rev 198)
@@ -35,6 +35,8 @@
*/
public class DefaultESBService extends ModelObject implements ESBService {
+ private static final String NAME_ATTR = "name";
+ private static final String CATEGORY_ATTR = "category";
protected static final String ROOT_PROPERTY = "root";
protected static final String BUSINESS_OBJECT_TYPE_PROPERTY = "session";
protected static final String CONVERSATION_TYPE_PROPERTY = "conversationType";
@@ -46,24 +48,54 @@
private static final String ACTIONS_ELEMENT = "actions";
/**
- * This is the constructor for the ESB service.
+ * This is the constructor for the ESB service. This construct
+ * creates a new DOM element, contained within the supplied
+ * model, to represent the service associated with the
+ * supplied category and name.
*
* @param model The ESB model in which the service has been defined
* @param service The XML configuration of the service
*/
+ public DefaultESBService(ESBLanguageModel model,
+ String category, String name) {
+ m_model = model;
+
+ // Create new element for the service
+ initializeNewServiceElement(category, name);
+ }
+
+ /**
+ * This is the constructor for the ESB service. This construct
+ * creates a wrapper around the supplied DOM representation of
+ * the existing service element within an ESB configuration.
+ *
+ * @param model The ESB model in which the service has been defined
+ * @param service The XML configuration of the service
+ */
public DefaultESBService(ESBLanguageModel model, org.w3c.dom.Element service) {
m_model = model;
m_service = service;
if (m_model != null && m_service != null) {
- initialize();
+ initializeExistingServiceElement();
}
}
+ protected void initializeNewServiceElement(String category, String name) {
+
+ m_service = m_model.getESBConfiguration().
+ getOwnerDocument().createElement(SERVICE_ELEMENT);
+
+ m_service.setAttribute(CATEGORY_ATTR, category);
+ m_service.setAttribute(NAME_ATTR, name);
+
+
+ }
+
/**
* This method initializes the service.
*/
- protected void initialize() {
+ protected void initializeExistingServiceElement() {
// Check if relevant action
org.w3c.dom.NodeList actions=m_service.getElementsByTagName(ACTIONS_ELEMENT);
@@ -84,7 +116,7 @@
// Find positional information
int servCount=getServicePosition();
- String str=getModel().getContents();
+ String str=getModel().getOriginalContents();
int startPosition=str.indexOf("<service ");
int endPosition=-1;
@@ -167,7 +199,7 @@
* @return The service category
*/
public String getCategory() {
- return(m_service.getAttribute("category"));
+ return(m_service.getAttribute(CATEGORY_ATTR));
}
/**
@@ -177,7 +209,7 @@
* @return The service name
*/
public String getName() {
- return(m_service.getAttribute("name"));
+ return(m_service.getAttribute(NAME_ATTR));
}
/**
@@ -356,7 +388,7 @@
if (annotation != null) {
try {
java.lang.reflect.Method method=
- annotation.getClass().getMethod("name", (Class<?>[])null);
+ annotation.getClass().getMethod(NAME_ATTR, (Class<?>[])null);
Object val=method.invoke(annotation, (Object[])null);
Modified: cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/ESBLanguageModel.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/ESBLanguageModel.java 2008-07-23 14:28:48 UTC (rev 197)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/ESBLanguageModel.java 2008-07-24 11:06:52 UTC (rev 198)
@@ -66,6 +66,14 @@
*
* @return The textual contents
*/
- public String getContents();
+ public String getOriginalContents();
+ /**
+ * This method returns the reference to the DOM
+ * representation of the ESB configuration.
+ *
+ * @return The ESB configuration
+ */
+ public org.w3c.dom.Element getESBConfiguration();
+
}
Modified: cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/AbstractESBAction.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/AbstractESBAction.java 2008-07-23 14:28:48 UTC (rev 197)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/AbstractESBAction.java 2008-07-24 11:06:52 UTC (rev 198)
@@ -62,13 +62,13 @@
m_action = action;
if (m_service.getModel() != null &&
- m_service.getModel().getContents() != null) {
+ m_service.getModel().getOriginalContents() != null) {
// Find positional information
int servCount=m_service.getServicePosition();
int actionCount=getActionPosition();
- String str=m_service.getModel().getContents();
+ String str=m_service.getModel().getOriginalContents();
int startPosition=str.indexOf("<service ");
int endPosition=-1;
Added: cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/DefaultESBLanguageModelTest.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/DefaultESBLanguageModelTest.java (rev 0)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/DefaultESBLanguageModelTest.java 2008-07-24 11:06:52 UTC (rev 198)
@@ -0,0 +1,105 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2008, Red Hat Middleware LLC, and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+ * PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
+ * You should have received a copy of the GNU Lesser General Public License,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA 02110-1301, USA.
+ */
+package org.jboss.tools.overlord.jbossesb.model;
+
+import junit.framework.TestCase;
+import org.scribble.model.*;
+
+public class DefaultESBLanguageModelTest extends TestCase {
+
+ public void testBaseConfiguration() {
+
+ ModelReference ref=new ModelReference(ESBLanguageModel.JBOSSESB_NOTATION);
+
+ DefaultESBLanguageModel model=new DefaultESBLanguageModel(ref);
+
+ org.w3c.dom.Element config=model.getESBConfiguration();
+
+ if (config.getNodeName().equals(DefaultESBLanguageModel.TOP_LEVEL_ELEMENT) == false) {
+ fail("Top level element should be '"+
+ DefaultESBLanguageModel.TOP_LEVEL_ELEMENT+"' but found: "+
+ config.getNodeName());
+ }
+
+ boolean f_providers=false;
+ boolean f_services=false;
+
+ org.w3c.dom.NodeList nl=config.getChildNodes();
+
+ for (int i=0; i < nl.getLength(); i++) {
+ if (nl.item(i) instanceof org.w3c.dom.Element) {
+ org.w3c.dom.Element elem=
+ (org.w3c.dom.Element)nl.item(i);
+
+ if (elem.getNodeName().equals(DefaultESBLanguageModel.PROVIDERS_ELEMENT)) {
+
+ if (f_providers) {
+ fail("Duplicate '"+DefaultESBLanguageModel.PROVIDERS_ELEMENT+"' elements");
+ } else {
+
+ // Check if jms provider defined
+ org.w3c.dom.NodeList nl2=
+ elem.getChildNodes();
+ boolean f_jmsProvider=false;
+
+ for (int j=0; j < nl2.getLength(); j++) {
+ if (nl2.item(j) instanceof org.w3c.dom.Element) {
+
+ if (nl2.item(j).getNodeName().equals(
+ DefaultESBLanguageModel.JMS_PROVIDER_ELEMENT)) {
+
+ if (f_jmsProvider) {
+ fail("JMS Provider already defined");
+ }
+
+ f_jmsProvider = true;
+ } else {
+ fail("Unknown provider element: "+
+ nl2.item(j).getNodeName());
+ }
+ }
+ }
+
+ if (f_jmsProvider == false) {
+ fail("JMS provider not defined");
+ }
+ }
+
+ f_providers = true;
+ } else if (elem.getNodeName().equals(DefaultESBLanguageModel.SERVICES_ELEMENT)) {
+
+ if (f_services) {
+ fail("Duplicate '"+DefaultESBLanguageModel.SERVICES_ELEMENT+"' elements");
+ }
+
+ f_services = true;
+ } else {
+ fail("Unknown element: "+nl.item(i).getNodeName());
+ }
+ }
+ }
+
+ if (f_providers == false) {
+ fail("Element '"+DefaultESBLanguageModel.PROVIDERS_ELEMENT+"' not found");
+ }
+
+ if (f_services == false) {
+ fail("Element '"+DefaultESBLanguageModel.SERVICES_ELEMENT+"' not found");
+ }
+ }
+}
Modified: cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/TestESBLanguageModel.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/TestESBLanguageModel.java 2008-07-23 14:28:48 UTC (rev 197)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/TestESBLanguageModel.java 2008-07-24 11:06:52 UTC (rev 198)
@@ -22,10 +22,11 @@
import org.jboss.tools.overlord.jbossesb.model.ESBService;
import org.scribble.model.ModelListener;
import org.scribble.model.ModelReference;
+import org.w3c.dom.Element;
public class TestESBLanguageModel implements org.jboss.tools.overlord.jbossesb.model.ESBLanguageModel {
- public String getContents() {
+ public String getOriginalContents() {
// TODO Auto-generated method stub
return null;
}
@@ -52,5 +53,10 @@
}
+ public Element getESBConfiguration() {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
private java.util.Map<String,ESBService> m_services=new java.util.Hashtable<String,ESBService>();
}
15 years, 9 months
Overlord SVN: r197 - in sam/trunk/modules/sim/src: test/java/org/jboss/test/sam/simulation and 4 other directories.
by overlord-commits@lists.jboss.org
Author: heiko.braun(a)jboss.com
Date: 2008-07-23 10:28:48 -0400 (Wed, 23 Jul 2008)
New Revision: 197
Added:
sam/trunk/modules/sim/src/test/resources/simulation/test.drl
Removed:
sam/trunk/modules/sim/src/test/resources/adapter/
sam/trunk/modules/sim/src/test/resources/database/
sam/trunk/modules/sim/src/test/resources/samples/esper-default-cfg.xml
sam/trunk/modules/sim/src/test/resources/samples/pattern/esper-cfg.xml
sam/trunk/modules/sim/src/test/resources/simulation/esper-cfg.xml
sam/trunk/modules/sim/src/test/resources/viz/
Modified:
sam/trunk/modules/sim/src/main/java/org/jboss/sam/simulation/EventSimulation.java
sam/trunk/modules/sim/src/test/java/org/jboss/test/sam/simulation/SimulationTestCase.java
Log:
Drools migration: Clean up broken tests
Modified: sam/trunk/modules/sim/src/main/java/org/jboss/sam/simulation/EventSimulation.java
===================================================================
--- sam/trunk/modules/sim/src/main/java/org/jboss/sam/simulation/EventSimulation.java 2008-07-23 12:54:57 UTC (rev 196)
+++ sam/trunk/modules/sim/src/main/java/org/jboss/sam/simulation/EventSimulation.java 2008-07-23 14:28:48 UTC (rev 197)
@@ -21,22 +21,23 @@
*/
package org.jboss.sam.simulation;
-import org.javasim.*;
-import com.espertech.esper.client.UnmatchedListener;
-import com.espertech.esper.event.EventBean;
+import org.javasim.Scheduler;
+import org.javasim.SimulationException;
+import org.javasim.SimulationProcess;
import org.jboss.sam.EventProcessor;
import org.jboss.sam.EventProcessorFactory;
import org.jboss.sam.StreamInput;
-import org.jboss.sam.internal.esper.EsperRuntimeImpl;
+import org.jboss.sam.internal.stream.InVMDispatcher;
import org.jboss.sam.internal.stream.InVMStreamInput;
-import org.jboss.sam.internal.stream.InVMDispatcher;
-import org.javasim.Scheduler;
import java.net.URL;
import java.util.ArrayList;
import java.util.List;
import java.util.Properties;
import java.util.UUID;
+import java.io.BufferedReader;
+import java.io.InputStreamReader;
+import java.io.IOException;
/**
* Simulations are created from global configuration,
@@ -49,7 +50,7 @@
* typed event messages. They need to be added to a simulation ({@link #addSource(EventSourceEntity)})
* in order to emit events to the event processor.
* <p>
- *
+ *
* <b>Event sinks</b><br>
* {@link org.jboss.sam.simulation.EventSinkEntity}'s processes event messages that have been forwarded
* from an event processor. They need to be added ({@link #addSink(EventSinkEntity)}) to a simualtion
@@ -59,7 +60,7 @@
* <b>Shared context</b><br>
* The {@link org.jboss.sam.simulation.SimulationContext} is shared between all simulation
* entities and acts as a blackboard where any entity can read and write simulation data and configuration.
- *
+ *
* @author Heiko.Braun <heiko.braun(a)jboss.com>
*/
public class EventSimulation extends SimulationProcess
@@ -67,7 +68,7 @@
// simulation properties
private List<EventSinkEntity> eventSinks = new ArrayList<EventSinkEntity>();
private List<EventSourceEntity> eventSources = new ArrayList<EventSourceEntity>();
- private SimulationContext context;
+ private SimulationContext context;
private InVMDispatcher dispatcher;
// SAM properties
@@ -77,7 +78,7 @@
// Constants
public final static String TOTAL_SIM_TIME = "sam.total-sim-time";
public final static String NUM_UNMATCHED_EVENTS = "sam.unmatched-events";
-
+
private EventSimulation(Properties config, URL bootstrap)
{
// thread setup
@@ -94,23 +95,9 @@
// create a dispatcher used within event source
this.dispatcher = new InVMDispatcher(InVMDispatcher.DEFAULT_CHANNEL_NAME);
-
+
// register in/out with hub
this.eventProcessor.addInput(streamInput);
-
- ((EsperRuntimeImpl) eventProcessor).getUnderlying().getEPRuntime()
- .setUnmatchedListener(
- new UnmatchedListener()
- {
-
- public void update(EventBean event)
- {
- System.out.println("! Unmatched event: " + event);
- context.getMeasurement(NUM_UNMATCHED_EVENTS).increment();
- }
- }
- );
-
}
public EventSinkEntity addSink(EventSinkEntity sink)
@@ -126,7 +113,7 @@
{
source.setContext(this.context);
source.setDispatcher(this.dispatcher);
-
+
this.eventSources.add(source);
return source;
}
@@ -178,11 +165,11 @@
catch(SimulationException e)
{
e.printStackTrace();
- }
+ }
}
-
+
private void begin()
- {
+ {
for(EventSinkEntity sink : eventSinks)
{
sink.begin();
@@ -216,14 +203,14 @@
{
return context.getMeasurement(key);
}
-
+
public void run()
{
try
{
// wait for main thread
waitForMainSuspended();
-
+
// [HB] System.out.println("Running " + this);
// begin
@@ -246,7 +233,7 @@
{
e.printStackTrace();
System.exit(-1);
- }
+ }
}
@@ -271,11 +258,34 @@
{
return new EventSimulation(config,
Thread.currentThread().getContextClassLoader().getResource("samples/esper-default-cfg.xml")
- );
+ );
}
public static EventSimulation bootstrap(Properties config, URL bootstrap)
{
return new EventSimulation(config, bootstrap);
}
+
+ public static String getDRLFromResource(String resourceName)
+ {
+ try
+ {
+ URL url = Thread.currentThread().getContextClassLoader().getResource(resourceName);
+ BufferedReader reader = new BufferedReader(
+ new InputStreamReader(url.openStream())
+ );
+ StringBuffer sb = new StringBuffer();
+ String line;
+ while((line = reader.readLine()) != null)
+ {
+ sb.append(line);
+ }
+
+ return sb.toString();
+ }
+ catch (IOException e)
+ {
+ throw new RuntimeException("Failed to load DRL", e);
+ }
+ }
}
Modified: sam/trunk/modules/sim/src/test/java/org/jboss/test/sam/simulation/SimulationTestCase.java
===================================================================
--- sam/trunk/modules/sim/src/test/java/org/jboss/test/sam/simulation/SimulationTestCase.java 2008-07-23 12:54:57 UTC (rev 196)
+++ sam/trunk/modules/sim/src/test/java/org/jboss/test/sam/simulation/SimulationTestCase.java 2008-07-23 14:28:48 UTC (rev 197)
@@ -41,16 +41,13 @@
config.put(EventSimulation.TOTAL_SIM_TIME, 60.00);
// init
- EventSimulation simulation = EventSimulation.bootstrap(
- config,
- Thread.currentThread().getContextClassLoader().getResource("simulation/esper-cfg.xml")
- );
+ EventSimulation simulation = EventSimulation.bootstrap(config);
// shared between all entities
SimulationContext context = simulation.getContext();
// create an event source and associate a message factory
- EventSourceEntity source = new EventSourceEntity("source-A", 0.10);
+ EventSourceEntity source = new EventSourceEntity("EventSource_A", 0.10);
source.setEventMessageFactory(
new EventMessageFactory()
{
@@ -62,7 +59,7 @@
);
// create an event sink and associate handler
- EventSinkEntity sink = new EventSinkEntity("sink-B");
+ EventSinkEntity sink = new EventSinkEntity("EventSink_B");
sink.setEventHandler(
new EventSinkHandler()
{
@@ -76,8 +73,11 @@
simulation.addSource(source);
simulation.addSink(sink);
+ // DRL
+ String epl = EventSimulation.getDRLFromResource("simulation/test.drl");
+
// forward single event messages
- simulation.bindStatement("select * from org.jboss.test.sam.simulation.SensorEventMessage", sink);
+ simulation.bindStatement(epl, sink);
// start simulation
simulation.singleRun();
Deleted: sam/trunk/modules/sim/src/test/resources/samples/esper-default-cfg.xml
===================================================================
--- sam/trunk/modules/sim/src/test/resources/samples/esper-default-cfg.xml 2008-07-23 12:54:57 UTC (rev 196)
+++ sam/trunk/modules/sim/src/test/resources/samples/esper-default-cfg.xml 2008-07-23 14:28:48 UTC (rev 197)
@@ -1,71 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- Sample configuration file.
--->
-<esper-configuration xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xmlns="http://www.espertech.com/schema/esper"
- xsi:noNamespaceSchemaLocation="esper-configuration-2-0.xsd">
-
- <!--
- Sample engine settings
- -->
- <engine-settings>
- <defaults>
- <threading>
- <!--
- In multithreaded environments, this setting controls whether dispatches to listeners
- preserve the ordering in which the statement processes events
- -->
- <listener-dispatch preserve-order="true" timeout-msec="1000" locking="spin"/>
- <!--
- In multithreaded environments, this setting controls whether insert-into streams
- preserve the order of events inserted into them by one or more statements,
- allowing statements that consume other statement's events to behave deterministic.
- -->
- <insert-into-dispatch preserve-order="true" timeout-msec="100" locking="spin"/>
- <!-- These settings define the resolution of the internal timer thread,
- and can disable the timer to indicate that the application supplies the timer events
- -->
- <internal-timer enabled="true" msec-resolution="100"/>
- </threading>
- <event-meta>
- <!--
- Lets configure the engine to use case-insensitive resolution for event properties
- -->
- <class-property-resolution style="distinct_case_insensitive"/>
- </event-meta>
- <view-resources>
- <!--
- Lets configure the engine to reuse views, which is the default but can introduce additional locking
- -->
- <share-views enabled="true"/>
- </view-resources>
- <logging>
- <!--
- By default the engine does not generate logging through Log4j of the event processing execution path.
- To get debug output, set this flag to true. This setting translates into a static boolean flag
- and thus may apply to multiple engine instances within a given VM.
- -->
- <execution-path enabled="false" />
- </logging>
- <stream-selection>
- <!--
- By default the engine generates output for the insert stream only, and not for the remove stream.
- To obtain output for remove stream only, or for insert stream and remove stream,
- there are keywords "rstream" and "irstream" for use in the select clause.
- This setting controls the default behavior, if no keyword is specified in the select-clause by statements.
- -->
- <stream-selector value="irstream" />
- </stream-selection>
- <time-source>
- <!--
- By default the time source is System.currentTimeMillis.
- This sample configures the nano-second time call System.nanoTime() as the time source,
- which Esper adjusts for wall clock time.
- -->
- <time-source-type value="nano" />
- </time-source>
- </defaults>
- </engine-settings>
-
-</esper-configuration>
Deleted: sam/trunk/modules/sim/src/test/resources/samples/pattern/esper-cfg.xml
===================================================================
--- sam/trunk/modules/sim/src/test/resources/samples/pattern/esper-cfg.xml 2008-07-23 12:54:57 UTC (rev 196)
+++ sam/trunk/modules/sim/src/test/resources/samples/pattern/esper-cfg.xml 2008-07-23 14:28:48 UTC (rev 197)
@@ -1,79 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- Sample configuration file.
--->
-<esper-configuration xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xmlns="http://www.espertech.com/schema/esper"
- xsi:noNamespaceSchemaLocation="esper-configuration-2-0.xsd">
-
- <!--
- Adds a Java package name of a package that Java event classes reside in.
- This setting allows an application to place all it's events into one or more Java packages
- and then declare these packages.
- The engine attempts to resolve an event type alias to a Java class residing in each declared package.
- -->
- <event-type-auto-alias package-name="org.jboss.test.sam.samples.pattern"/>
-
- <!--
- Sample engine settings
- -->
- <engine-settings>
- <defaults>
- <threading>
- <!--
- In multithreaded environments, this setting controls whether dispatches to listeners
- preserve the ordering in which the statement processes events
- -->
- <listener-dispatch preserve-order="true" timeout-msec="1000" locking="spin"/>
- <!--
- In multithreaded environments, this setting controls whether insert-into streams
- preserve the order of events inserted into them by one or more statements,
- allowing statements that consume other statement's events to behave deterministic.
- -->
- <insert-into-dispatch preserve-order="true" timeout-msec="100" locking="spin"/>
- <!-- These settings define the resolution of the internal timer thread,
- and can disable the timer to indicate that the application supplies the timer events
- -->
- <internal-timer enabled="true" msec-resolution="100"/>
- </threading>
- <event-meta>
- <!--
- Lets configure the engine to use case-insensitive resolution for event properties
- -->
- <class-property-resolution style="distinct_case_insensitive"/>
- </event-meta>
- <view-resources>
- <!--
- Lets configure the engine to reuse views, which is the default but can introduce additional locking
- -->
- <share-views enabled="true"/>
- </view-resources>
- <logging>
- <!--
- By default the engine does not generate logging through Log4j of the event processing execution path.
- To get debug output, set this flag to true. This setting translates into a static boolean flag
- and thus may apply to multiple engine instances within a given VM.
- -->
- <execution-path enabled="false" />
- </logging>
- <stream-selection>
- <!--
- By default the engine generates output for the insert stream only, and not for the remove stream.
- To obtain output for remove stream only, or for insert stream and remove stream,
- there are keywords "rstream" and "irstream" for use in the select clause.
- This setting controls the default behavior, if no keyword is specified in the select-clause by statements.
- -->
- <stream-selector value="irstream" />
- </stream-selection>
- <time-source>
- <!--
- By default the time source is System.currentTimeMillis.
- This sample configures the nano-second time call System.nanoTime() as the time source,
- which Esper adjusts for wall clock time.
- -->
- <time-source-type value="nano" />
- </time-source>
- </defaults>
- </engine-settings>
-
-</esper-configuration>
Deleted: sam/trunk/modules/sim/src/test/resources/simulation/esper-cfg.xml
===================================================================
--- sam/trunk/modules/sim/src/test/resources/simulation/esper-cfg.xml 2008-07-23 12:54:57 UTC (rev 196)
+++ sam/trunk/modules/sim/src/test/resources/simulation/esper-cfg.xml 2008-07-23 14:28:48 UTC (rev 197)
@@ -1,79 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- Sample configuration file.
--->
-<esper-configuration xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xmlns="http://www.espertech.com/schema/esper"
- xsi:noNamespaceSchemaLocation="esper-configuration-2-0.xsd">
-
- <!--
- Adds a Java package name of a package that Java event classes reside in.
- This setting allows an application to place all it's events into one or more Java packages
- and then declare these packages.
- The engine attempts to resolve an event type alias to a Java class residing in each declared package.
- -->
- <event-type-auto-alias package-name="org.jboss.test.sam.simulation"/>
-
- <!--
- Sample engine settings
- -->
- <engine-settings>
- <defaults>
- <threading>
- <!--
- In multithreaded environments, this setting controls whether dispatches to listeners
- preserve the ordering in which the statement processes events
- -->
- <listener-dispatch preserve-order="true" timeout-msec="1000" locking="spin"/>
- <!--
- In multithreaded environments, this setting controls whether insert-into streams
- preserve the order of events inserted into them by one or more statements,
- allowing statements that consume other statement's events to behave deterministic.
- -->
- <insert-into-dispatch preserve-order="true" timeout-msec="100" locking="spin"/>
- <!-- These settings define the resolution of the internal timer thread,
- and can disable the timer to indicate that the application supplies the timer events
- -->
- <internal-timer enabled="true" msec-resolution="100"/>
- </threading>
- <event-meta>
- <!--
- Lets configure the engine to use case-insensitive resolution for event properties
- -->
- <class-property-resolution style="distinct_case_insensitive"/>
- </event-meta>
- <view-resources>
- <!--
- Lets configure the engine to reuse views, which is the default but can introduce additional locking
- -->
- <share-views enabled="true"/>
- </view-resources>
- <logging>
- <!--
- By default the engine does not generate logging through Log4j of the event processing execution path.
- To get debug output, set this flag to true. This setting translates into a static boolean flag
- and thus may apply to multiple engine instances within a given VM.
- -->
- <execution-path enabled="false" />
- </logging>
- <stream-selection>
- <!--
- By default the engine generates output for the insert stream only, and not for the remove stream.
- To obtain output for remove stream only, or for insert stream and remove stream,
- there are keywords "rstream" and "irstream" for use in the select clause.
- This setting controls the default behavior, if no keyword is specified in the select-clause by statements.
- -->
- <stream-selector value="irstream" />
- </stream-selection>
- <time-source>
- <!--
- By default the time source is System.currentTimeMillis.
- This sample configures the nano-second time call System.nanoTime() as the time source,
- which Esper adjusts for wall clock time.
- -->
- <time-source-type value="nano" />
- </time-source>
- </defaults>
- </engine-settings>
-
-</esper-configuration>
Added: sam/trunk/modules/sim/src/test/resources/simulation/test.drl
===================================================================
--- sam/trunk/modules/sim/src/test/resources/simulation/test.drl (rev 0)
+++ sam/trunk/modules/sim/src/test/resources/simulation/test.drl 2008-07-23 14:28:48 UTC (rev 197)
@@ -0,0 +1,12 @@
+package org.jboss.test.sam.drools;
+
+import org.jboss.test.sam.simulation.SensorEventMessage;
+
+global org.jboss.sam.internal.drools.DroolsAdapter Drools;
+
+rule "Pick all sensor event messages"
+when
+ $event: SensorEventMessage()
+then
+ Drools.getListener("EventSink_B").update($event);
+end
15 years, 9 months
Overlord SVN: r196 - in sam/trunk: modules/core and 12 other directories.
by overlord-commits@lists.jboss.org
Author: heiko.braun(a)jboss.com
Date: 2008-07-23 08:54:57 -0400 (Wed, 23 Jul 2008)
New Revision: 196
Added:
sam/trunk/modules/core/src/main/java/org/jboss/sam/internal/drools/DroolsAdapter.java
sam/trunk/modules/core/src/main/java/org/jboss/sam/internal/drools/DroolsProcessingStatement.java
sam/trunk/modules/core/src/main/java/org/jboss/sam/internal/drools/ObjectMessageAdaptor.java
sam/trunk/modules/core/src/main/java/org/jboss/sam/internal/drools/StreamOutputAdapter.java
sam/trunk/modules/core/src/main/java/org/jboss/sam/internal/drools/UpdateListener.java
sam/trunk/modules/core/src/test/java/org/jboss/test/sam/adapter/
sam/trunk/modules/core/src/test/java/org/jboss/test/sam/adapter/invm/
sam/trunk/modules/core/src/test/java/org/jboss/test/sam/adapter/invm/Alert.java
sam/trunk/modules/core/src/test/java/org/jboss/test/sam/adapter/invm/InVMAdapterTestCase.java
sam/trunk/modules/core/src/test/java/org/jboss/test/sam/drools/
sam/trunk/modules/core/src/test/java/org/jboss/test/sam/drools/ApiTestCase.java
sam/trunk/modules/core/src/test/java/org/jboss/test/sam/drools/StockTick.java
sam/trunk/modules/core/src/test/resources/adapter/invm/test.drl
sam/trunk/modules/core/src/test/resources/drools/
sam/trunk/modules/core/src/test/resources/drools/aggregate.drl
sam/trunk/modules/core/src/test/resources/drools/forward.drl
sam/trunk/modules/core/src/test/resources/drools/simple.drl
Removed:
sam/trunk/modules/core/src/test/java/org/jboss/test/sam/stream/
sam/trunk/modules/core/src/test/resources/adapter/invm/esper-cfg.xml
sam/trunk/modules/core/src/test/resources/database/esper-cfg.xml
sam/trunk/modules/core/src/test/resources/samples/
sam/trunk/modules/core/src/test/resources/simulation/
sam/trunk/modules/core/src/test/resources/viz/
Modified:
sam/trunk/SAM.ipr
sam/trunk/SAM.iws
sam/trunk/modules/core/pom.xml
sam/trunk/modules/core/src/main/java/org/jboss/sam/EventProcessor.java
sam/trunk/modules/core/src/main/java/org/jboss/sam/StreamOutput.java
sam/trunk/modules/core/src/main/java/org/jboss/sam/internal/drools/DroolsEventProcessorImpl.java
sam/trunk/modules/core/src/test/java/org/jboss/test/sam/SamTestSetup.java
sam/trunk/modules/core/src/test/java/org/jboss/test/sam/database/DatabaseTestCase.java
sam/trunk/modules/sim/src/test/resources/adapter/invm/esper-cfg.xml
sam/trunk/pom.xml
sam/trunk/sam-trunk.iml
Log:
First part of the migration to drools fusion as CEP processor
Modified: sam/trunk/SAM.ipr
===================================================================
--- sam/trunk/SAM.ipr 2008-07-22 18:06:55 UTC (rev 195)
+++ sam/trunk/SAM.ipr 2008-07-23 12:54:57 UTC (rev 196)
@@ -132,7 +132,7 @@
<component name="Maven Reloaded">
<option name="config">
<value>
- <option name="pluginEnabled" value="true" />
+ <option name="pluginEnabled" value="false" />
<option name="offlineModeEnabled" value="false" />
<option name="updateClasspathsEnabled" value="true" />
<option name="sortDependenciesEnabled" value="false" />
@@ -292,8 +292,8 @@
<component name="ProjectModuleManager">
<modules>
<module fileurl="file:///home/hbraun/dev/prj/drools/drools-trunk.iml" filepath="/home/hbraun/dev/prj/drools/drools-trunk.iml" />
- <module fileurl="file:///home/hbraun/dev/prj/esper-2.1.0-src/trunk/esper/esper-2.1.0-src.iml" filepath="/home/hbraun/dev/prj/esper-2.1.0-src/trunk/esper/esper-2.1.0-src.iml" />
<module fileurl="file:///home/hbraun/dev/prj/javasim/JavaSim/trunk/javasim-trunk.iml" filepath="/home/hbraun/dev/prj/javasim/JavaSim/trunk/javasim-trunk.iml" group="javasim" />
+ <module fileurl="file:///home/hbraun/dev/prj/jbpm/jbpm3/trunk/jbpm3-trunk.iml" filepath="/home/hbraun/dev/prj/jbpm/jbpm3/trunk/jbpm3-trunk.iml" />
<module fileurl="file://$PROJECT_DIR$/sam-trunk.iml" filepath="$PROJECT_DIR$/sam-trunk.iml" />
</modules>
</component>
Modified: sam/trunk/SAM.iws
===================================================================
--- sam/trunk/SAM.iws 2008-07-22 18:06:55 UTC (rev 195)
+++ sam/trunk/SAM.iws 2008-07-23 12:54:57 UTC (rev 196)
@@ -17,38 +17,67 @@
</component>
<component name="ChangeListManager">
<list default="true" name="Default" comment="">
- <change type="MODIFICATION" beforePath="/home/hbraun/dev/prj/esper-2.1.0-src/trunk/esper/src/main/java/com/espertech/esper/view/internal/BufferView.java" afterPath="/home/hbraun/dev/prj/esper-2.1.0-src/trunk/esper/src/main/java/com/espertech/esper/view/internal/BufferView.java" />
- <change type="MODIFICATION" beforePath="/home/hbraun/dev/prj/esper-2.1.0-src/trunk/esper/src/main/java/com/espertech/esper/view/std/SizeView.java" afterPath="/home/hbraun/dev/prj/esper-2.1.0-src/trunk/esper/src/main/java/com/espertech/esper/view/std/SizeView.java" />
- <change type="MODIFICATION" beforePath="$PROJECT_DIR$/modules/core/src/main/java/org/jboss/sam/EventProcessorFactory.java" afterPath="$PROJECT_DIR$/modules/core/src/main/java/org/jboss/sam/EventProcessorFactory.java" />
+ <change type="DELETED" beforePath="$PROJECT_DIR$/modules/core/src/test/resources/viz/esper-cfg.xml" afterPath="" />
+ <change type="MODIFICATION" beforePath="$PROJECT_DIR$/modules/core/src/test/java/org/jboss/test/sam/database/DatabaseTestCase.java" afterPath="$PROJECT_DIR$/modules/core/src/test/java/org/jboss/test/sam/database/DatabaseTestCase.java" />
+ <change type="MODIFICATION" beforePath="$PROJECT_DIR$/modules/sim/src/test/resources/adapter/invm/esper-cfg.xml" afterPath="$PROJECT_DIR$/modules/sim/src/test/resources/adapter/invm/esper-cfg.xml" />
+ <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/modules/core/src/test/resources/drools" />
<change type="MODIFICATION" beforePath="/home/hbraun/dev/prj/esper-2.1.0-src/trunk/esper/src/main/java/com/espertech/esper/core/EPServiceProviderImpl.java" afterPath="/home/hbraun/dev/prj/esper-2.1.0-src/trunk/esper/src/main/java/com/espertech/esper/core/EPServiceProviderImpl.java" />
- <change type="MODIFICATION" beforePath="/home/hbraun/dev/prj/esper-2.1.0-src/trunk/esper/src/main/java/com/espertech/esper/core/EPServicesContextFactoryDefault.java" afterPath="/home/hbraun/dev/prj/esper-2.1.0-src/trunk/esper/src/main/java/com/espertech/esper/core/EPServicesContextFactoryDefault.java" />
- <change type="DELETED" beforePath="$PROJECT_DIR$/modules/core/src/main/java/org/jboss/sam/internal/esper/EsperRuntimeImpl.java" afterPath="" />
- <change type="MODIFICATION" beforePath="/home/hbraun/dev/prj/esper-2.1.0-src/trunk/esper/src/main/java/com/espertech/esper/view/stat/RegressionLinestView.java" afterPath="/home/hbraun/dev/prj/esper-2.1.0-src/trunk/esper/src/main/java/com/espertech/esper/view/stat/RegressionLinestView.java" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/SAM.iws" afterPath="$PROJECT_DIR$/SAM.iws" />
- <change type="MODIFICATION" beforePath="/home/hbraun/dev/prj/esper-2.1.0-src/trunk/esper/src/main/java/com/espertech/esper/plugin/PluginLoader.java" afterPath="/home/hbraun/dev/prj/esper-2.1.0-src/trunk/esper/src/main/java/com/espertech/esper/plugin/PluginLoader.java" />
<change type="MODIFICATION" beforePath="/home/hbraun/dev/prj/esper-2.1.0-src/trunk/esper/src/main/java/com/espertech/esper/core/StatementContext.java" afterPath="/home/hbraun/dev/prj/esper-2.1.0-src/trunk/esper/src/main/java/com/espertech/esper/core/StatementContext.java" />
- <change type="MODIFICATION" beforePath="/home/hbraun/dev/prj/esper-2.1.0-src/trunk/esper/src/test/java/com/espertech/esper/indicator/jmx/TestJMXLastElementDynamicMBean.java" afterPath="/home/hbraun/dev/prj/esper-2.1.0-src/trunk/esper/src/test/java/com/espertech/esper/indicator/jmx/TestJMXLastElementDynamicMBean.java" />
<change type="MODIFICATION" beforePath="/home/hbraun/dev/prj/esper-2.1.0-src/trunk/esper/src/main/java/com/espertech/esper/view/stat/WeightedAverageView.java" afterPath="/home/hbraun/dev/prj/esper-2.1.0-src/trunk/esper/src/main/java/com/espertech/esper/view/stat/WeightedAverageView.java" />
- <change type="MODIFICATION" beforePath="/home/hbraun/dev/prj/esper-2.1.0-src/trunk/esper/src/main/java/com/espertech/esper/pattern/PatternContext.java" afterPath="/home/hbraun/dev/prj/esper-2.1.0-src/trunk/esper/src/main/java/com/espertech/esper/pattern/PatternContext.java" />
- <change type="DELETED" beforePath="$PROJECT_DIR$/modules/core/src/main/java/org/jboss/sam/internal/esper" afterPath="" />
- <change type="MODIFICATION" beforePath="$PROJECT_DIR$/SAM.ipr" afterPath="$PROJECT_DIR$/SAM.ipr" />
+ <change type="MODIFICATION" beforePath="$PROJECT_DIR$/sam-trunk.iml" afterPath="$PROJECT_DIR$/sam-trunk.iml" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/pom.xml" afterPath="$PROJECT_DIR$/pom.xml" />
<change type="MODIFICATION" beforePath="/home/hbraun/dev/prj/esper-2.1.0-src/trunk/esper/src/main/java/com/espertech/esper/view/stat/CorrelationView.java" afterPath="/home/hbraun/dev/prj/esper-2.1.0-src/trunk/esper/src/main/java/com/espertech/esper/view/stat/CorrelationView.java" />
- <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/modules/core/src/main/java/org/jboss/sam/internal/drools" />
<change type="MODIFICATION" beforePath="/home/hbraun/dev/prj/esper-2.1.0-src/trunk/esper/src/main/java/com/espertech/esper/view/stat/UnivariateStatisticsView.java" afterPath="/home/hbraun/dev/prj/esper-2.1.0-src/trunk/esper/src/main/java/com/espertech/esper/view/stat/UnivariateStatisticsView.java" />
<change type="MODIFICATION" beforePath="/home/hbraun/dev/prj/esper-2.1.0-src/trunk/esper/src/main/java/com/espertech/esper/event/BeanEventAdapter.java" afterPath="/home/hbraun/dev/prj/esper-2.1.0-src/trunk/esper/src/main/java/com/espertech/esper/event/BeanEventAdapter.java" />
+ <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/modules/core/src/main/java/org/jboss/sam/internal/drools/DroolsProcessingStatement.java" />
+ <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/modules/core/src/main/java/org/jboss/sam/internal/drools/StreamOutputAdapter.java" />
+ <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/modules/core/src/test/java/org/jboss/test/sam/adapter" />
+ <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/modules/core/src/test/java/org/jboss/test/sam/drools/StockTick.java" />
<change type="MODIFICATION" beforePath="/home/hbraun/dev/prj/esper-2.1.0-src/trunk/esper/src/main/java/com/espertech/esper/view/ViewFactoryContext.java" afterPath="/home/hbraun/dev/prj/esper-2.1.0-src/trunk/esper/src/main/java/com/espertech/esper/view/ViewFactoryContext.java" />
<change type="MODIFICATION" beforePath="/home/hbraun/dev/prj/esper-2.1.0-src/trunk/esper/src/main/java/com/espertech/esper/client/Configuration.java" afterPath="/home/hbraun/dev/prj/esper-2.1.0-src/trunk/esper/src/main/java/com/espertech/esper/client/Configuration.java" />
- <change type="DELETED" beforePath="$PROJECT_DIR$/modules/core/src/main/java/org/jboss/sam/internal/esper/StreamOutputAdapter.java" afterPath="" />
<change type="MODIFICATION" beforePath="/home/hbraun/dev/prj/esper-2.1.0-src/trunk/esper/src/main/java/com/espertech/esper/client/ConfigurationInformation.java" afterPath="/home/hbraun/dev/prj/esper-2.1.0-src/trunk/esper/src/main/java/com/espertech/esper/client/ConfigurationInformation.java" />
- <change type="DELETED" beforePath="$PROJECT_DIR$/modules/core/src/main/java/org/jboss/sam/internal/esper/EventAdapter.java" afterPath="" />
+ <change type="MODIFICATION" beforePath="$PROJECT_DIR$/modules/core/src/main/java/org/jboss/sam/StreamOutput.java" afterPath="$PROJECT_DIR$/modules/core/src/main/java/org/jboss/sam/StreamOutput.java" />
+ <change type="DELETED" beforePath="$PROJECT_DIR$/modules/core/src/test/java/org/jboss/test/sam/stream/invm" afterPath="" />
+ <change type="DELETED" beforePath="$PROJECT_DIR$/modules/core/src/test/resources/simulation/esper-cfg.xml" afterPath="" />
<change type="MODIFICATION" beforePath="/home/hbraun/dev/prj/esper-2.1.0-src/trunk/esper/src/main/java/com/espertech/esper/event/EventAdapterService.java" afterPath="/home/hbraun/dev/prj/esper-2.1.0-src/trunk/esper/src/main/java/com/espertech/esper/event/EventAdapterService.java" />
<change type="MODIFICATION" beforePath="/home/hbraun/dev/prj/esper-2.1.0-src/trunk/esper/src/main/java/com/espertech/esper/view/stat/MultiDimStatsView.java" afterPath="/home/hbraun/dev/prj/esper-2.1.0-src/trunk/esper/src/main/java/com/espertech/esper/view/stat/MultiDimStatsView.java" />
<change type="MODIFICATION" beforePath="/home/hbraun/dev/prj/esper-2.1.0-src/trunk/esper/src/main/java/com/espertech/esper/plugin/PlugInEventRepresentationContext.java" afterPath="/home/hbraun/dev/prj/esper-2.1.0-src/trunk/esper/src/main/java/com/espertech/esper/plugin/PlugInEventRepresentationContext.java" />
<change type="MODIFICATION" beforePath="/home/hbraun/dev/prj/esper-2.1.0-src/trunk/esper/src/test/java/com/espertech/esper/regression/client/MyTrendSpotterView.java" afterPath="/home/hbraun/dev/prj/esper-2.1.0-src/trunk/esper/src/test/java/com/espertech/esper/regression/client/MyTrendSpotterView.java" />
+ <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/modules/core/src/test/resources/drools/forward.drl" />
+ <change type="DELETED" beforePath="$PROJECT_DIR$/modules/core/src/test/resources/viz" afterPath="" />
+ <change type="DELETED" beforePath="$PROJECT_DIR$/modules/core/src/test/resources/adapter/invm" afterPath="" />
+ <change type="MODIFICATION" beforePath="$PROJECT_DIR$/modules/core/src/main/java/org/jboss/sam/EventProcessor.java" afterPath="$PROJECT_DIR$/modules/core/src/main/java/org/jboss/sam/EventProcessor.java" />
+ <change type="MODIFICATION" beforePath="/home/hbraun/dev/prj/esper-2.1.0-src/trunk/esper/src/main/java/com/espertech/esper/view/internal/BufferView.java" afterPath="/home/hbraun/dev/prj/esper-2.1.0-src/trunk/esper/src/main/java/com/espertech/esper/view/internal/BufferView.java" />
+ <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/modules/core/src/main/java/org/jboss/sam/internal/drools/DroolsAdapter.java" />
+ <change type="DELETED" beforePath="$PROJECT_DIR$/modules/core/src/test/resources/adapter/invm/esper-cfg.xml" afterPath="" />
+ <change type="MODIFICATION" beforePath="/home/hbraun/dev/prj/esper-2.1.0-src/trunk/esper/src/main/java/com/espertech/esper/view/std/SizeView.java" afterPath="/home/hbraun/dev/prj/esper-2.1.0-src/trunk/esper/src/main/java/com/espertech/esper/view/std/SizeView.java" />
+ <change type="DELETED" beforePath="$PROJECT_DIR$/modules/core/src/test/resources/samples/esper-default-cfg.xml" afterPath="" />
+ <change type="MODIFICATION" beforePath="$PROJECT_DIR$/modules/core/src/main/java/org/jboss/sam/internal/drools/DroolsEventProcessorImpl.java" afterPath="$PROJECT_DIR$/modules/core/src/main/java/org/jboss/sam/internal/drools/DroolsEventProcessorImpl.java" />
+ <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/modules/core/src/main/java/org/jboss/sam/internal/drools/ObjectMessageAdaptor.java" />
+ <change type="DELETED" beforePath="$PROJECT_DIR$/modules/core/src/test/java/org/jboss/test/sam/adapter/invm/InVMStreamTestCase.java" afterPath="" />
+ <change type="MODIFICATION" beforePath="/home/hbraun/dev/prj/esper-2.1.0-src/trunk/esper/src/main/java/com/espertech/esper/core/EPServicesContextFactoryDefault.java" afterPath="/home/hbraun/dev/prj/esper-2.1.0-src/trunk/esper/src/main/java/com/espertech/esper/core/EPServicesContextFactoryDefault.java" />
+ <change type="MODIFICATION" beforePath="/home/hbraun/dev/prj/esper-2.1.0-src/trunk/esper/src/main/java/com/espertech/esper/view/stat/RegressionLinestView.java" afterPath="/home/hbraun/dev/prj/esper-2.1.0-src/trunk/esper/src/main/java/com/espertech/esper/view/stat/RegressionLinestView.java" />
+ <change type="MODIFICATION" beforePath="/home/hbraun/dev/prj/esper-2.1.0-src/trunk/esper/src/main/java/com/espertech/esper/plugin/PluginLoader.java" afterPath="/home/hbraun/dev/prj/esper-2.1.0-src/trunk/esper/src/main/java/com/espertech/esper/plugin/PluginLoader.java" />
+ <change type="DELETED" beforePath="$PROJECT_DIR$/modules/core/src/test/resources/samples/pattern" afterPath="" />
+ <change type="MODIFICATION" beforePath="/home/hbraun/dev/prj/esper-2.1.0-src/trunk/esper/src/test/java/com/espertech/esper/indicator/jmx/TestJMXLastElementDynamicMBean.java" afterPath="/home/hbraun/dev/prj/esper-2.1.0-src/trunk/esper/src/test/java/com/espertech/esper/indicator/jmx/TestJMXLastElementDynamicMBean.java" />
+ <change type="DELETED" beforePath="$PROJECT_DIR$/modules/core/src/test/resources/simulation" afterPath="" />
+ <change type="MODIFICATION" beforePath="/home/hbraun/dev/prj/esper-2.1.0-src/trunk/esper/src/main/java/com/espertech/esper/pattern/PatternContext.java" afterPath="/home/hbraun/dev/prj/esper-2.1.0-src/trunk/esper/src/main/java/com/espertech/esper/pattern/PatternContext.java" />
+ <change type="MODIFICATION" beforePath="$PROJECT_DIR$/SAM.ipr" afterPath="$PROJECT_DIR$/SAM.ipr" />
+ <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/modules/core/src/main/java/org/jboss/sam/internal/drools/UpdateListener.java" />
+ <change type="DELETED" beforePath="$PROJECT_DIR$/modules/core/src/test/resources/database/esper-cfg.xml" afterPath="" />
+ <change type="MODIFICATION" beforePath="$PROJECT_DIR$/modules/core/src/test/java/org/jboss/test/sam/SamTestSetup.java" afterPath="$PROJECT_DIR$/modules/core/src/test/java/org/jboss/test/sam/SamTestSetup.java" />
+ <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/modules/core/src/test/resources/drools/simple.drl" />
+ <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/modules/core/src/test/java/org/jboss/test/sam/adapter/invm/InVMAdapterTestCase.java" />
+ <change type="DELETED" beforePath="$PROJECT_DIR$/modules/core/src/test/java/org/jboss/test/sam/stream" afterPath="" />
+ <change type="DELETED" beforePath="$PROJECT_DIR$/modules/core/src/test/resources/samples/pattern/esper-cfg.xml" afterPath="" />
+ <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/modules/core/src/test/resources/drools/aggregate.drl" />
+ <change type="DELETED" beforePath="$PROJECT_DIR$/modules/core/src/test/java/org/jboss/test/sam/stream/invm/InVMStreamTestCase.java" afterPath="" />
+ <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/modules/core/src/test/java/org/jboss/test/sam/drools/ApiTestCase.java" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/modules/core/pom.xml" afterPath="$PROJECT_DIR$/modules/core/pom.xml" />
- <change type="DELETED" beforePath="$PROJECT_DIR$/modules/core/src/main/java/org/jboss/sam/internal/esper/EsperProcessingStatement.java" afterPath="" />
- <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/modules/core/src/main/java/org/jboss/sam/internal/drools/DroolsEventProcessorImpl.java" />
+ <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/modules/core/src/test/java/org/jboss/test/sam/drools" />
+ <change type="DELETED" beforePath="$PROJECT_DIR$/modules/core/src/test/resources/samples" afterPath="" />
+ <change type="MODIFICATION" beforePath="$PROJECT_DIR$/modules/core/src/test/java/org/jboss/test/sam/adapter/invm/Alert.java" afterPath="$PROJECT_DIR$/modules/core/src/test/java/org/jboss/test/sam/adapter/invm/Alert.java" />
<change type="MODIFICATION" beforePath="/home/hbraun/dev/prj/esper-2.1.0-src/trunk/esper/src/test/java/com/espertech/esper/client/TestConfigurationParser.java" afterPath="/home/hbraun/dev/prj/esper-2.1.0-src/trunk/esper/src/test/java/com/espertech/esper/client/TestConfigurationParser.java" />
<change type="MODIFICATION" beforePath="/home/hbraun/dev/prj/esper-2.1.0-src/trunk/esper/src/main/java/com/espertech/esper/client/ConfigurationPluginLoader.java" afterPath="/home/hbraun/dev/prj/esper-2.1.0-src/trunk/esper/src/main/java/com/espertech/esper/client/ConfigurationPluginLoader.java" />
</list>
@@ -121,6 +150,47 @@
<disable_hints />
</component>
<component name="DebuggerManager">
+ <line_breakpoints>
+ <breakpoint url="file:///home/hbraun/dev/prj/drools/trunk/drools-compiler/src/main/java/org/drools/rule/builder/dialect/java/JavaDialect.java" line="219" class="org.drools.rule.builder.dialect.java.JavaDialect" package="org.drools.rule.builder.dialect.java">
+ <option name="ENABLED" value="true" />
+ <option name="SUSPEND_POLICY" value="SuspendAll" />
+ <option name="LOG_ENABLED" value="false" />
+ <option name="LOG_EXPRESSION_ENABLED" value="false" />
+ <option name="COUNT_FILTER_ENABLED" value="false" />
+ <option name="COUNT_FILTER" value="0" />
+ <option name="CONDITION_ENABLED" value="false" />
+ <option name="CLASS_FILTERS_ENABLED" value="false" />
+ <option name="INSTANCE_FILTERS_ENABLED" value="false" />
+ <option name="CONDITION" value="" />
+ <option name="LOG_MESSAGE" value="" />
+ </breakpoint>
+ <breakpoint url="file://$PROJECT_DIR$/modules/core/src/test/java/org/jboss/test/sam/drools/ApiTestCase.java" line="42" class="org.jboss.test.sam.drools.ApiTestCase" package="org.jboss.test.sam.drools">
+ <option name="ENABLED" value="true" />
+ <option name="SUSPEND_POLICY" value="SuspendAll" />
+ <option name="LOG_ENABLED" value="false" />
+ <option name="LOG_EXPRESSION_ENABLED" value="false" />
+ <option name="COUNT_FILTER_ENABLED" value="false" />
+ <option name="COUNT_FILTER" value="0" />
+ <option name="CONDITION_ENABLED" value="false" />
+ <option name="CLASS_FILTERS_ENABLED" value="false" />
+ <option name="INSTANCE_FILTERS_ENABLED" value="false" />
+ <option name="CONDITION" value="" />
+ <option name="LOG_MESSAGE" value="" />
+ </breakpoint>
+ <breakpoint url="file://$PROJECT_DIR$/modules/core/src/main/java/org/jboss/sam/internal/drools/DroolsEventProcessorImpl.java" line="117" class="org.jboss.sam.internal.drools.DroolsEventProcessorImpl" package="org.jboss.sam.internal.drools">
+ <option name="ENABLED" value="true" />
+ <option name="SUSPEND_POLICY" value="SuspendAll" />
+ <option name="LOG_ENABLED" value="false" />
+ <option name="LOG_EXPRESSION_ENABLED" value="false" />
+ <option name="COUNT_FILTER_ENABLED" value="false" />
+ <option name="COUNT_FILTER" value="0" />
+ <option name="CONDITION_ENABLED" value="false" />
+ <option name="CLASS_FILTERS_ENABLED" value="false" />
+ <option name="INSTANCE_FILTERS_ENABLED" value="false" />
+ <option name="CONDITION" value="" />
+ <option name="LOG_MESSAGE" value="" />
+ </breakpoint>
+ </line_breakpoints>
<breakpoint_any>
<breakpoint>
<option name="NOTIFY_CAUGHT" value="true" />
@@ -178,9 +248,33 @@
<option name="HIDE_WARNINGS" value="false" />
</component>
<component name="FavoritesManager">
+ <favorites_list name="JBPM3-BI">
+ <favorite_root url="org.jbpm.svc.save.SaveLogsOperation" module="jbpm3-trunk" type="class" klass="com.intellij.ide.favoritesTreeView.smartPointerPsiNodes.ClassSmartPointerNode" />
+ <favorite_root url="org.jbpm.logging.exe.LoggingInstance" module="jbpm3-trunk" type="class" klass="com.intellij.ide.favoritesTreeView.smartPointerPsiNodes.ClassSmartPointerNode" />
+ </favorites_list>
+ <favorites_list name="Drools-Samples">
+ <favorite_root url="file://$PROJECT_DIR$/modules/core/src/test/java/org/jboss/test/sam/drools/ApiTestCase.java" type="psiFile" klass="com.intellij.ide.projectView.impl.nodes.PsiFileNode" />
+ <favorite_root url="file:///home/hbraun/dev/prj/drools/trunk/drools-compiler/src/test/java/org/drools/integrationtests/CepEspTest.java" type="psiFile" klass="com.intellij.ide.projectView.impl.nodes.PsiFileNode" />
+ <favorite_root url="file://$PROJECT_DIR$/modules/core/src/test/resources/drools/cep1.drl" type="psiFile" klass="com.intellij.ide.projectView.impl.nodes.PsiFileNode" />
+ <favorite_root url="file:///home/hbraun/dev/prj/drools/trunk/drools-compiler/src/test/resources/org/drools/integrationtests/test_CEP_SimpleEventAssertion.drl" type="psiFile" klass="com.intellij.ide.projectView.impl.nodes.PsiFileNode" />
+ <favorite_root url="file://$PROJECT_DIR$/modules/core/pom.xml" type="psiFile" klass="com.intellij.ide.projectView.impl.nodes.PsiFileNode" />
+ <favorite_root url="file://$PROJECT_DIR$/modules/core/src/main/java/org/jboss/sam/internal/drools/DroolsEventProcessorImpl.java" type="psiFile" klass="com.intellij.ide.projectView.impl.nodes.PsiFileNode" />
+ <favorite_root url="file:///home/hbraun/dev/prj/drools/trunk/drools-compiler/src/main/java/org/drools/rule/builder/dialect/java/JavaDialect.java" type="psiFile" klass="com.intellij.ide.projectView.impl.nodes.PsiFileNode" />
+ <favorite_root url="file://$PROJECT_DIR$/modules/fx/pom.xml" type="psiFile" klass="com.intellij.ide.projectView.impl.nodes.PsiFileNode" />
+ <favorite_root url="file://$PROJECT_DIR$/pom.xml" type="psiFile" klass="com.intellij.ide.projectView.impl.nodes.PsiFileNode" />
+ <favorite_root url="file:///home/hbraun/dev/prj/drools/trunk/drools-compiler/src/test/resources/org/drools/integrationtests/test_CEP_SimpleEventAssertion.drl" type="psiFile" klass="com.intellij.ide.projectView.impl.nodes.PsiFileNode" />
+ </favorites_list>
<favorites_list name="SAM" />
</component>
<component name="FavoritesProjectViewPane">
+ <subPane subId="JBPM3-BI">
+ <PATH>
+ <PATH_ELEMENT>
+ <option name="myItemId" />
+ <option name="myItemType" value="com.intellij.ide.favoritesTreeView.FavoritesTreeNodeDescriptor" />
+ </PATH_ELEMENT>
+ </PATH>
+ </subPane>
<subPane subId="SAM">
<PATH>
<PATH_ELEMENT>
@@ -189,31 +283,62 @@
</PATH_ELEMENT>
</PATH>
</subPane>
+ <subPane subId="Drools-Samples">
+ <PATH>
+ <PATH_ELEMENT>
+ <option name="myItemId" />
+ <option name="myItemType" value="com.intellij.ide.favoritesTreeView.FavoritesTreeNodeDescriptor" />
+ </PATH_ELEMENT>
+ </PATH>
+ </subPane>
</component>
<component name="FileEditorManager">
<leaf>
- <file leaf-file-name="EventProcessorFactory.java" pinned="false" current="true" current-in-tab="true">
- <entry file="file://$PROJECT_DIR$/modules/core/src/main/java/org/jboss/sam/EventProcessorFactory.java">
+ <file leaf-file-name="DatabaseTestCase.java" pinned="false" current="false" current-in-tab="false">
+ <entry file="file://$PROJECT_DIR$/modules/core/src/test/java/org/jboss/test/sam/database/DatabaseTestCase.java">
<provider selected="true" editor-type-id="text-editor">
- <state line="30" column="22" selection-start="1219" selection-end="1219" vertical-scroll-proportion="0.22432113">
- <folding>
- <element signature="imports" expanded="true" />
- </folding>
+ <state line="32" column="29" selection-start="1305" selection-end="1321" vertical-scroll-proportion="0.22836539">
+ <folding />
</state>
</provider>
</entry>
</file>
- <file leaf-file-name="DroolsEventProcessorImpl.java" pinned="false" current="false" current-in-tab="false">
- <entry file="file://$PROJECT_DIR$/modules/core/src/main/java/org/jboss/sam/internal/drools/DroolsEventProcessorImpl.java">
+ <file leaf-file-name="pom.xml" pinned="false" current="false" current-in-tab="false">
+ <entry file="file://$PROJECT_DIR$/pom.xml">
<provider selected="true" editor-type-id="text-editor">
- <state line="39" column="0" selection-start="1423" selection-end="1423" vertical-scroll-proportion="0.40377805">
- <folding>
- <element signature="imports" expanded="true" />
- </folding>
+ <state line="142" column="71" selection-start="4876" selection-end="4876" vertical-scroll-proportion="0.33293268">
+ <folding />
</state>
</provider>
</entry>
</file>
+ <file leaf-file-name="InVMAdapterTestCase.java" pinned="false" current="false" current-in-tab="false">
+ <entry file="file://$PROJECT_DIR$/modules/core/src/test/java/org/jboss/test/sam/adapter/invm/InVMAdapterTestCase.java">
+ <provider selected="true" editor-type-id="text-editor">
+ <state line="33" column="24" selection-start="1320" selection-end="1320" vertical-scroll-proportion="0.26918536">
+ <folding />
+ </state>
+ </provider>
+ </entry>
+ </file>
+ <file leaf-file-name="SamTestSetup.java" pinned="false" current="false" current-in-tab="false">
+ <entry file="file://$PROJECT_DIR$/modules/core/src/test/java/org/jboss/test/sam/SamTestSetup.java">
+ <provider selected="true" editor-type-id="text-editor">
+ <state line="69" column="47" selection-start="2758" selection-end="2758" vertical-scroll-proportion="0.60212517">
+ <folding />
+ </state>
+ </provider>
+ </entry>
+ </file>
+ <file leaf-file-name="test.drl" pinned="false" current="true" current-in-tab="true">
+ <entry file="file://$PROJECT_DIR$/modules/core/src/test/resources/adapter/invm/test.drl">
+ <provider selected="true" editor-type-id="text-editor">
+ <state line="7" column="41" selection-start="0" selection-end="245" vertical-scroll-proportion="0.1570248">
+ <folding />
+ </state>
+ </provider>
+ </entry>
+ </file>
</leaf>
</component>
<component name="FindManager">
@@ -252,8 +377,14 @@
<option name="myItemId" value="SAM.ipr" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PackageViewProjectNode" />
</PATH_ELEMENT>
+ </PATH>
+ <PATH>
<PATH_ELEMENT>
- <option name="myItemId" value="sam-trunk" />
+ <option name="myItemId" value="SAM.ipr" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PackageViewProjectNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="jbpm3-trunk" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PackageViewModuleNode" />
</PATH_ELEMENT>
</PATH>
@@ -262,6 +393,14 @@
<option name="myItemId" value="SAM.ipr" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PackageViewProjectNode" />
</PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="jbpm3-trunk" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PackageViewModuleNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="org.jbpm" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PackageElementNode" />
+ </PATH_ELEMENT>
</PATH>
<PATH>
<PATH_ELEMENT>
@@ -269,6 +408,46 @@
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PackageViewProjectNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
+ <option name="myItemId" value="jbpm3-trunk" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PackageViewModuleNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="org.jbpm" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PackageElementNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="logging" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PackageElementNode" />
+ </PATH_ELEMENT>
+ </PATH>
+ <PATH>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="SAM.ipr" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PackageViewProjectNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="jbpm3-trunk" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PackageViewModuleNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="org.jbpm" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PackageElementNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="logging" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PackageElementNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="log" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PackageElementNode" />
+ </PATH_ELEMENT>
+ </PATH>
+ <PATH>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="SAM.ipr" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PackageViewProjectNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
<option name="myItemId" value="drools-trunk" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PackageViewModuleNode" />
</PATH_ELEMENT>
@@ -410,6 +589,10 @@
<option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/modules/core/src/test" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/modules/core/src/test/resources" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
</PATH>
<PATH>
<PATH_ELEMENT>
@@ -437,9 +620,17 @@
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
- <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/modules/core/src/main" />
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/modules/core/src/test" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/modules/core/src/test/resources" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/modules/core/src/test/resources/samples" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
</PATH>
<PATH>
<PATH_ELEMENT>
@@ -467,25 +658,59 @@
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
- <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/modules/core/src/main" />
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/modules/core/src/test" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
- <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/modules/core/src/main/java" />
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/modules/core/src/test/resources" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
- <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/modules/core/src/main/java/org" />
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/modules/core/src/test/resources/drools" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
+ </PATH>
+ <PATH>
<PATH_ELEMENT>
- <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/modules/core/src/main/java/org/jboss" />
+ <option name="myItemId" value="SAM.ipr" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="sam-trunk" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
- <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/modules/core/src/main/java/org/jboss/sam" />
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/modules" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/modules/core" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/modules/core/src" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/modules/core/src/test" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/modules/core/src/test/resources" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/modules/core/src/test/resources/adapter" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/modules/core/src/test/resources/adapter/invm" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
</PATH>
<PATH>
<PATH_ELEMENT>
@@ -513,27 +738,27 @@
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
- <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/modules/core/src/main" />
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/modules/core/src/test" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
- <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/modules/core/src/main/java" />
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/modules/core/src/test/java" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
- <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/modules/core/src/main/java/org" />
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/modules/core/src/test/java/org" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
- <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/modules/core/src/main/java/org/jboss" />
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/modules/core/src/test/java/org/jboss" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
- <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/modules/core/src/main/java/org/jboss/sam" />
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/modules/core/src/test/java/org/jboss/test" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
- <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/modules/core/src/main/java/org/jboss/sam/internal" />
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/modules/core/src/test/java/org/jboss/test/sam" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
</PATH>
@@ -563,10 +788,236 @@
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/modules/core/src/test" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/modules/core/src/test/java" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/modules/core/src/test/java/org" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/modules/core/src/test/java/org/jboss" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/modules/core/src/test/java/org/jboss/test" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/modules/core/src/test/java/org/jboss/test/sam" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/modules/core/src/test/java/org/jboss/test/sam/drools" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ </PATH>
+ <PATH>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="SAM.ipr" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="sam-trunk" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/modules" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/modules/core" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/modules/core/src" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/modules/core/src/test" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/modules/core/src/test/java" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/modules/core/src/test/java/org" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/modules/core/src/test/java/org/jboss" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/modules/core/src/test/java/org/jboss/test" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/modules/core/src/test/java/org/jboss/test/sam" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/modules/core/src/test/java/org/jboss/test/sam/database" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ </PATH>
+ <PATH>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="SAM.ipr" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="sam-trunk" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/modules" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/modules/core" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/modules/core/src" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/modules/core/src/test" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/modules/core/src/test/java" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/modules/core/src/test/java/org" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/modules/core/src/test/java/org/jboss" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/modules/core/src/test/java/org/jboss/test" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/modules/core/src/test/java/org/jboss/test/sam" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/modules/core/src/test/java/org/jboss/test/sam/adapter" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/modules/core/src/test/java/org/jboss/test/sam/adapter/invm" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ </PATH>
+ <PATH>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="SAM.ipr" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="sam-trunk" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/modules" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/modules/core" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/modules/core/src" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/modules/core/src/test" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ </PATH>
+ <PATH>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="SAM.ipr" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="sam-trunk" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/modules" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/modules/core" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/modules/core/src" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
<option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/modules/core/src/main" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
+ </PATH>
+ <PATH>
<PATH_ELEMENT>
+ <option name="myItemId" value="SAM.ipr" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="sam-trunk" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/modules" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/modules/core" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/modules/core/src" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/modules/core/src/main" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
<option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/modules/core/src/main/java" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
@@ -582,21 +1033,217 @@
<option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/modules/core/src/main/java/org/jboss/sam" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
+ </PATH>
+ <PATH>
<PATH_ELEMENT>
- <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/modules/core/src/main/java/org/jboss/sam/internal" />
+ <option name="myItemId" value="SAM.ipr" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
+ </PATH_ELEMENT>
+ </PATH>
+ <PATH>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="SAM.ipr" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="drools-trunk" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" />
+ </PATH_ELEMENT>
+ </PATH>
+ <PATH>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="SAM.ipr" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="drools-trunk" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:/home/hbraun/dev/prj/drools" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
+ </PATH>
+ <PATH>
<PATH_ELEMENT>
- <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/modules/core/src/main/java/org/jboss/sam/internal/drools" />
+ <option name="myItemId" value="SAM.ipr" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="drools-trunk" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:/home/hbraun/dev/prj/drools" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:/home/hbraun/dev/prj/drools/trunk" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
</PATH>
<PATH>
<PATH_ELEMENT>
<option name="myItemId" value="SAM.ipr" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
</PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="drools-trunk" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:/home/hbraun/dev/prj/drools" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:/home/hbraun/dev/prj/drools/trunk" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:/home/hbraun/dev/prj/drools/trunk/drools-compiler" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
</PATH>
+ <PATH>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="SAM.ipr" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="drools-trunk" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:/home/hbraun/dev/prj/drools" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:/home/hbraun/dev/prj/drools/trunk" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:/home/hbraun/dev/prj/drools/trunk/drools-compiler" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:/home/hbraun/dev/prj/drools/trunk/drools-compiler/src" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:/home/hbraun/dev/prj/drools/trunk/drools-compiler/src/test" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ </PATH>
+ <PATH>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="SAM.ipr" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="drools-trunk" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:/home/hbraun/dev/prj/drools" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:/home/hbraun/dev/prj/drools/trunk" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:/home/hbraun/dev/prj/drools/trunk/drools-compiler" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:/home/hbraun/dev/prj/drools/trunk/drools-compiler/src" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:/home/hbraun/dev/prj/drools/trunk/drools-compiler/src/test" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:/home/hbraun/dev/prj/drools/trunk/drools-compiler/src/test/java" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:/home/hbraun/dev/prj/drools/trunk/drools-compiler/src/test/java/org" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ </PATH>
+ <PATH>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="SAM.ipr" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="drools-trunk" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:/home/hbraun/dev/prj/drools" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:/home/hbraun/dev/prj/drools/trunk" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:/home/hbraun/dev/prj/drools/trunk/drools-compiler" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:/home/hbraun/dev/prj/drools/trunk/drools-compiler/src" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:/home/hbraun/dev/prj/drools/trunk/drools-compiler/src/main" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ </PATH>
+ <PATH>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="SAM.ipr" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="drools-trunk" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:/home/hbraun/dev/prj/drools" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:/home/hbraun/dev/prj/drools/trunk" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:/home/hbraun/dev/prj/drools/trunk/drools-compiler" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:/home/hbraun/dev/prj/drools/trunk/drools-compiler/src" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:/home/hbraun/dev/prj/drools/trunk/drools-compiler/src/main" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:/home/hbraun/dev/prj/drools/trunk/drools-compiler/src/main/java" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:/home/hbraun/dev/prj/drools/trunk/drools-compiler/src/main/java/org" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:/home/hbraun/dev/prj/drools/trunk/drools-compiler/src/main/java/org/drools" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ </PATH>
</subPane>
</component>
<component name="ProjectReloadState">
@@ -610,7 +1257,7 @@
<showLibraryContents />
<hideEmptyPackages ProjectPane="false" />
<abbreviatePackageNames />
- <showStructure PackagesPane="false" ProjectPane="false" Scope="false" Favorites="false" />
+ <showStructure ProjectPane="false" PackagesPane="false" Scope="false" Favorites="false" />
<autoscrollToSource />
<autoscrollFromSource />
<sortByType />
@@ -665,16 +1312,16 @@
</key>
</component>
<component name="RestoreUpdateTree" />
- <component name="RunManager" selected="JUnit.DatabaseTestCase.testEsperPullAPI">
- <tempConfiguration default="false" name="DatabaseTestCase.testEsperPullAPI" type="JUnit" factoryName="JUnit" enabled="false" merge="false">
- <pattern value="org.jboss.test.sam.database.*" />
+ <component name="RunManager" selected="Remote.client">
+ <tempConfiguration default="false" name="ApiTestCase" type="JUnit" factoryName="JUnit" enabled="false" merge="false">
+ <pattern value="org.jboss.test.sam.drools.*" />
<module name="sam-trunk" />
<option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
<option name="ALTERNATIVE_JRE_PATH" />
- <option name="PACKAGE_NAME" value="org.jboss.test.sam.database" />
- <option name="MAIN_CLASS_NAME" value="org.jboss.test.sam.database.DatabaseTestCase" />
- <option name="METHOD_NAME" value="testEsperPullAPI" />
- <option name="TEST_OBJECT" value="method" />
+ <option name="PACKAGE_NAME" value="org.jboss.test.sam.drools" />
+ <option name="MAIN_CLASS_NAME" value="org.jboss.test.sam.drools.ApiTestCase" />
+ <option name="METHOD_NAME" />
+ <option name="TEST_OBJECT" value="class" />
<option name="VM_PARAMETERS" />
<option name="PARAMETERS" />
<option name="WORKING_DIRECTORY" value="$PROJECT_DIR$" />
@@ -683,7 +1330,7 @@
<value defaultName="wholeProject" />
</option>
<RunnerSettings RunnerId="Debug">
- <option name="DEBUG_PORT" value="37688" />
+ <option name="DEBUG_PORT" value="43373" />
<option name="TRANSPORT" value="0" />
<option name="LOCAL" value="true" />
</RunnerSettings>
@@ -694,13 +1341,6 @@
<option name="Make" value="false" />
</method>
</tempConfiguration>
- <configuration default="true" type="Remote" factoryName="Remote">
- <option name="USE_SOCKET_TRANSPORT" value="true" />
- <option name="SERVER_MODE" value="false" />
- <option name="SHMEM_ADDRESS" value="javadebug" />
- <option name="HOST" value="localhost" />
- <option name="PORT" value="5005" />
- </configuration>
<configuration default="true" type="Application" factoryName="Application" enabled="false" merge="false">
<option name="MAIN_CLASS_NAME" />
<option name="VM_PARAMETERS" />
@@ -745,6 +1385,13 @@
<option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
<option name="ALTERNATIVE_JRE_PATH" />
</configuration>
+ <configuration default="true" type="Remote" factoryName="Remote">
+ <option name="USE_SOCKET_TRANSPORT" value="true" />
+ <option name="SERVER_MODE" value="false" />
+ <option name="SHMEM_ADDRESS" value="javadebug" />
+ <option name="HOST" value="localhost" />
+ <option name="PORT" value="5005" />
+ </configuration>
<configuration default="false" name="client" type="Remote" factoryName="Remote">
<option name="USE_SOCKET_TRANSPORT" value="true" />
<option name="SERVER_MODE" value="false" />
@@ -876,7 +1523,7 @@
<window_info id="Changes" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="8" />
<window_info id="Palette" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="3" />
<window_info id="Ant Build" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" order="1" />
- <window_info id="Find" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.5344037" order="1" />
+ <window_info id="Find" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.53872436" order="1" />
<window_info id="Debug" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.39635536" order="3" />
<window_info id="IDEtalk Messages" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="8" />
<window_info id="IDEtalk" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="3" />
@@ -890,8 +1537,8 @@
<window_info id="Module Dependencies" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="3" />
<window_info id="Dependency Viewer" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="8" />
<window_info id="File View" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="3" />
- <window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" weight="0.28755364" order="0" />
- <window_info id="Hierarchy" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.15757205" order="2" />
+ <window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" weight="0.324954" order="0" />
+ <window_info id="Hierarchy" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.20784795" order="2" />
<window_info id="Inspection" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.4" order="6" />
<window_info id="Run" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.69020504" order="2" />
<window_info id="Cvs" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" order="5" />
@@ -977,122 +1624,118 @@
<component name="com.intellij.ide.util.scopeChooser.ScopeChooserConfigurable" proportions="" version="1">
<option name="myLastEditedConfigurable" />
</component>
- <component name="com.intellij.openapi.roots.ui.configuration.projectRoot.ProjectRootMasterDetailsConfigurable" proportions="0.26602086,0.5" version="1">
+ <component name="com.intellij.openapi.roots.ui.configuration.projectRoot.ProjectRootMasterDetailsConfigurable" proportions="0.26602086" version="1">
<option name="myPlainMode" value="false" />
- <option name="myLastEditedConfigurable" value="sam-trunk" />
+ <option name="myLastEditedConfigurable" value="M2 Dep: org.drools:drools-compiler:jar:5.0.0.20080716.092257-204:compile" />
</component>
<component name="com.intellij.profile.ui.ErrorOptionsConfigurable" proportions="0.16666667" version="1">
<option name="myLastEditedConfigurable" value="IDE Profiles" />
</component>
<component name="editorHistoryManager">
- <entry file="file://$PROJECT_DIR$/modules/sim/src/test/java/org/jboss/test/sam/samples/filtering/FilteringTestCase.java">
+ <entry file="file://$PROJECT_DIR$/modules/core/src/main/java/org/jboss/sam/internal/drools/DroolsProcessingStatement.java">
<provider selected="true" editor-type-id="text-editor">
- <state line="44" column="13" selection-start="1689" selection-end="1689" vertical-scroll-proportion="0.5383707">
- <folding>
- <element signature="imports" expanded="true" />
- </folding>
+ <state line="28" column="13" selection-start="1183" selection-end="1183" vertical-scroll-proportion="0.04583836">
+ <folding />
</state>
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/modules/sim/pom.xml">
+ <entry file="jar:///usr/lib/jdk/32/jdk1.5.0_13/src.zip!/java/lang/Exception.java">
<provider selected="true" editor-type-id="text-editor">
- <state line="36" column="0" selection-start="1186" selection-end="1186" vertical-scroll-proportion="0.42908654">
+ <state line="19" column="13" selection-start="495" selection-end="495" vertical-scroll-proportion="0.32086852">
<folding />
</state>
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/modules/sim/src/test/java/org/jboss/test/sam/simulation/SimulationTestCase.java">
+ <entry file="file://$PROJECT_DIR$/modules/core/src/main/java/org/jboss/sam/internal/drools/UpdateListener.java">
<provider selected="true" editor-type-id="text-editor">
- <state line="34" column="13" selection-start="1340" selection-end="1340" vertical-scroll-proportion="0.08972845">
+ <state line="26" column="17" selection-start="1144" selection-end="1144" vertical-scroll-proportion="0.13751508">
<folding />
</state>
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/modules/fx/pom.xml">
+ <entry file="file://$PROJECT_DIR$/modules/core/src/main/java/org/jboss/sam/internal/drools/DroolsAdapter.java">
<provider selected="true" editor-type-id="text-editor">
- <state line="30" column="26" selection-start="917" selection-end="1069" vertical-scroll-proportion="0.5480769">
- <folding />
+ <state line="58" column="61" selection-start="2175" selection-end="2175" vertical-scroll-proportion="0.7708082">
+ <folding>
+ <element signature="imports" expanded="true" />
+ </folding>
</state>
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/modules/fx/src/main/java/org/jboss/sam/chart/Chart.java">
+ <entry file="file://$PROJECT_DIR$/modules/core/src/main/java/org/jboss/sam/EventProcessor.java">
<provider selected="true" editor-type-id="text-editor">
- <state line="32" column="17" selection-start="1283" selection-end="1283" vertical-scroll-proportion="0.26918536">
+ <state line="89" column="23" selection-start="2596" selection-end="2596" vertical-scroll-proportion="0.33293125">
<folding />
</state>
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/modules/core/src/main/java/org/jboss/sam/EventProcessor.java">
+ <entry file="file://$PROJECT_DIR$/modules/core/src/main/java/org/jboss/sam/internal/drools/DroolsEventProcessorImpl.java">
<provider selected="true" editor-type-id="text-editor">
- <state line="34" column="17" selection-start="1514" selection-end="1514" vertical-scroll-proportion="0.3140496">
+ <state line="143" column="32" selection-start="4451" selection-end="4451" vertical-scroll-proportion="0.65621233">
<folding />
</state>
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/modules/core/src/main/java/org/jboss/sam/ProcessingStatement.java">
+ <entry file="file://$PROJECT_DIR$/modules/core/src/test/resources/drools/aggregate.drl">
<provider selected="true" editor-type-id="text-editor">
- <state line="43" column="15" selection-start="1610" selection-end="1610" vertical-scroll-proportion="0.5159386">
+ <state line="9" column="7" selection-start="224" selection-end="224" vertical-scroll-proportion="0.20188902">
<folding />
</state>
</provider>
</entry>
- <entry file="file:///home/hbraun/dev/prj/drools/trunk/drools-compiler/src/test/java/org/drools/integrationtests/StreamsTest.java">
+ <entry file="file://$PROJECT_DIR$/modules/core/src/test/resources/drools/forward.drl">
<provider selected="true" editor-type-id="text-editor">
- <state line="48" column="13" selection-start="1524" selection-end="1524" vertical-scroll-proportion="0.022432113">
+ <state line="10" column="46" selection-start="307" selection-end="307" vertical-scroll-proportion="0.22432113">
<folding />
</state>
</provider>
</entry>
- <entry file="file:///home/hbraun/dev/prj/drools/trunk/drools-compiler/src/test/resources/org/drools/integrationtests/test_CEP_SimpleTimeWindow.drl">
+ <entry file="file://$PROJECT_DIR$/modules/core/src/test/java/org/jboss/test/sam/database/DatabaseTestCase.java">
<provider selected="true" editor-type-id="text-editor">
- <state line="0" column="0" selection-start="0" selection-end="0" vertical-scroll-proportion="0.0">
+ <state line="32" column="29" selection-start="1305" selection-end="1321" vertical-scroll-proportion="0.22836539">
<folding />
</state>
</provider>
</entry>
- <entry file="file:///home/hbraun/dev/prj/drools/trunk/drools-compiler/src/test/resources/org/drools/integrationtests/test_CEP_TimeRelationalOperators.drl">
+ <entry file="file://$PROJECT_DIR$/pom.xml">
<provider selected="true" editor-type-id="text-editor">
- <state line="0" column="0" selection-start="0" selection-end="0" vertical-scroll-proportion="0.0">
+ <state line="142" column="71" selection-start="4876" selection-end="4876" vertical-scroll-proportion="0.33293268">
<folding />
</state>
</provider>
</entry>
- <entry file="file:///home/hbraun/dev/prj/drools/trunk/drools-compiler/src/test/java/org/drools/integrationtests/CepEspTest.java">
+ <entry file="file://$PROJECT_DIR$/modules/core/src/test/resources/drools/simple.drl">
<provider selected="true" editor-type-id="text-editor">
- <state line="46" column="72" selection-start="1611" selection-end="1611" vertical-scroll-proportion="0.43389422">
+ <state line="9" column="43" selection-start="0" selection-end="252" vertical-scroll-proportion="0.20188902">
<folding />
</state>
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/pom.xml">
+ <entry file="file://$PROJECT_DIR$/modules/core/src/test/java/org/jboss/test/sam/drools/ApiTestCase.java">
<provider selected="true" editor-type-id="text-editor">
- <state line="39" column="29" selection-start="1457" selection-end="1457" vertical-scroll-proportion="0.7487981">
+ <state line="47" column="32" selection-start="1709" selection-end="1709" vertical-scroll-proportion="0.3270366">
<folding />
</state>
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/modules/core/pom.xml">
+ <entry file="file://$PROJECT_DIR$/modules/core/src/test/java/org/jboss/test/sam/adapter/invm/InVMAdapterTestCase.java">
<provider selected="true" editor-type-id="text-editor">
- <state line="40" column="96" selection-start="1286" selection-end="1286" vertical-scroll-proportion="0.8161058">
+ <state line="33" column="24" selection-start="1320" selection-end="1320" vertical-scroll-proportion="0.26918536">
<folding />
</state>
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/modules/core/src/main/java/org/jboss/sam/internal/drools/DroolsEventProcessorImpl.java">
+ <entry file="file://$PROJECT_DIR$/modules/core/src/test/java/org/jboss/test/sam/SamTestSetup.java">
<provider selected="true" editor-type-id="text-editor">
- <state line="39" column="0" selection-start="1423" selection-end="1423" vertical-scroll-proportion="0.40377805">
- <folding>
- <element signature="imports" expanded="true" />
- </folding>
+ <state line="69" column="47" selection-start="2758" selection-end="2758" vertical-scroll-proportion="0.60212517">
+ <folding />
</state>
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/modules/core/src/main/java/org/jboss/sam/EventProcessorFactory.java">
+ <entry file="file://$PROJECT_DIR$/modules/core/src/test/resources/adapter/invm/test.drl">
<provider selected="true" editor-type-id="text-editor">
- <state line="30" column="22" selection-start="1219" selection-end="1219" vertical-scroll-proportion="0.22432113">
- <folding>
- <element signature="imports" expanded="true" />
- </folding>
+ <state line="7" column="41" selection-start="0" selection-end="245" vertical-scroll-proportion="0.1570248">
+ <folding />
</state>
</provider>
</entry>
Modified: sam/trunk/modules/core/pom.xml
===================================================================
--- sam/trunk/modules/core/pom.xml 2008-07-22 18:06:55 UTC (rev 195)
+++ sam/trunk/modules/core/pom.xml 2008-07-23 12:54:57 UTC (rev 196)
@@ -6,7 +6,7 @@
<groupId>org.jboss.sam</groupId>
<artifactId>core</artifactId>
<packaging>jar</packaging>
-
+
<!-- Parent -->
<parent>
<groupId>org.jboss.sam</groupId>
@@ -14,7 +14,6 @@
<version>1.0.0.SNAPSHOT</version>
</parent>
-
<!-- Properties -->
<properties>
<surefire.security.args>-Djava.security.manager -Djava.security.policy=src/test/etc/tst.policy</surefire.security.args>
@@ -26,10 +25,16 @@
<dependency>
<groupId>org.drools</groupId>
- <artifactId>drools</artifactId>
+ <artifactId>drools-core</artifactId>
</dependency>
<dependency>
+ <groupId>org.drools</groupId>
+ <artifactId>drools-compiler</artifactId>
+ </dependency>
+
+
+ <dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
</dependency>
@@ -56,9 +61,19 @@
<dependency>
<groupId>javasim</groupId>
- <artifactId>javasim</artifactId>
+ <artifactId>javasim</artifactId>
</dependency>
+ <dependency>
+ <groupId>janino</groupId>
+ <artifactId>janino</artifactId>
+ </dependency>
+
+ <dependency>
+ <groupId>org.mvel</groupId>
+ <artifactId>mvel</artifactId>
+ </dependency>
+
</dependencies>
<!-- Plugins -->
@@ -70,7 +85,7 @@
<filtering>true</filtering>
</resource>
</resources>
-
+
</build>
<profiles>
@@ -85,7 +100,7 @@
</property>
</activation>
<properties>
- <surefire.jvm.args>${surefire.security.args} ${surefire.jdwp.args}</surefire.jvm.args>
+ <surefire.jvm.args>${surefire.security.args} ${surefire.jdwp.args} -Ddrools.compiler=JANINO</surefire.jvm.args>
</properties>
</profile>
<profile>
@@ -96,7 +111,7 @@
</property>
</activation>
<properties>
- <surefire.jvm.args>${surefire.security.args}</surefire.jvm.args>
+ <surefire.jvm.args>${surefire.security.args} -Ddrools.compiler=JANINO</surefire.jvm.args>
</properties>
</profile>
Modified: sam/trunk/modules/core/src/main/java/org/jboss/sam/EventProcessor.java
===================================================================
--- sam/trunk/modules/core/src/main/java/org/jboss/sam/EventProcessor.java 2008-07-22 18:06:55 UTC (rev 195)
+++ sam/trunk/modules/core/src/main/java/org/jboss/sam/EventProcessor.java 2008-07-23 12:54:57 UTC (rev 196)
@@ -59,13 +59,13 @@
void removeOutput(String streamName);
/**
- * Iterate over input stream names
+ * Iterate over input adapter names
* @return
*/
Iterator<String> getStreamInputNames();
/**
- * Iterate over output stream names
+ * Iterate over output adapter names
* @return
*/
Iterator<String> getStreamOutputNames();
@@ -80,7 +80,7 @@
ProcessingStatement registerStatement(String statementName, String epl);
/**
- * Creates a statement and binds it to an output stream.
+ * Creates a statement and binds it to an output adapter.
*
* @param streamOutputName
* @param statementName
Modified: sam/trunk/modules/core/src/main/java/org/jboss/sam/StreamOutput.java
===================================================================
--- sam/trunk/modules/core/src/main/java/org/jboss/sam/StreamOutput.java 2008-07-22 18:06:55 UTC (rev 195)
+++ sam/trunk/modules/core/src/main/java/org/jboss/sam/StreamOutput.java 2008-07-23 12:54:57 UTC (rev 196)
@@ -38,7 +38,7 @@
/**
* Receive forwarded events
- * @param args an event stream
+ * @param args an event adapter
*/
void write(EventMessage[] args);
Added: sam/trunk/modules/core/src/main/java/org/jboss/sam/internal/drools/DroolsAdapter.java
===================================================================
--- sam/trunk/modules/core/src/main/java/org/jboss/sam/internal/drools/DroolsAdapter.java (rev 0)
+++ sam/trunk/modules/core/src/main/java/org/jboss/sam/internal/drools/DroolsAdapter.java 2008-07-23 12:54:57 UTC (rev 196)
@@ -0,0 +1,62 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2006, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.sam.internal.drools;
+
+import org.drools.StatefulSession;
+import org.drools.WorkingMemoryEntryPoint;
+
+import java.util.Map;
+
+/**
+ * Will be injected into WorkingMemory to give access drools entities that
+ * are relevant to the SAM processing model.
+ *
+ * @author Heiko.Braun <heiko.braun(a)jboss.com>
+ */
+public class DroolsAdapter
+{
+ private StatefulSession session;
+ private Map<String, StreamOutputAdapter> outputAdapters;
+
+ public DroolsAdapter(StatefulSession session, Map<String, StreamOutputAdapter> outputAdapters)
+ {
+ this.session = session;
+ this.outputAdapters = outputAdapters;
+ }
+
+ public WorkingMemoryEntryPoint getStream(String name)
+ {
+ WorkingMemoryEntryPoint memoryEntryPoint = this.session.getWorkingMemoryEntryPoint(name);
+ if(null==memoryEntryPoint)
+ throw new IllegalArgumentException("Unknown stream " + name);
+
+ return memoryEntryPoint;
+ }
+
+ public UpdateListener getListener(String name)
+ {
+ StreamOutputAdapter adapter = this.outputAdapters.get(name);
+ if(null==adapter)
+ throw new IllegalArgumentException("Unknown listener '" + name +"'");
+ return adapter;
+ }
+}
Property changes on: sam/trunk/modules/core/src/main/java/org/jboss/sam/internal/drools/DroolsAdapter.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Modified: sam/trunk/modules/core/src/main/java/org/jboss/sam/internal/drools/DroolsEventProcessorImpl.java
===================================================================
--- sam/trunk/modules/core/src/main/java/org/jboss/sam/internal/drools/DroolsEventProcessorImpl.java 2008-07-22 18:06:55 UTC (rev 195)
+++ sam/trunk/modules/core/src/main/java/org/jboss/sam/internal/drools/DroolsEventProcessorImpl.java 2008-07-23 12:54:57 UTC (rev 196)
@@ -21,91 +21,258 @@
*/
package org.jboss.sam.internal.drools;
-import org.jboss.sam.EventProcessor;
-import org.jboss.sam.StreamInput;
-import org.jboss.sam.StreamOutput;
-import org.jboss.sam.ProcessingStatement;
+import org.drools.RuleBase;
+import org.drools.RuleBaseFactory;
+import org.drools.StatefulSession;
+import org.drools.compiler.DrlParser;
+import org.drools.compiler.DroolsParserException;
+import org.drools.compiler.PackageBuilder;
+import org.drools.compiler.PackageBuilderConfiguration;
+import org.drools.lang.descr.PackageDescr;
+import org.drools.spi.GlobalResolver;
+import org.jboss.sam.*;
+import java.io.*;
+import java.net.URL;
import java.util.Iterator;
-import java.net.URL;
+import java.util.Map;
+import java.util.Properties;
+import java.util.concurrent.ConcurrentHashMap;
/**
* @author Heiko.Braun <heiko.braun(a)jboss.com>
*/
-public class DroolsEventProcessorImpl implements EventProcessor
+public class DroolsEventProcessorImpl
+ implements EventProcessor<RuleBase>, StreamInputCallback, GlobalResolver
{
- String name;
- URL config;
+ private String name;
+ private URL config;
+ private RuleBase ruleBase;
+ private StatefulSession session;
+
+ private Map<String, StreamInput> streamInputs = new ConcurrentHashMap<String, StreamInput>();
+ private Map<String, StreamOutput> streamOutputs = new ConcurrentHashMap<String, StreamOutput>();
+ private Map<String, ProcessingStatement> statements = new ConcurrentHashMap<String, ProcessingStatement>();
+
+ private Map<String, Object> wmGlobals = new ConcurrentHashMap<String, Object>();
+ private Map<String, StreamOutputAdapter> outputAdapters = new ConcurrentHashMap<String, StreamOutputAdapter>();
+
public DroolsEventProcessorImpl(String name, URL config)
{
this.name = name;
this.config = config;
+
+ try
+ {
+ this.ruleBase = RuleBaseFactory.newRuleBase( RuleBase.RETEOO, null );
+ this.session = ruleBase.newStatefulSession();
+ this.session.setGlobalResolver(this);
+
+ } catch (Exception e)
+ {
+ throw new RuntimeException("Failed to initialize event processor", e);
+ }
}
+
+ public Object resolveGlobal(String key)
+ {
+ Object global = null;
+
+ // TODO: Please note that there is also 'drools', revisit!
+ if("Drools".equals(key))
+ {
+ global = new DroolsAdapter(this.session, this.outputAdapters);
+ }
+ else
+ {
+ // It may be a adapter output
+ global = this.outputAdapters.get(key);
+
+ // Or a general global variable
+ if(null==global)
+ global = wmGlobals.get(key);
+ }
+ return global;
+ }
+
+ public void setGlobal(String key, Object object)
+ {
+ this.wmGlobals.put(key, object);
+ }
+
+ public void writeExternal(ObjectOutput out) throws IOException
+ {
+ throw new RuntimeException("NYI");
+ }
+
+ public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException
+ {
+ throw new RuntimeException("NYI");
+ }
+
+ public void onEvent(Object args)
+ {
+ session.insert(args);
+
+ // TODO: shouldn't be necessary
+ session.fireAllRules();
+ }
+
public void addInput(StreamInput streamInput)
{
- //To change body of implemented methods use File | Settings | File Templates.
+ streamInput.registerCallback(this);
+ this.streamInputs.put(streamInput.getStreamName(), streamInput);
}
public void removeInput(String streamName)
{
- //To change body of implemented methods use File | Settings | File Templates.
+ this.streamInputs.remove(streamName);
}
- public void addOutput(StreamOutput streamOutput)
+ public Iterator<String> getStreamInputNames()
{
- //To change body of implemented methods use File | Settings | File Templates.
+ return this.streamInputs.keySet().iterator();
}
- public void removeOutput(String streamName)
+ public void addOutput(StreamOutput streamOutput)
{
- //To change body of implemented methods use File | Settings | File Templates.
+ this.streamOutputs.put(streamOutput.getStreamName(), streamOutput);
+
+ // Create a drools adapter
+ StreamOutputAdapter adapter = new StreamOutputAdapter(streamOutput);
+
+ // Make it availble to the drools GlobalResolver
+ this.outputAdapters.put(streamOutput.getStreamName(), adapter);
+
}
- public Iterator getStreamInputNames()
+ public void removeOutput(String streamName)
{
- return null; //To change body of implemented methods use File | Settings | File Templates.
+ this.streamOutputs.remove(streamName);
}
- public Iterator getStreamOutputNames()
+ public Iterator<String> getStreamOutputNames()
{
- return null; //To change body of implemented methods use File | Settings | File Templates.
+ return this.streamOutputs.keySet().iterator();
}
+ /**
+ * Creates a drools package and registers it with the current rulebase
+ */
public ProcessingStatement registerStatement(String statementName, String epl)
{
- return null; //To change body of implemented methods use File | Settings | File Templates.
+ InputStreamReader reader = new InputStreamReader(
+ new ByteArrayInputStream(epl.getBytes())
+ );
+
+ // Create a drools package
+ org.drools.rule.Package pkg = buildAndAddPackage(reader);
+ DroolsProcessingStatement stmt = new DroolsProcessingStatement(
+ statementName, epl, pkg
+ );
+
+ this.statements.put(statementName, stmt);
+ return stmt;
}
+ /**
+ * Create a drools package, register it with the rulebase and make
+ * sure that the adapter output adapter is available as a drools global variable
+ */
public ProcessingStatement registerBoundStatement(String streamOutputName, String statementName, String epl)
{
- return null; //To change body of implemented methods use File | Settings | File Templates.
+ StreamOutputAdapter streamOutput = this.outputAdapters.get(streamOutputName);
+ if(null == streamOutput)
+ throw new IllegalArgumentException("No such output stream: " + streamOutputName);
+
+ // register the statement
+ ProcessingStatement stmt = registerStatement(statementName, epl);
+
+ return stmt;
}
+ public Iterator<String> getStatementNames()
+ {
+ return this.statements.keySet().iterator();
+ }
+
+
public void clearStatement(String statementName)
{
- //To change body of implemented methods use File | Settings | File Templates.
+ ProcessingStatement stmt = statements.get(statementName);
+ if(null==stmt)
+ throw new IllegalArgumentException("No such statement: " + statementName);
+
+ statements.remove(statementName);
}
public void clearAllStatements()
{
- //To change body of implemented methods use File | Settings | File Templates.
+ Iterator<String> stmtNames = getStatementNames();
+ while(stmtNames.hasNext())
+ {
+ clearStatement(stmtNames.next());
+ }
}
+ public String getName()
+ {
+ return this.name;
+ }
- public Iterator getStatementNames()
+ public RuleBase getUnderlying()
{
- return null; //To change body of implemented methods use File | Settings | File Templates.
+ return this.ruleBase;
}
- public String getName()
+ // --------------------------------
+ // Drools stuff below
+
+ private org.drools.rule.Package buildAndAddPackage(Reader reader)
{
- return null; //To change body of implemented methods use File | Settings | File Templates.
+ org.drools.rule.Package pkg = buildPackage(reader);
+ this.ruleBase.addPackage( pkg );
+ return pkg;
}
- public Object getUnderlying()
+ private org.drools.rule.Package buildPackage(Reader reader)
{
- return null; //To change body of implemented methods use File | Settings | File Templates.
+ org.drools.rule.Package pkg = null;
+
+ try
+ {
+ DrlParser parser = new DrlParser();
+ PackageDescr packageDescr = parser.parse( reader );
+
+ if ( parser.hasErrors() )
+ {
+ StringBuffer sb = new StringBuffer("Error messages in parser: ");
+ for(Object err : parser.getErrors())
+ {
+ sb.append(err).append("\n");
+ }
+ throw new DroolsParserException( sb.toString() );
+ }
+
+ PackageBuilder builder = createPackageBuilder();
+ builder.addPackage( packageDescr );
+ pkg = builder.getPackage();
+ }
+ catch (DroolsParserException e)
+ {
+ throw new RuntimeException("Failed to parse DRL", e);
+ }
+
+ return pkg;
}
+
+ private PackageBuilder createPackageBuilder()
+ {
+ Properties props = new Properties();
+ props.setProperty("drools.dialect.java.compiler", "JANINO");
+ PackageBuilderConfiguration pkgConfig = new PackageBuilderConfiguration(props);
+ return new PackageBuilder(pkgConfig);
+ }
}
Added: sam/trunk/modules/core/src/main/java/org/jboss/sam/internal/drools/DroolsProcessingStatement.java
===================================================================
--- sam/trunk/modules/core/src/main/java/org/jboss/sam/internal/drools/DroolsProcessingStatement.java (rev 0)
+++ sam/trunk/modules/core/src/main/java/org/jboss/sam/internal/drools/DroolsProcessingStatement.java 2008-07-23 12:54:57 UTC (rev 196)
@@ -0,0 +1,69 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2006, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.sam.internal.drools;
+
+import org.jboss.sam.ProcessingStatement;
+
+/**
+ * @author Heiko.Braun <heiko.braun(a)jboss.com>
+ */
+public class DroolsProcessingStatement implements ProcessingStatement<org.drools.rule.Package>
+{
+
+ private String name;
+ private String epl;
+ private boolean bound = false;
+ private org.drools.rule.Package pkg;
+
+ public DroolsProcessingStatement(String name, String epl, org.drools.rule.Package pkg)
+ {
+ this(name, epl, pkg, false);
+ }
+
+ public DroolsProcessingStatement(String name, String epl, org.drools.rule.Package pkg, boolean isBound)
+ {
+ this.name = name;
+ this.epl = epl;
+ this.pkg = pkg;
+ this.bound = isBound;
+ }
+
+ public String getName()
+ {
+ return this.name;
+ }
+
+ public String getExpression()
+ {
+ return this.epl;
+ }
+
+ public boolean isBound()
+ {
+ return this.bound;
+ }
+
+ public org.drools.rule.Package getUnderlying()
+ {
+ return pkg;
+ }
+}
Property changes on: sam/trunk/modules/core/src/main/java/org/jboss/sam/internal/drools/DroolsProcessingStatement.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Added: sam/trunk/modules/core/src/main/java/org/jboss/sam/internal/drools/ObjectMessageAdaptor.java
===================================================================
--- sam/trunk/modules/core/src/main/java/org/jboss/sam/internal/drools/ObjectMessageAdaptor.java (rev 0)
+++ sam/trunk/modules/core/src/main/java/org/jboss/sam/internal/drools/ObjectMessageAdaptor.java 2008-07-23 12:54:57 UTC (rev 196)
@@ -0,0 +1,73 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2006, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.sam.internal.drools;
+
+import org.jboss.sam.EventMessage;
+
+import java.util.Iterator;
+import java.lang.reflect.Method;
+
+/**
+ * @author Heiko.Braun <heiko.braun(a)jboss.com>
+ */
+public class ObjectMessageAdaptor implements EventMessage
+{
+ private final Object obj;
+
+ public ObjectMessageAdaptor(Object obj)
+ {
+ this.obj = obj;
+ }
+
+ public long getTimestamp()
+ {
+ return (Long)getProperty("timestamp");
+ }
+
+ public Object getProperty(String name)
+ {
+ Object returnValue = null;
+ String methodName = "get" + name.substring(0,1).toUpperCase()
+ + name.substring(1, name.length()).toLowerCase();
+
+ try
+ {
+ Method method = this.obj.getClass().getMethod(methodName);
+ returnValue = method.invoke(this.obj);
+ }
+ catch (Exception e)
+ {
+ throw new RuntimeException("Proprty access error: "+methodName, e);
+ }
+ return returnValue;
+ }
+
+ public Iterator getPropertyNames()
+ {
+ throw new RuntimeException("MYI");
+ }
+
+ public Object getUnderlying()
+ {
+ return this.obj;
+ }
+}
Property changes on: sam/trunk/modules/core/src/main/java/org/jboss/sam/internal/drools/ObjectMessageAdaptor.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Added: sam/trunk/modules/core/src/main/java/org/jboss/sam/internal/drools/StreamOutputAdapter.java
===================================================================
--- sam/trunk/modules/core/src/main/java/org/jboss/sam/internal/drools/StreamOutputAdapter.java (rev 0)
+++ sam/trunk/modules/core/src/main/java/org/jboss/sam/internal/drools/StreamOutputAdapter.java 2008-07-23 12:54:57 UTC (rev 196)
@@ -0,0 +1,56 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2006, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.sam.internal.drools;
+
+import org.jboss.sam.StreamOutput;
+import org.jboss.sam.EventMessage;
+
+/**
+ * @author Heiko.Braun <heiko.braun(a)jboss.com>
+ */
+public class StreamOutputAdapter implements UpdateListener
+{
+ private StreamOutput delegate;
+
+ public StreamOutputAdapter(StreamOutput delegate)
+ {
+ this.delegate = delegate;
+ }
+
+ public String getName()
+ {
+ return delegate.getStreamName();
+ }
+
+ public void update(Object result)
+ {
+ EventMessage[] events = adoptPayload(result);
+ delegate.write(events);
+ }
+
+ private EventMessage[] adoptPayload(Object data)
+ {
+ // TODO: deal with collection types
+ return new EventMessage[] { new ObjectMessageAdaptor(data) };
+ }
+
+}
Property changes on: sam/trunk/modules/core/src/main/java/org/jboss/sam/internal/drools/StreamOutputAdapter.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Added: sam/trunk/modules/core/src/main/java/org/jboss/sam/internal/drools/UpdateListener.java
===================================================================
--- sam/trunk/modules/core/src/main/java/org/jboss/sam/internal/drools/UpdateListener.java (rev 0)
+++ sam/trunk/modules/core/src/main/java/org/jboss/sam/internal/drools/UpdateListener.java 2008-07-23 12:54:57 UTC (rev 196)
@@ -0,0 +1,30 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2006, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.sam.internal.drools;
+
+/**
+ * @author Heiko.Braun <heiko.braun(a)jboss.com>
+ */
+public interface UpdateListener
+{
+ void update(Object result);
+}
Property changes on: sam/trunk/modules/core/src/main/java/org/jboss/sam/internal/drools/UpdateListener.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Modified: sam/trunk/modules/core/src/test/java/org/jboss/test/sam/SamTestSetup.java
===================================================================
--- sam/trunk/modules/core/src/test/java/org/jboss/test/sam/SamTestSetup.java 2008-07-22 18:06:55 UTC (rev 195)
+++ sam/trunk/modules/core/src/test/java/org/jboss/test/sam/SamTestSetup.java 2008-07-23 12:54:57 UTC (rev 196)
@@ -29,6 +29,9 @@
import org.jboss.sam.internal.stream.InVMDispatcher;
import java.net.URL;
+import java.io.BufferedReader;
+import java.io.InputStreamReader;
+import java.io.IOException;
/**
* Basic SAM test skeleton. Test cases should derive from this class.
@@ -44,7 +47,7 @@
/**
* Constructs a {@link org.jboss.sam.EventProcessor} for a given name
- * and assigns default stream input's and output's.
+ * and assigns default adapter input's and output's.
*
* @see org.jboss.sam.internal.stream.InVMStreamInput
* @see org.jboss.test.sam.BufferedStreamOutput
@@ -52,12 +55,11 @@
* @param name the runtime name
* @param configFile name of the esper-config file relative to test execution
*/
- public void createInVMSetup(String name, String configFile)
+ public void createProcessorWithDefaultIO(String name, String configFile)
{
// Main runtime
- eventProcessor = EventProcessorFactory.newInstance().createRuntime(
- name, loadTestConfiguration(configFile)
- );
+ URL config = configFile!=null ? loadTestConfiguration(configFile) : null;
+ eventProcessor = EventProcessorFactory.newInstance().createRuntime(name, config);
// Stream input and output
streamInput = new InVMStreamInput("InVM").start();
@@ -65,9 +67,7 @@
bufferedOutput = new BufferedStreamOutput("InVM").start();
eventProcessor.addInput(streamInput);
- eventProcessor.addOutput(bufferedOutput);
-
- System.out.println("Initialized SamRuntime: " + eventProcessor.getName());
+ eventProcessor.addOutput(bufferedOutput);
}
/**
@@ -90,4 +90,27 @@
{
return Thread.currentThread().getContextClassLoader().getResource(name);
}
+
+ protected String getDRLFromResource(String resourceName)
+ {
+ try
+ {
+ URL url = Thread.currentThread().getContextClassLoader().getResource(resourceName);
+ BufferedReader reader = new BufferedReader(
+ new InputStreamReader(url.openStream())
+ );
+ StringBuffer sb = new StringBuffer();
+ String line;
+ while((line = reader.readLine()) != null)
+ {
+ sb.append(line);
+ }
+
+ return sb.toString();
+ }
+ catch (IOException e)
+ {
+ throw new RuntimeException("Failed to load DRL", e);
+ }
+ }
}
Added: sam/trunk/modules/core/src/test/java/org/jboss/test/sam/adapter/invm/Alert.java
===================================================================
--- sam/trunk/modules/core/src/test/java/org/jboss/test/sam/adapter/invm/Alert.java (rev 0)
+++ sam/trunk/modules/core/src/test/java/org/jboss/test/sam/adapter/invm/Alert.java 2008-07-23 12:54:57 UTC (rev 196)
@@ -0,0 +1,47 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2006, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.test.sam.adapter.invm;
+
+/**
+ * @author Heiko.Braun <heiko.braun(a)jboss.com>
+ */
+public final class Alert
+{
+ private final String source;
+ private final String value;
+
+ public Alert(String source, String value)
+ {
+ this.value = value;
+ this.source = source;
+ }
+
+ public String getValue()
+ {
+ return value;
+ }
+
+ public String getSource()
+ {
+ return source;
+ }
+}
Property changes on: sam/trunk/modules/core/src/test/java/org/jboss/test/sam/adapter/invm/Alert.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Added: sam/trunk/modules/core/src/test/java/org/jboss/test/sam/adapter/invm/InVMAdapterTestCase.java
===================================================================
--- sam/trunk/modules/core/src/test/java/org/jboss/test/sam/adapter/invm/InVMAdapterTestCase.java (rev 0)
+++ sam/trunk/modules/core/src/test/java/org/jboss/test/sam/adapter/invm/InVMAdapterTestCase.java 2008-07-23 12:54:57 UTC (rev 196)
@@ -0,0 +1,67 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2006, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.test.sam.adapter.invm;
+
+import org.jboss.sam.ProcessingStatement;
+import org.jboss.test.sam.SamTestSetup;
+
+/**
+ * @author Heiko.Braun <heiko.braun(a)jboss.com>
+ */
+public class InVMAdapterTestCase extends SamTestSetup
+{
+ public void setUp()
+ {
+ createProcessorWithDefaultIO("InVMAdapterTestCase", null);
+ }
+
+ public void testAdapter() throws Exception
+ {
+ // setup
+ String stmt = getDRLFromResource("adapter/invm/test.drl");
+ ProcessingStatement view = eventProcessor.registerBoundStatement("InVM","AlertTest", stmt);
+
+ // fire event
+ generateInVMEvent( new Alert("sensor1", "Threshold exceeded") );
+
+ // check result
+ assertTrue("Listener not invoked", bufferedOutput.isInvoked());
+ assertFalse( bufferedOutput.getLastNewData().length == 0);
+ assertEquals( "Threshold exceeded", bufferedOutput.getLastNewData()[0].getProperty("value"));
+ }
+
+ public void testUnknownAdapter() throws Exception
+ {
+ try
+ {
+ String stmt = "select * from Alert.win:length(1)";
+ eventProcessor.registerBoundStatement("NoSuchAdapter", "AlertTest", stmt);
+ fail("Expected exception not thrown");
+ }
+ catch (IllegalArgumentException e)
+ {
+ // expected behaviour
+ }
+
+ }
+}
+
Property changes on: sam/trunk/modules/core/src/test/java/org/jboss/test/sam/adapter/invm/InVMAdapterTestCase.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Modified: sam/trunk/modules/core/src/test/java/org/jboss/test/sam/database/DatabaseTestCase.java
===================================================================
--- sam/trunk/modules/core/src/test/java/org/jboss/test/sam/database/DatabaseTestCase.java 2008-07-22 18:06:55 UTC (rev 195)
+++ sam/trunk/modules/core/src/test/java/org/jboss/test/sam/database/DatabaseTestCase.java 2008-07-23 12:54:57 UTC (rev 196)
@@ -21,21 +21,10 @@
*/
package org.jboss.test.sam.database;
-import com.espertech.esper.client.EPServiceProvider;
-import com.espertech.esper.client.EPStatement;
-import com.espertech.esper.client.StatementAwareUpdateListener;
-import com.espertech.esper.event.EventBean;
-import org.jboss.sam.ProcessingStatement;
import org.jboss.sam.EventMessage;
-import org.jboss.sam.StreamOutput;
-import org.jboss.sam.internal.esper.EsperProcessingStatement;
-import org.jboss.test.sam.SamTestSetup;
import org.jboss.test.sam.InMemoryDatabase;
+import org.jboss.test.sam.SamTestSetup;
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
/**
* Test esper database integration patterns
*
@@ -48,7 +37,7 @@
public void setUp() throws Exception
{
// Runtime
- createInVMSetup("DataBaseTestCase", "database/esper-cfg.xml");
+ createProcessorWithDefaultIO("DataBaseTestCase", "database/esper-cfg.xml");
// InMemory Database
db = createDatabase();
Added: sam/trunk/modules/core/src/test/java/org/jboss/test/sam/drools/ApiTestCase.java
===================================================================
--- sam/trunk/modules/core/src/test/java/org/jboss/test/sam/drools/ApiTestCase.java (rev 0)
+++ sam/trunk/modules/core/src/test/java/org/jboss/test/sam/drools/ApiTestCase.java 2008-07-23 12:54:57 UTC (rev 196)
@@ -0,0 +1,71 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2006, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.test.sam.drools;
+
+import org.jboss.test.sam.SamTestSetup;
+
+/**
+ * Verifies that the SAM core API works atop of Drools Fusion.
+ *
+ * @author Heiko.Braun <heiko.braun(a)jboss.com>
+ */
+public class ApiTestCase extends SamTestSetup
+{
+
+ protected void setUp() throws Exception
+ {
+ // Creates default adapter inputs and outputs
+ createProcessorWithDefaultIO("ApiTestCase", null);
+ }
+
+ public void testBoundStatement()
+ {
+ // EPL as String
+ String epl = getDRLFromResource("drools/simple.drl");
+
+ // register statement
+ eventProcessor.registerBoundStatement("InVM", "testBoundStatement", epl);
+
+ StockTick eventMessage = new StockTick( "ACME");
+ generateInVMEvent(eventMessage);
+
+ assertNotNull(bufferedOutput.getLastNewData());
+ assertEquals(bufferedOutput.getLastNewData().length, 1);
+ }
+
+ public void testAggregationAndForwarding()
+ {
+ String aggregateDSL = getDRLFromResource("drools/aggregate.drl");
+ String outputDSL = getDRLFromResource("drools/forward.drl");
+
+ eventProcessor.registerStatement("aggregate", aggregateDSL);
+ eventProcessor.registerBoundStatement("InVM", "output", outputDSL);
+
+ StockTick eventMessage = new StockTick( "ACME");
+ generateInVMEvent(eventMessage);
+
+ assertNotNull(bufferedOutput.getLastNewData());
+ assertEquals(bufferedOutput.getLastNewData().length, 1);
+ assertEquals(bufferedOutput.getLastNewData()[0].getProperty("symbol"), "ACME");
+ }
+
+}
Property changes on: sam/trunk/modules/core/src/test/java/org/jboss/test/sam/drools/ApiTestCase.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Added: sam/trunk/modules/core/src/test/java/org/jboss/test/sam/drools/StockTick.java
===================================================================
--- sam/trunk/modules/core/src/test/java/org/jboss/test/sam/drools/StockTick.java (rev 0)
+++ sam/trunk/modules/core/src/test/java/org/jboss/test/sam/drools/StockTick.java 2008-07-23 12:54:57 UTC (rev 196)
@@ -0,0 +1,51 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2006, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.test.sam.drools;
+
+/**
+ * @author Heiko.Braun <heiko.braun(a)jboss.com>
+ */
+public class StockTick
+{
+ private String symbol;
+
+ public StockTick(String symbol)
+ {
+ this.symbol = symbol;
+ }
+
+ public String getSymbol()
+ {
+ return symbol;
+ }
+
+ public void setSymbol(String symbol)
+ {
+ this.symbol = symbol;
+ }
+
+
+ public String toString()
+ {
+ return "StockTick(symbol="+symbol+")";
+ }
+}
Property changes on: sam/trunk/modules/core/src/test/java/org/jboss/test/sam/drools/StockTick.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Deleted: sam/trunk/modules/core/src/test/resources/adapter/invm/esper-cfg.xml
===================================================================
--- sam/trunk/modules/core/src/test/resources/adapter/invm/esper-cfg.xml 2008-07-22 18:06:55 UTC (rev 195)
+++ sam/trunk/modules/core/src/test/resources/adapter/invm/esper-cfg.xml 2008-07-23 12:54:57 UTC (rev 196)
@@ -1,101 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- Sample configuration file.
--->
-<esper-configuration xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xmlns="http://www.espertech.com/schema/esper"
- xsi:noNamespaceSchemaLocation="esper-configuration-2-0.xsd">
-
- <!--
- Adds a Java package name of a package that Java event classes reside in.
- This setting allows an application to place all it's events into one or more Java packages
- and then declare these packages.
- The engine attempts to resolve an event type alias to a Java class residing in each declared package.
- -->
- <event-type-auto-alias package-name="org.jboss.test.sam.stream.invm"/>
-
- <!--
- Sample configuration for database access using DriverManager;
- retains connections associated with a statement, closing the connection when a statement is stopped
- -->
- <database-reference name="mysql1">
- <drivermanager-connection class-name="com.mysql.jdbc.Driver"
- url="jdbc:mysql://localhost/mysql1?user=root&password="
- user="jbossfx" password="">
- <connection-arg name="user" value ="root"/>
- <connection-arg name="password" value =""/>
- </drivermanager-connection>
- <!--
- Retains connection associated with a statement, closing a connection only when a statement is stopped
- -->
- <connection-lifecycle value="retain"/>
- <!--
- Configures an optional time-based cache with a maximum age in seconds and a purge interval,
- and an optional reference strategy
- -->
- <expiry-time-cache max-age-seconds="60" purge-interval-seconds="120" ref-type="weak"/>
- </database-reference>
-
- <!--
- Sample engine settings
- -->
- <engine-settings>
- <defaults>
- <threading>
- <!--
- In multithreaded environments, this setting controls whether dispatches to listeners
- preserve the ordering in which the statement processes events
- -->
- <listener-dispatch preserve-order="true" timeout-msec="1000" locking="spin"/>
- <!--
- In multithreaded environments, this setting controls whether insert-into streams
- preserve the order of events inserted into them by one or more statements,
- allowing statements that consume other statement's events to behave deterministic.
- -->
- <insert-into-dispatch preserve-order="true" timeout-msec="100" locking="spin"/>
- <!-- These settings define the resolution of the internal timer thread,
- and can disable the timer to indicate that the application supplies the timer events
- -->
- <internal-timer enabled="true" msec-resolution="100"/>
- </threading>
- <event-meta>
- <!--
- Lets configure the engine to use case-insensitive resolution for event properties
- -->
- <class-property-resolution style="distinct_case_insensitive"/>
- </event-meta>
- <view-resources>
- <!--
- Lets configure the engine to reuse views, which is the default but can introduce additional locking
- -->
- <share-views enabled="true"/>
- </view-resources>
- <logging>
- <!--
- By default the engine does not generate logging through Log4j of the event processing execution path.
- To get debug output, set this flag to true. This setting translates into a static boolean flag
- and thus may apply to multiple engine instances within a given VM.
- -->
- <execution-path enabled="false" />
- </logging>
- <stream-selection>
- <!--
- By default the engine generates output for the insert stream only, and not for the remove stream.
- To obtain output for remove stream only, or for insert stream and remove stream,
- there are keywords "rstream" and "irstream" for use in the select clause.
- This setting controls the default behavior, if no keyword is specified in the select-clause by statements.
- -->
- <stream-selector value="irstream" />
- </stream-selection>
- <time-source>
- <!--
- By default the time source is System.currentTimeMillis.
- This sample configures the nano-second time call System.nanoTime() as the time source,
- which Esper adjusts for wall clock time.
- -->
- <time-source-type value="nano" />
- </time-source>
- </defaults>
- </engine-settings>
-
-</esper-configuration>
Added: sam/trunk/modules/core/src/test/resources/adapter/invm/test.drl
===================================================================
--- sam/trunk/modules/core/src/test/resources/adapter/invm/test.drl (rev 0)
+++ sam/trunk/modules/core/src/test/resources/adapter/invm/test.drl 2008-07-23 12:54:57 UTC (rev 196)
@@ -0,0 +1,11 @@
+package org.jboss.test.sam.drools;
+
+import org.jboss.test.sam.adapter.invm.Alert;
+global org.jboss.sam.internal.drools.DroolsAdapter Drools;
+
+rule "Select any Alert"
+when
+ $event: Alert()
+then
+ Drools.getListener("InVM").update($event);
+end
Deleted: sam/trunk/modules/core/src/test/resources/database/esper-cfg.xml
===================================================================
--- sam/trunk/modules/core/src/test/resources/database/esper-cfg.xml 2008-07-22 18:06:55 UTC (rev 195)
+++ sam/trunk/modules/core/src/test/resources/database/esper-cfg.xml 2008-07-23 12:54:57 UTC (rev 196)
@@ -1,108 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- Sample configuration file.
--->
-<esper-configuration xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xmlns="http://www.espertech.com/schema/esper"
- xsi:noNamespaceSchemaLocation="esper-configuration-2-0.xsd">
-
- <!--
- Adds a Java package name of a package that Java event classes reside in.
- This setting allows an application to place all it's events into one or more Java packages
- and then declare these packages.
- The engine attempts to resolve an event type alias to a Java class residing in each declared package.
- -->
- <event-type-auto-alias package-name="org.jboss.test.sam.database"/>
-
- <!--
- Sample configuration for database access using DriverManager;
- retains connections associated with a statement, closing the connection when a statement is stopped
- -->
-
- <!--database-reference name="MySQLDB">
- <drivermanager-connection class-name="com.mysql.jdbc.Driver"
- url="jdbc:mysql://localhost/mysql1?user=root&password="
- user="jbossfx" password="">
- <connection-arg name="user" value ="root"/>
- <connection-arg name="password" value =""/>
- </drivermanager-connection>
- <connection-lifecycle value="retain"/>
- <expiry-time-cache max-age-seconds="60" purge-interval-seconds="120" ref-type="weak"/>
- </database-reference-->
-
- <database-reference name="SamTestDB">
- <drivermanager-connection class-name="org.hsqldb.jdbcDriver"
- url="jdbc:hsqldb:mem:SamTestSetup;get_column_name=true"
- user="jbossfx" password="">
- <connection-arg name="user" value ="sa"/>
- <connection-arg name="password" value =""/>
- </drivermanager-connection>
-
- <connection-lifecycle value="retain"/>
- <expiry-time-cache max-age-seconds="60" purge-interval-seconds="120" ref-type="weak"/>
- <column-change-case value="lowercase"/> <!-- important -->
- </database-reference>
-
- <!--
- Sample engine settings
- -->
- <engine-settings>
- <defaults>
- <threading>
- <!--
- In multithreaded environments, this setting controls whether dispatches to listeners
- preserve the ordering in which the statement processes events
- -->
- <listener-dispatch preserve-order="true" timeout-msec="1000" locking="spin"/>
- <!--
- In multithreaded environments, this setting controls whether insert-into streams
- preserve the order of events inserted into them by one or more statements,
- allowing statements that consume other statement's events to behave deterministic.
- -->
- <insert-into-dispatch preserve-order="true" timeout-msec="100" locking="spin"/>
- <!-- These settings define the resolution of the internal timer thread,
- and can disable the timer to indicate that the application supplies the timer events
- -->
- <internal-timer enabled="true" msec-resolution="100"/>
- </threading>
- <event-meta>
- <!--
- Lets configure the engine to use case-insensitive resolution for event properties
- -->
- <class-property-resolution style="distinct_case_insensitive"/>
- </event-meta>
- <view-resources>
- <!--
- Lets configure the engine to reuse views, which is the default but can introduce additional locking
- -->
- <share-views enabled="true"/>
- </view-resources>
- <logging>
- <!--
- By default the engine does not generate logging through Log4j of the event processing execution path.
- To get debug output, set this flag to true. This setting translates into a static boolean flag
- and thus may apply to multiple engine instances within a given VM.
- -->
- <execution-path enabled="false" />
- </logging>
- <stream-selection>
- <!--
- By default the engine generates output for the insert stream only, and not for the remove stream.
- To obtain output for remove stream only, or for insert stream and remove stream,
- there are keywords "rstream" and "irstream" for use in the select clause.
- This setting controls the default behavior, if no keyword is specified in the select-clause by statements.
- -->
- <stream-selector value="irstream" />
- </stream-selection>
- <time-source>
- <!--
- By default the time source is System.currentTimeMillis.
- This sample configures the nano-second time call System.nanoTime() as the time source,
- which Esper adjusts for wall clock time.
- -->
- <time-source-type value="nano" />
- </time-source>
- </defaults>
- </engine-settings>
-
-</esper-configuration>
Added: sam/trunk/modules/core/src/test/resources/drools/aggregate.drl
===================================================================
--- sam/trunk/modules/core/src/test/resources/drools/aggregate.drl (rev 0)
+++ sam/trunk/modules/core/src/test/resources/drools/aggregate.drl 2008-07-23 12:54:57 UTC (rev 196)
@@ -0,0 +1,12 @@
+package org.jboss.sam.drools;
+
+import org.jboss.test.sam.drools.StockTick;
+
+global org.jboss.sam.internal.drools.DroolsAdapter Drools;
+
+rule "Aggregate any stock tick into AllTicks"
+ when
+ $event: StockTick();
+ then
+ Drools.getStream("AllTicks").insert($event);
+end
Added: sam/trunk/modules/core/src/test/resources/drools/forward.drl
===================================================================
--- sam/trunk/modules/core/src/test/resources/drools/forward.drl (rev 0)
+++ sam/trunk/modules/core/src/test/resources/drools/forward.drl 2008-07-23 12:54:57 UTC (rev 196)
@@ -0,0 +1,12 @@
+package org.jboss.test.sam.drools;
+
+import org.jboss.test.sam.drools.StockTick;
+
+global org.jboss.sam.internal.drools.DroolsAdapter Drools;
+
+rule "Forward all stock ticks to listener"
+ when
+ $event: StockTick() from entry-point "AllTicks";
+ then
+ Drools.getListener("InVM").update($event);
+end
Property changes on: sam/trunk/modules/core/src/test/resources/drools/forward.drl
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Added: sam/trunk/modules/core/src/test/resources/drools/simple.drl
===================================================================
--- sam/trunk/modules/core/src/test/resources/drools/simple.drl (rev 0)
+++ sam/trunk/modules/core/src/test/resources/drools/simple.drl 2008-07-23 12:54:57 UTC (rev 196)
@@ -0,0 +1,11 @@
+package org.jboss.test.sam.drools;
+
+import org.jboss.test.sam.drools.StockTick;
+global org.jboss.sam.internal.drools.DroolsAdapter Drools;
+
+rule "Check event"
+when
+ $st: StockTick(symbol == "ACME")
+then
+ Drools.getListener("InVM").update($st);
+end
Modified: sam/trunk/modules/sim/src/test/resources/adapter/invm/esper-cfg.xml
===================================================================
--- sam/trunk/modules/sim/src/test/resources/adapter/invm/esper-cfg.xml 2008-07-22 18:06:55 UTC (rev 195)
+++ sam/trunk/modules/sim/src/test/resources/adapter/invm/esper-cfg.xml 2008-07-23 12:54:57 UTC (rev 196)
@@ -12,7 +12,7 @@
and then declare these packages.
The engine attempts to resolve an event type alias to a Java class residing in each declared package.
-->
- <event-type-auto-alias package-name="org.jboss.test.sam.stream.invm"/>
+ <event-type-auto-alias package-name="org.jboss.test.sam.adapter.invm"/>
<!--
Sample configuration for database access using DriverManager;
Modified: sam/trunk/pom.xml
===================================================================
--- sam/trunk/pom.xml 2008-07-22 18:06:55 UTC (rev 195)
+++ sam/trunk/pom.xml 2008-07-23 12:54:57 UTC (rev 196)
@@ -12,35 +12,43 @@
<modules>
<module>modules/core</module>
<module>modules/fx</module>
- <module>modules/sim</module>
+ <!--module>modules/sim</module-->
</modules>
-
+
<!-- Properties -->
<properties>
<surefire.security.args>-Djava.security.manager -Djava.security.policy=src/test/etc/tst.policy</surefire.security.args>
<surefire.jdwp.args>-Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=5005</surefire.jdwp.args>
- <drools.version>5.0.0-SNAPSHOT</drools.version>
+ <drools.version>5.0.0.SNAPSHOT</drools.version>
<junit.version>3.8.2</junit.version>
<commons-logging.version>1.1</commons-logging.version>
<antlr.version>3.0.1</antlr.version>
<jfree.version>1.0.0</jfree.version>
<hsqldb.version>1.8.0.7</hsqldb.version>
<javasim.version>2.0-hbraun</javasim.version>
+ <janino.version>2.5.10</janino.version>
+ <mvel.version>2.0-dp4</mvel.version>
</properties>
-
+
<!-- Dependencies -->
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.drools</groupId>
- <artifactId>drools</artifactId>
+ <artifactId>drools-core</artifactId>
<version>${drools.version}</version>
</dependency>
<dependency>
+ <groupId>org.drools</groupId>
+ <artifactId>drools-compiler</artifactId>
+ <version>${drools.version}</version>
+ </dependency>
+
+ <dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>${junit.version}</version>
@@ -76,11 +84,23 @@
<version>${javasim.version}</version>
</dependency>
+ <dependency>
+ <groupId>janino</groupId>
+ <artifactId>janino</artifactId>
+ <version>${janino.version}</version>
+ </dependency>
+
+ <dependency><!-- TODO deploy mvel to the jboss repo or snapshot repo, instead of the dir m2_repo hack -->
+ <groupId>org.mvel</groupId>
+ <artifactId>mvel</artifactId>
+ <version>${mvel.version}</version>
+ </dependency>
+
</dependencies>
</dependencyManagement>
<!-- Plugins -->
- <build>
+ <build>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
@@ -119,9 +139,20 @@
<!--forkMode>never</forkMode-->
<!--argLine>${surefire.jvm.args} -Dcom.sun.management.jmxremote</argLine-->
<argLine>${surefire.jvm.args}</argLine>
+ <excludes>
+ <exclude>org/jboss/test/sam/database/DatabaseTestCase.java</exclude>
+ </excludes>
</configuration>
</plugin>
-
+ <plugin>
+ <groupId>com.dzone.jdocs</groupId>
+ <artifactId>javadoc</artifactId>
+ <version>1.0</version>
+ <configuration>
+ <aggregate>true</aggregate>
+ <source>1.5</source>
+ </configuration>
+ </plugin>
</plugins>
<!-- PluginManagement -->
@@ -213,6 +244,11 @@
<enabled>true</enabled>
</snapshots>
</pluginRepository>
+ <pluginRepository>
+ <id>www.jdocs.com</id>
+ <url>http://www.jdocs.com/maven-repo/</url>
+ </pluginRepository>
+
</pluginRepositories>
<!-- DistributionManagement -->
Modified: sam/trunk/sam-trunk.iml
===================================================================
--- sam/trunk/sam-trunk.iml 2008-07-22 18:06:55 UTC (rev 195)
+++ sam/trunk/sam-trunk.iml 2008-07-23 12:54:57 UTC (rev 196)
@@ -17,6 +17,7 @@
</content>
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
+ <orderEntry type="module" module-name="drools-trunk" />
<orderEntry type="module-library">
<library name="M2 Dep: jfree:jfreechart:jar:1.0.0:compile">
<CLASSES>
@@ -27,119 +28,119 @@
</library>
</orderEntry>
<orderEntry type="module-library">
- <library name="M2 Dep: esper:esper:jar:2.2.0-JBoss-Nightly:compile">
+ <library name="M2 Dep: javasim:javasim:jar:2.0-hbraun:compile">
<CLASSES>
- <root url="jar://$MODULE_DIR$/../../../../.m2/repository/esper/esper/2.2.0-JBoss-Nightly/esper-2.2.0-JBoss-Nightly.jar!/" />
+ <root url="jar://$MODULE_DIR$/../../../../.m2/repository/javasim/javasim/2.0-hbraun/javasim-2.0-hbraun.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES />
</library>
</orderEntry>
<orderEntry type="module-library">
- <library name="M2 Dep: hsqldb:hsqldb:jar:1.8.0.7:compile">
+ <library name="M2 Dep: junit:junit:jar:3.8.2:compile">
<CLASSES>
- <root url="jar://$MODULE_DIR$/../../../../.m2/repository/hsqldb/hsqldb/1.8.0.7/hsqldb-1.8.0.7.jar!/" />
+ <root url="jar://$MODULE_DIR$/../../../../.m2/repository/junit/junit/3.8.2/junit-3.8.2.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES />
</library>
</orderEntry>
<orderEntry type="module-library">
- <library name="M2 Dep: cglib:cglib-nodep:jar:2.1_3:compile">
+ <library name="M2 Dep: org.jboss.sam:core:jar:1.0.0.SNAPSHOT:compile">
<CLASSES>
- <root url="jar://$MODULE_DIR$/../../../../.m2/repository/cglib/cglib-nodep/2.1_3/cglib-nodep-2.1_3.jar!/" />
+ <root url="jar://$MODULE_DIR$/../../../../.m2/repository/org/jboss/sam/core/1.0.0.SNAPSHOT/core-1.0.0.SNAPSHOT.jar!/" />
</CLASSES>
<JAVADOC />
- <SOURCES />
+ <SOURCES>
+ <root url="jar://$MODULE_DIR$/../../../../.m2/repository/org/jboss/sam/core/1.0.0.SNAPSHOT/core-1.0.0.SNAPSHOT-sources.jar!/" />
+ </SOURCES>
</library>
</orderEntry>
<orderEntry type="module-library">
- <library name="M2 Dep: log4j:log4j:jar:1.2.14:compile">
+ <library name="M2 Dep: jfree:jcommon:jar:1.0.0:compile">
<CLASSES>
- <root url="jar://$MODULE_DIR$/../../../../.m2/repository/log4j/log4j/1.2.14/log4j-1.2.14.jar!/" />
+ <root url="jar://$MODULE_DIR$/../../../../.m2/repository/jfree/jcommon/1.0.0/jcommon-1.0.0.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES />
</library>
</orderEntry>
<orderEntry type="module-library">
- <library name="M2 Dep: org.antlr:stringtemplate:jar:3.1-b1:compile">
+ <library name="M2 Dep: hsqldb:hsqldb:jar:1.8.0.7:compile">
<CLASSES>
- <root url="jar://$MODULE_DIR$/../../../../.m2/repository/org/antlr/stringtemplate/3.1-b1/stringtemplate-3.1-b1.jar!/" />
+ <root url="jar://$MODULE_DIR$/../../../../.m2/repository/hsqldb/hsqldb/1.8.0.7/hsqldb-1.8.0.7.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES />
</library>
</orderEntry>
<orderEntry type="module-library">
- <library name="M2 Dep: javasim:javasim:jar:2.0-hbraun:compile">
+ <library name="M2 Dep: org.antlr:stringtemplate:jar:3.1-b1:compile">
<CLASSES>
- <root url="jar://$MODULE_DIR$/../../../../.m2/repository/javasim/javasim/2.0-hbraun/javasim-2.0-hbraun.jar!/" />
+ <root url="jar://$MODULE_DIR$/../../../../.m2/repository/org/antlr/stringtemplate/3.1-b1/stringtemplate-3.1-b1.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES />
</library>
</orderEntry>
<orderEntry type="module-library">
- <library name="M2 Dep: commons-logging:commons-logging:jar:1.1.1:compile">
+ <library name="M2 Dep: org.drools:drools-core:jar:5.0.0.20080716.092257-204:compile">
<CLASSES>
- <root url="jar://$MODULE_DIR$/../../../../.m2/repository/commons-logging/commons-logging/1.1.1/commons-logging-1.1.1.jar!/" />
+ <root url="jar://$MODULE_DIR$/../../../../.m2/repository/org/drools/drools-core/5.0.0.SNAPSHOT/drools-core-5.0.0.SNAPSHOT.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES />
</library>
</orderEntry>
<orderEntry type="module-library">
- <library name="M2 Dep: mysql:mysql-connector-java:jar:3.1.14:compile">
+ <library name="M2 Dep: org.antlr:antlr-runtime:jar:3.0.1:compile">
<CLASSES>
- <root url="jar://$MODULE_DIR$/../../../../.m2/repository/mysql/mysql-connector-java/3.1.14/mysql-connector-java-3.1.14.jar!/" />
+ <root url="jar://$MODULE_DIR$/../../../../.m2/repository/org/antlr/antlr-runtime/3.0.1/antlr-runtime-3.0.1.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES />
</library>
</orderEntry>
<orderEntry type="module-library">
- <library name="M2 Dep: junit:junit:jar:3.8.2:compile">
+ <library name="M2 Dep: commons-logging:commons-logging-api:jar:1.1:compile">
<CLASSES>
- <root url="jar://$MODULE_DIR$/../../../../.m2/repository/junit/junit/3.8.2/junit-3.8.2.jar!/" />
+ <root url="jar://$MODULE_DIR$/../../../../.m2/repository/commons-logging/commons-logging-api/1.1/commons-logging-api-1.1.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES />
</library>
</orderEntry>
<orderEntry type="module-library">
- <library name="M2 Dep: org.antlr:antlr-runtime:jar:3.0.1:compile">
+ <library name="M2 Dep: org.drools:drools-compiler:jar:5.0.0.20080716.092257-204:compile">
<CLASSES>
- <root url="jar://$MODULE_DIR$/../../../../.m2/repository/org/antlr/antlr-runtime/3.0.1/antlr-runtime-3.0.1.jar!/" />
+ <root url="jar://$MODULE_DIR$/../../../../.m2/repository/org/drools/drools-compiler/5.0.0.SNAPSHOT/drools-compiler-5.0.0.SNAPSHOT.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES />
</library>
</orderEntry>
<orderEntry type="module-library">
- <library name="M2 Dep: commons-logging:commons-logging-api:jar:1.1:compile">
+ <library name="M2 Dep: janino:janino:jar:2.3.2:compile">
<CLASSES>
- <root url="jar://$MODULE_DIR$/../../../../.m2/repository/commons-logging/commons-logging-api/1.1/commons-logging-api-1.1.jar!/" />
+ <root url="jar://$MODULE_DIR$/../../../../.m2/repository/janino/janino/2.3.2/janino-2.3.2.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES />
</library>
</orderEntry>
<orderEntry type="module-library">
- <library name="M2 Dep: org.jboss.sam:core:jar:1.0.0.SNAPSHOT:compile">
+ <library name="M2 Dep: org.eclipse.jdt:core:jar:3.2.3.v_686_R32x:compile">
<CLASSES>
- <root url="jar://$MODULE_DIR$/../../../../.m2/repository/org/jboss/sam/core/1.0.0.SNAPSHOT/core-1.0.0.SNAPSHOT.jar!/" />
+ <root url="jar://$MODULE_DIR$/../../../../.m2/repository/org/eclipse/jdt/core/3.2.3.v_686_R32x/core-3.2.3.v_686_R32x.jar!/" />
</CLASSES>
<JAVADOC />
- <SOURCES>
- <root url="jar://$MODULE_DIR$/../../../../.m2/repository/org/jboss/sam/core/1.0.0.SNAPSHOT/core-1.0.0.SNAPSHOT-sources.jar!/" />
- </SOURCES>
+ <SOURCES />
</library>
</orderEntry>
<orderEntry type="module-library">
- <library name="M2 Dep: jfree:jcommon:jar:1.0.0:compile">
+ <library name="M2 Dep: org.mvel:mvel:jar:2.0-dp4:compile">
<CLASSES>
- <root url="jar://$MODULE_DIR$/../../../../.m2/repository/jfree/jcommon/1.0.0/jcommon-1.0.0.jar!/" />
+ <root url="jar://$MODULE_DIR$/../../../../.m2/repository/org/mvel/mvel/2.0-dp4/mvel-2.0-dp4.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES />
15 years, 9 months
Overlord SVN: r195 - in cdl/trunk/samples: jbossesb and 5 other directories.
by overlord-commits@lists.jboss.org
Author: jeff.yuchang
Date: 2008-07-22 14:06:55 -0400 (Tue, 22 Jul 2008)
New Revision: 195
Modified:
cdl/trunk/samples/jbossesb/README.txt
cdl/trunk/samples/jbossesb/broker/models/ESBBroker.cdm
cdl/trunk/samples/jbossesb/broker/src/main/java/org/jboss/soa/overlord/samples/jbossesb/loan/broker/SetCreditCheckRequestMessageAction.java
cdl/trunk/samples/jbossesb/broker/src/main/java/org/jboss/soa/overlord/samples/jbossesb/loan/broker/SetOrderConfirmRequestAction.java
cdl/trunk/samples/jbossesb/broker/src/main/java/org/jboss/soa/overlord/samples/jbossesb/loan/creditAgency/SetCreditCheckResponseMessageAction.java
cdl/trunk/samples/jbossesb/broker/src/main/java/org/jboss/soa/overlord/samples/jbossesb/loan/supplier/SetOrderConfirmResponseAction.java
cdl/trunk/samples/jbossesb/broker/src/main/resources/META-INF/jboss-esb.xml
cdl/trunk/samples/pom.xml
Log:
* Update the cdm model file, use 'buy' instead of 'purchaseDetail'.
* Update the actions to use correct message type as defined in the cdl model file.
Modified: cdl/trunk/samples/jbossesb/README.txt
===================================================================
--- cdl/trunk/samples/jbossesb/README.txt 2008-07-22 06:43:40 UTC (rev 194)
+++ cdl/trunk/samples/jbossesb/README.txt 2008-07-22 18:06:55 UTC (rev 195)
@@ -76,8 +76,9 @@
[java] Reply: <quoteList id="20"><quote supplierDesc="{http://www.jboss.org/overlord/loanBroker}Supplier1">10</quote></quoteList>
[java] Sending Buy request to Broker...
[java] Request: <buy id="20" supplierDesc="{http://www.jboss.org/overlord/loanBroker}Supplier1" quoteValue="10"></buy>
- [java] Reply: <orderConfirmResponse id="20" supplierDesc = "{http://www.jboss.org/overlord/loanBroker}Supplier1">The quote of 10 has been confirmed.</orderConfirmResponse>
+ [java] Reply: <bookingReference id="20" supplierDesc = "{http://www.jboss.org/overlord/loanBroker}Supplier1">The quote of 10 has been confirmed.</bookingReference>
[java] =========================================
+
6 - you can be from the $broker to run "ant dbmanager" to open up the database browser to check the data.
Modified: cdl/trunk/samples/jbossesb/broker/models/ESBBroker.cdm
===================================================================
--- cdl/trunk/samples/jbossesb/broker/models/ESBBroker.cdm 2008-07-22 06:43:40 UTC (rev 194)
+++ cdl/trunk/samples/jbossesb/broker/models/ESBBroker.cdm 2008-07-22 18:06:55 UTC (rev 195)
@@ -1,112 +1,112 @@
-<?xml version="1.0" encoding="Cp1252"?>
-<org.pi4soa.cdl:Package xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:org.pi4soa.cdl="http:///org/pi4soa/cdl.ecore" description="The choreography description for ESBBroker" name="ESBBroker" author="gary" version="0.2" targetNamespace="http://www.pi4soa.org/ESBBroker">
- <typeDefinitions>
- <nameSpaces description="Target Namespace for ESBBroker" prefix="tns" uRI="http://www.pi4soa.org/ESBBroker"/>
- <nameSpaces description="XML Schema Namespace" prefix="xsd" uRI="http://www.w3.org/2001/XMLSchema"/>
- <informationTypes description="This is the information type BookingReference" name="BookingReference" elementName="bookingReference"/>
- <informationTypes description="This is the information type Cancel" name="Cancel" elementName="cancel"/>
- <informationTypes description="This is the information type CreditInformation" name="CreditInformation" elementName="creditInformation"/>
- <informationTypes description="This is the information type CreditInvalid" name="CreditInvalid" elementName="creditInvalid"/>
- <informationTypes description="This is the information type CreditValid" name="CreditValid" elementName="creditValid"/>
- <informationTypes description="This is the information type Enquiry" name="Enquiry" typeName="" elementName="enquiry"/>
- <informationTypes description="This is the information type OrderConfirmed" name="OrderConfirmed" elementName="orderConfirmed"/>
- <informationTypes description="This is the information type OrderRejected" name="OrderRejected" elementName="orderRejected"/>
- <informationTypes description="This is the information type PurchaseDetails" name="PurchaseDetails" elementName="purchaseDetails"/>
- <informationTypes description="This is the information type Quote" name="Quote" elementName="quote"/>
- <informationTypes description="This is the information type QuoteList" name="QuoteList" elementName="quoteList"/>
- <informationTypes description="This is the information type RequestForQuote" name="RequestForQuote" elementName="requestForQuote"/>
- <informationTypes description="This is the information type URIType" name="URIType"/>
- <tokens description="This is the token URI" name="URI" informationType="//@typeDefinitions/(a)informationTypes.12"/>
- <roleTypes description="This is the role type Broker" name="Broker">
- <behaviors description="This is the behavior BrokerBehavior" name="BrokerBehavior"/>
- </roleTypes>
- <roleTypes description="This is the role type Buyer" name="Buyer">
- <behaviors description="This is the behavior BuyerBehavior" name="BuyerBehavior"/>
- </roleTypes>
- <roleTypes description="This is the role type CreditAgency" name="CreditAgency">
- <behaviors description="This is the behavior CreditAgencyBehavior" name="CreditAgencyBehavior"/>
- </roleTypes>
- <roleTypes description="This is the role type Supplier" name="Supplier">
- <behaviors description="This is the behavior SupplierBehavior" name="SupplierBehavior"/>
- </roleTypes>
- <relationshipTypes description="Relationship between Broker and CreditAgency" name="BrokerToCreditAgencyRel" firstRoleType="//@typeDefinitions/(a)roleTypes.0" secondRoleType="//@typeDefinitions/(a)roleTypes.2"/>
- <relationshipTypes description="Relationship between Broker and Supplier" name="BrokerToSupplierRel" firstRoleType="//@typeDefinitions/(a)roleTypes.0" secondRoleType="//@typeDefinitions/(a)roleTypes.3"/>
- <relationshipTypes description="Relationship between Buyer and Broker" name="BuyerToBrokerRel" firstRoleType="//@typeDefinitions/(a)roleTypes.1" secondRoleType="//@typeDefinitions/(a)roleTypes.0"/>
- <participantTypes description="This is the participant type Broker" name="Broker" roleTypes="//@typeDefinitions/(a)roleTypes.0">
- <semanticAnnotations annotation="jboss.overlord.samples.LoanBroker@Broker" name="conversationType"/>
- </participantTypes>
- <participantTypes description="This is the participant type Buyer" name="Buyer" roleTypes="//@typeDefinitions/(a)roleTypes.1"/>
- <participantTypes description="This is the participant type CreditAgency" name="CreditAgency" roleTypes="//@typeDefinitions/(a)roleTypes.2"/>
- <participantTypes description="This is the participant type Supplier" name="Supplier" roleTypes="//@typeDefinitions/(a)roleTypes.3"/>
- <channelTypes description="This is the channel type BrokerChannelType" name="BrokerChannelType" referenceToken="//@typeDefinitions/(a)tokens.0" roleType="//@typeDefinitions/(a)roleTypes.0"/>
- <channelTypes description="This is the channel type CreditAgencyChannelType" name="CreditAgencyChannelType" referenceToken="//@typeDefinitions/(a)tokens.0" roleType="//@typeDefinitions/(a)roleTypes.2"/>
- <channelTypes description="This is the channel type SupplierChannelType" name="SupplierChannelType" referenceToken="//@typeDefinitions/(a)tokens.0" roleType="//@typeDefinitions/(a)roleTypes.3"/>
- </typeDefinitions>
- <choreographies description="Choreography flow for the ESBBroker process" name="ESBBrokerProcess" root="true">
- <enclosedChoreographies name="CompleteTransaction">
- <variableDefinitions description="Channel to facilitate interaction to Broker" name="BrokerChannel" type="//@typeDefinitions/(a)channelTypes.0" free="true" roleTypes="//@typeDefinitions/(a)roleTypes.0 //@typeDefinitions/(a)roleTypes.1"/>
- <variableDefinitions description="Channel to facilitate interaction to CreditAgency" name="CreditAgencyChannel" type="//@typeDefinitions/(a)channelTypes.1"/>
- <variableDefinitions description="Channel to facilitate interaction to Supplier" name="SupplierChannel" type="//@typeDefinitions/(a)channelTypes.2"/>
- <activities xsi:type="org.pi4soa.cdl:Interaction" name="Buy" operation="buy" channelVariable="//@choreographies.0/@enclosedChoreographies.0/(a)variableDefinitions.0" relationship="//@typeDefinitions/(a)relationshipTypes.2">
- <exchangeDetails description="This is the exchange details for the request exchange associated with interaction Buy" name="BuyRequestExchange" type="//@typeDefinitions/(a)informationTypes.8"/>
- </activities>
- <activities xsi:type="org.pi4soa.cdl:Interaction" name="CheckCredit" operation="checkCredit" channelVariable="//@choreographies.0/@enclosedChoreographies.0/(a)variableDefinitions.1" relationship="//@typeDefinitions/(a)relationshipTypes.0">
- <exchangeDetails description="This is the exchange details for the request exchange associated with interaction CheckCredit" name="CheckCreditRequestExchange" type="//@typeDefinitions/(a)informationTypes.2"/>
- </activities>
- <activities xsi:type="org.pi4soa.cdl:Choice" description="Evaluate Credit Check Result">
- <activities xsi:type="org.pi4soa.cdl:Sequence" description="Sufficient Credit">
- <activities xsi:type="org.pi4soa.cdl:Interaction" name="CheckCreditResponse" operation="checkCredit" channelVariable="//@choreographies.0/@enclosedChoreographies.0/(a)variableDefinitions.1" relationship="//@typeDefinitions/(a)relationshipTypes.0">
- <exchangeDetails description="This is the exchange details for the respond exchange associated with interaction CheckCreditResponse" name="CheckCreditResponseRespondExchange" type="//@typeDefinitions/(a)informationTypes.4" action="Respond"/>
- </activities>
- <activities xsi:type="org.pi4soa.cdl:Interaction" name="ConfirmBooking" operation="confirm" channelVariable="//@choreographies.0/@enclosedChoreographies.0/(a)variableDefinitions.2" relationship="//@typeDefinitions/(a)relationshipTypes.1">
- <exchangeDetails description="This is the exchange details for the request exchange associated with interaction ConfirmBooking" name="ConfirmBookingRequestExchange" type="//@typeDefinitions/(a)informationTypes.6"/>
- <exchangeDetails description="This is the exchange details for the request exchange associated with interaction ConfirmBooking" name="ConfirmBookingRequestExchange" type="//@typeDefinitions/(a)informationTypes.0" action="Respond"/>
- </activities>
- <activities xsi:type="org.pi4soa.cdl:Interaction" name="Buy" operation="buy" channelVariable="//@choreographies.0/@enclosedChoreographies.0/(a)variableDefinitions.0" relationship="//@typeDefinitions/(a)relationshipTypes.2">
- <exchangeDetails description="This is the exchange details for the respond exchange associated with interaction Buy" name="BuyRespondExchange" type="//@typeDefinitions/(a)informationTypes.6" action="Respond" faultName=""/>
- </activities>
- </activities>
- <activities xsi:type="org.pi4soa.cdl:Sequence" description="Insufficient Credit">
- <activities xsi:type="org.pi4soa.cdl:Interaction" name="CheckCreditFailed" operation="checkCredit" channelVariable="//@choreographies.0/@enclosedChoreographies.0/(a)variableDefinitions.1" relationship="//@typeDefinitions/(a)relationshipTypes.0">
- <exchangeDetails description="This is the exchange details for the respond exchange associated with interaction CheckCreditFailed" name="CheckCreditFailedRespondExchange" type="//@typeDefinitions/(a)informationTypes.3" action="Respond" faultName="invalidCredit"/>
- </activities>
- <activities xsi:type="org.pi4soa.cdl:Interaction" name="Buy" operation="buy" channelVariable="//@choreographies.0/@enclosedChoreographies.0/(a)variableDefinitions.0" relationship="//@typeDefinitions/(a)relationshipTypes.2">
- <exchangeDetails description="This is the exchange details for the respond exchange associated with interaction Buy" name="BuyRespondExchange" type="//@typeDefinitions/(a)informationTypes.7" action="Respond" faultName="rejected"/>
- </activities>
- </activities>
- </activities>
- </enclosedChoreographies>
- <enclosedChoreographies name="RequestForQuote">
- <variableDefinitions description="Channel to facilitate interaction to Supplier" name="SupplierChannel" type="//@typeDefinitions/(a)channelTypes.2"/>
- <activities xsi:type="org.pi4soa.cdl:Interaction" name="RFQ" operation="getQuote" channelVariable="//@choreographies.0/@enclosedChoreographies.1/(a)variableDefinitions.0" relationship="//@typeDefinitions/(a)relationshipTypes.1">
- <exchangeDetails description="This is the exchange details for the request exchange associated with interaction RFQ" name="RFQRequestExchange" type="//@typeDefinitions/(a)informationTypes.11"/>
- <exchangeDetails description="This is the exchange details for the respond exchange associated with interaction RFQ" name="RFQRespondExchange" type="//@typeDefinitions/(a)informationTypes.9" action="Respond"/>
- </activities>
- </enclosedChoreographies>
- <variableDefinitions description="Channel to facilitate interaction to Broker" name="BrokerChannel" type="//@typeDefinitions/(a)channelTypes.0" roleTypes="//@typeDefinitions/(a)roleTypes.0 //@typeDefinitions/(a)roleTypes.1"/>
- <activities xsi:type="org.pi4soa.cdl:Interaction" name="Enquiry" operation="makeEnquiry" channelVariable="//@choreographies.0/(a)variableDefinitions.0" relationship="//@typeDefinitions/(a)relationshipTypes.2">
- <exchangeDetails description="This is the exchange details for the request exchange associated with interaction Enquiry" name="EnquiryRequestExchange" type="//@typeDefinitions/(a)informationTypes.5"/>
- </activities>
- <activities xsi:type="org.pi4soa.cdl:While" name="SendRFQToSuppliers">
- <activities xsi:type="org.pi4soa.cdl:Perform" choreography="//@choreographies.0/(a)enclosedChoreographies.1" waitForCompletion="false"/>
- </activities>
- <activities xsi:type="org.pi4soa.cdl:When" name="WhenQuotesReceivedOrTimeout">
- <activities xsi:type="org.pi4soa.cdl:Interaction" name="Enquiry" operation="makeEnquiry" channelVariable="//@choreographies.0/(a)variableDefinitions.0" relationship="//@typeDefinitions/(a)relationshipTypes.2">
- <exchangeDetails description="This is the exchange details for the respond exchange associated with interaction Enquiry" name="EnquiryRespondExchange" type="//@typeDefinitions/(a)informationTypes.10" action="Respond"/>
- </activities>
- </activities>
- <activities xsi:type="org.pi4soa.cdl:Choice">
- <activities xsi:type="org.pi4soa.cdl:Sequence">
- <activities xsi:type="org.pi4soa.cdl:Perform" choreography="//@choreographies.0/(a)enclosedChoreographies.0">
- <bindDetails name="BindBrokerChannel" thisVariable="//@choreographies.0/(a)variableDefinitions.0" thisRole="//@typeDefinitions/(a)roleTypes.1" freeVariable="//@choreographies.0/@enclosedChoreographies.0/(a)variableDefinitions.0" freeRole="//@typeDefinitions/(a)roleTypes.1"/>
- <bindDetails name="BindBrokerChannel" thisVariable="//@choreographies.0/(a)variableDefinitions.0" thisRole="//@typeDefinitions/(a)roleTypes.0" freeVariable="//@choreographies.0/@enclosedChoreographies.0/(a)variableDefinitions.0" freeRole="//@typeDefinitions/(a)roleTypes.0"/>
- </activities>
- </activities>
- <activities xsi:type="org.pi4soa.cdl:Sequence">
- <activities xsi:type="org.pi4soa.cdl:Interaction" name="Cancel" operation="cancel" channelVariable="//@choreographies.0/(a)variableDefinitions.0" relationship="//@typeDefinitions/(a)relationshipTypes.2">
- <exchangeDetails description="This is the exchange details for the request exchange associated with interaction Cancel" name="CancelRequestExchange" type="//@typeDefinitions/(a)informationTypes.1"/>
- </activities>
- </activities>
- </activities>
- </choreographies>
-</org.pi4soa.cdl:Package>
+<?xml version="1.0" encoding="UTF-8"?>
+<org.pi4soa.cdl:Package xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:org.pi4soa.cdl="http:///org/pi4soa/cdl.ecore" description="The choreography description for ESBBroker" name="ESBBroker" author="gary" version="0.2" targetNamespace="http://www.pi4soa.org/ESBBroker">
+ <typeDefinitions>
+ <nameSpaces description="Target Namespace for ESBBroker" prefix="tns" uRI="http://www.pi4soa.org/ESBBroker"/>
+ <nameSpaces description="XML Schema Namespace" prefix="xsd" uRI="http://www.w3.org/2001/XMLSchema"/>
+ <informationTypes description="This is the information type BookingReference" name="BookingReference" elementName="bookingReference"/>
+ <informationTypes description="This is the information type Buy" name="Buy" elementName="buy"/>
+ <informationTypes description="This is the information type Cancel" name="Cancel" elementName="cancel"/>
+ <informationTypes description="This is the information type CreditInformation" name="CreditInformation" elementName="creditInformation"/>
+ <informationTypes description="This is the information type CreditInvalid" name="CreditInvalid" elementName="creditInvalid"/>
+ <informationTypes description="This is the information type CreditValid" name="CreditValid" elementName="creditValid"/>
+ <informationTypes description="This is the information type Enquiry" name="Enquiry" typeName="" elementName="enquiry"/>
+ <informationTypes description="This is the information type OrderConfirmed" name="OrderConfirmed" elementName="orderConfirmed"/>
+ <informationTypes description="This is the information type OrderRejected" name="OrderRejected" elementName="orderRejected"/>
+ <informationTypes description="This is the information type Quote" name="Quote" elementName="quote"/>
+ <informationTypes description="This is the information type QuoteList" name="QuoteList" elementName="quoteList"/>
+ <informationTypes description="This is the information type RequestForQuote" name="RequestForQuote" elementName="requestForQuote"/>
+ <informationTypes description="This is the information type URIType" name="URIType"/>
+ <tokens description="This is the token URI" name="URI" informationType="//@typeDefinitions/(a)informationTypes.12"/>
+ <roleTypes description="This is the role type Broker" name="Broker">
+ <behaviors description="This is the behavior BrokerBehavior" name="BrokerBehavior"/>
+ </roleTypes>
+ <roleTypes description="This is the role type Buyer" name="Buyer">
+ <behaviors description="This is the behavior BuyerBehavior" name="BuyerBehavior"/>
+ </roleTypes>
+ <roleTypes description="This is the role type CreditAgency" name="CreditAgency">
+ <behaviors description="This is the behavior CreditAgencyBehavior" name="CreditAgencyBehavior"/>
+ </roleTypes>
+ <roleTypes description="This is the role type Supplier" name="Supplier">
+ <behaviors description="This is the behavior SupplierBehavior" name="SupplierBehavior"/>
+ </roleTypes>
+ <relationshipTypes description="Relationship between Broker and CreditAgency" name="BrokerToCreditAgencyRel" firstRoleType="//@typeDefinitions/(a)roleTypes.0" secondRoleType="//@typeDefinitions/(a)roleTypes.2"/>
+ <relationshipTypes description="Relationship between Broker and Supplier" name="BrokerToSupplierRel" firstRoleType="//@typeDefinitions/(a)roleTypes.0" secondRoleType="//@typeDefinitions/(a)roleTypes.3"/>
+ <relationshipTypes description="Relationship between Buyer and Broker" name="BuyerToBrokerRel" firstRoleType="//@typeDefinitions/(a)roleTypes.1" secondRoleType="//@typeDefinitions/(a)roleTypes.0"/>
+ <participantTypes description="This is the participant type Broker" name="Broker" roleTypes="//@typeDefinitions/(a)roleTypes.0">
+ <semanticAnnotations annotation="jboss.overlord.samples.LoanBroker@Broker" name="conversationType"/>
+ </participantTypes>
+ <participantTypes description="This is the participant type Buyer" name="Buyer" roleTypes="//@typeDefinitions/(a)roleTypes.1"/>
+ <participantTypes description="This is the participant type CreditAgency" name="CreditAgency" roleTypes="//@typeDefinitions/(a)roleTypes.2"/>
+ <participantTypes description="This is the participant type Supplier" name="Supplier" roleTypes="//@typeDefinitions/(a)roleTypes.3"/>
+ <channelTypes description="This is the channel type BrokerChannelType" name="BrokerChannelType" referenceToken="//@typeDefinitions/(a)tokens.0" roleType="//@typeDefinitions/(a)roleTypes.0"/>
+ <channelTypes description="This is the channel type CreditAgencyChannelType" name="CreditAgencyChannelType" referenceToken="//@typeDefinitions/(a)tokens.0" roleType="//@typeDefinitions/(a)roleTypes.2"/>
+ <channelTypes description="This is the channel type SupplierChannelType" name="SupplierChannelType" referenceToken="//@typeDefinitions/(a)tokens.0" roleType="//@typeDefinitions/(a)roleTypes.3"/>
+ </typeDefinitions>
+ <choreographies description="Choreography flow for the ESBBroker process" name="ESBBrokerProcess" root="true">
+ <enclosedChoreographies name="CompleteTransaction">
+ <variableDefinitions description="Channel to facilitate interaction to Broker" name="BrokerChannel" type="//@typeDefinitions/(a)channelTypes.0" free="true" roleTypes="//@typeDefinitions/(a)roleTypes.0 //@typeDefinitions/(a)roleTypes.1"/>
+ <variableDefinitions description="Channel to facilitate interaction to CreditAgency" name="CreditAgencyChannel" type="//@typeDefinitions/(a)channelTypes.1"/>
+ <variableDefinitions description="Channel to facilitate interaction to Supplier" name="SupplierChannel" type="//@typeDefinitions/(a)channelTypes.2"/>
+ <activities xsi:type="org.pi4soa.cdl:Interaction" name="Buy" operation="buy" channelVariable="//@choreographies.0/@enclosedChoreographies.0/(a)variableDefinitions.0" relationship="//@typeDefinitions/(a)relationshipTypes.2">
+ <exchangeDetails description="This is the exchange details for the request exchange associated with interaction Buy" name="BuyRequestExchange" type="//@typeDefinitions/(a)informationTypes.1"/>
+ </activities>
+ <activities xsi:type="org.pi4soa.cdl:Interaction" name="CheckCredit" operation="checkCredit" channelVariable="//@choreographies.0/@enclosedChoreographies.0/(a)variableDefinitions.1" relationship="//@typeDefinitions/(a)relationshipTypes.0">
+ <exchangeDetails description="This is the exchange details for the request exchange associated with interaction CheckCredit" name="CheckCreditRequestExchange" type="//@typeDefinitions/(a)informationTypes.3"/>
+ </activities>
+ <activities xsi:type="org.pi4soa.cdl:Choice" description="Evaluate Credit Check Result">
+ <activities xsi:type="org.pi4soa.cdl:Sequence" description="Sufficient Credit">
+ <activities xsi:type="org.pi4soa.cdl:Interaction" name="CheckCreditResponse" operation="checkCredit" channelVariable="//@choreographies.0/@enclosedChoreographies.0/(a)variableDefinitions.1" relationship="//@typeDefinitions/(a)relationshipTypes.0">
+ <exchangeDetails description="This is the exchange details for the respond exchange associated with interaction CheckCreditResponse" name="CheckCreditResponseRespondExchange" type="//@typeDefinitions/(a)informationTypes.5" action="Respond"/>
+ </activities>
+ <activities xsi:type="org.pi4soa.cdl:Interaction" name="ConfirmBooking" operation="confirm" channelVariable="//@choreographies.0/@enclosedChoreographies.0/(a)variableDefinitions.2" relationship="//@typeDefinitions/(a)relationshipTypes.1">
+ <exchangeDetails description="This is the exchange details for the request exchange associated with interaction ConfirmBooking" name="ConfirmBookingRequestExchange" type="//@typeDefinitions/(a)informationTypes.7"/>
+ <exchangeDetails description="This is the exchange details for the request exchange associated with interaction ConfirmBooking" name="ConfirmBookingRequestExchange" type="//@typeDefinitions/(a)informationTypes.0" action="Respond"/>
+ </activities>
+ <activities xsi:type="org.pi4soa.cdl:Interaction" name="Buy" operation="buy" channelVariable="//@choreographies.0/@enclosedChoreographies.0/(a)variableDefinitions.0" relationship="//@typeDefinitions/(a)relationshipTypes.2">
+ <exchangeDetails description="This is the exchange details for the respond exchange associated with interaction Buy" name="BuyRespondExchange" type="//@typeDefinitions/(a)informationTypes.0" action="Respond" faultName=""/>
+ </activities>
+ </activities>
+ <activities xsi:type="org.pi4soa.cdl:Sequence" description="Insufficient Credit">
+ <activities xsi:type="org.pi4soa.cdl:Interaction" name="CheckCreditFailed" operation="checkCredit" channelVariable="//@choreographies.0/@enclosedChoreographies.0/(a)variableDefinitions.1" relationship="//@typeDefinitions/(a)relationshipTypes.0">
+ <exchangeDetails description="This is the exchange details for the respond exchange associated with interaction CheckCreditFailed" name="CheckCreditFailedRespondExchange" type="//@typeDefinitions/(a)informationTypes.4" action="Respond" faultName="invalidCredit"/>
+ </activities>
+ <activities xsi:type="org.pi4soa.cdl:Interaction" name="Buy" operation="buy" channelVariable="//@choreographies.0/@enclosedChoreographies.0/(a)variableDefinitions.0" relationship="//@typeDefinitions/(a)relationshipTypes.2">
+ <exchangeDetails description="This is the exchange details for the respond exchange associated with interaction Buy" name="BuyRespondExchange" type="//@typeDefinitions/(a)informationTypes.8" action="Respond" faultName="rejected"/>
+ </activities>
+ </activities>
+ </activities>
+ </enclosedChoreographies>
+ <enclosedChoreographies name="RequestForQuote">
+ <variableDefinitions description="Channel to facilitate interaction to Supplier" name="SupplierChannel" type="//@typeDefinitions/(a)channelTypes.2"/>
+ <activities xsi:type="org.pi4soa.cdl:Interaction" name="RFQ" operation="getQuote" channelVariable="//@choreographies.0/@enclosedChoreographies.1/(a)variableDefinitions.0" relationship="//@typeDefinitions/(a)relationshipTypes.1">
+ <exchangeDetails description="This is the exchange details for the request exchange associated with interaction RFQ" name="RFQRequestExchange" type="//@typeDefinitions/(a)informationTypes.11"/>
+ <exchangeDetails description="This is the exchange details for the respond exchange associated with interaction RFQ" name="RFQRespondExchange" type="//@typeDefinitions/(a)informationTypes.9" action="Respond"/>
+ </activities>
+ </enclosedChoreographies>
+ <variableDefinitions description="Channel to facilitate interaction to Broker" name="BrokerChannel" type="//@typeDefinitions/(a)channelTypes.0" roleTypes="//@typeDefinitions/(a)roleTypes.0 //@typeDefinitions/(a)roleTypes.1"/>
+ <activities xsi:type="org.pi4soa.cdl:Interaction" name="Enquiry" operation="makeEnquiry" channelVariable="//@choreographies.0/(a)variableDefinitions.0" relationship="//@typeDefinitions/(a)relationshipTypes.2">
+ <exchangeDetails description="This is the exchange details for the request exchange associated with interaction Enquiry" name="EnquiryRequestExchange" type="//@typeDefinitions/(a)informationTypes.6"/>
+ </activities>
+ <activities xsi:type="org.pi4soa.cdl:While" name="SendRFQToSuppliers">
+ <activities xsi:type="org.pi4soa.cdl:Perform" choreography="//@choreographies.0/(a)enclosedChoreographies.1" waitForCompletion="false"/>
+ </activities>
+ <activities xsi:type="org.pi4soa.cdl:When" name="WhenQuotesReceivedOrTimeout">
+ <activities xsi:type="org.pi4soa.cdl:Interaction" name="Enquiry" operation="makeEnquiry" channelVariable="//@choreographies.0/(a)variableDefinitions.0" relationship="//@typeDefinitions/(a)relationshipTypes.2">
+ <exchangeDetails description="This is the exchange details for the respond exchange associated with interaction Enquiry" name="EnquiryRespondExchange" type="//@typeDefinitions/(a)informationTypes.10" action="Respond"/>
+ </activities>
+ </activities>
+ <activities xsi:type="org.pi4soa.cdl:Choice">
+ <activities xsi:type="org.pi4soa.cdl:Sequence">
+ <activities xsi:type="org.pi4soa.cdl:Perform" choreography="//@choreographies.0/(a)enclosedChoreographies.0">
+ <bindDetails name="BindBrokerChannel" thisVariable="//@choreographies.0/(a)variableDefinitions.0" thisRole="//@typeDefinitions/(a)roleTypes.1" freeVariable="//@choreographies.0/@enclosedChoreographies.0/(a)variableDefinitions.0" freeRole="//@typeDefinitions/(a)roleTypes.1"/>
+ <bindDetails name="BindBrokerChannel" thisVariable="//@choreographies.0/(a)variableDefinitions.0" thisRole="//@typeDefinitions/(a)roleTypes.0" freeVariable="//@choreographies.0/@enclosedChoreographies.0/(a)variableDefinitions.0" freeRole="//@typeDefinitions/(a)roleTypes.0"/>
+ </activities>
+ </activities>
+ <activities xsi:type="org.pi4soa.cdl:Sequence">
+ <activities xsi:type="org.pi4soa.cdl:Interaction" name="Cancel" operation="cancel" channelVariable="//@choreographies.0/(a)variableDefinitions.0" relationship="//@typeDefinitions/(a)relationshipTypes.2">
+ <exchangeDetails description="This is the exchange details for the request exchange associated with interaction Cancel" name="CancelRequestExchange" type="//@typeDefinitions/(a)informationTypes.2"/>
+ </activities>
+ </activities>
+ </activities>
+ </choreographies>
+</org.pi4soa.cdl:Package>
Modified: cdl/trunk/samples/jbossesb/broker/src/main/java/org/jboss/soa/overlord/samples/jbossesb/loan/broker/SetCreditCheckRequestMessageAction.java
===================================================================
--- cdl/trunk/samples/jbossesb/broker/src/main/java/org/jboss/soa/overlord/samples/jbossesb/loan/broker/SetCreditCheckRequestMessageAction.java 2008-07-22 06:43:40 UTC (rev 194)
+++ cdl/trunk/samples/jbossesb/broker/src/main/java/org/jboss/soa/overlord/samples/jbossesb/loan/broker/SetCreditCheckRequestMessageAction.java 2008-07-22 18:06:55 UTC (rev 195)
@@ -40,7 +40,7 @@
Node node = XMLUtils.getNode((String)message.getBody().get());
String idValue = node.getAttributes().getNamedItem("id").getNodeValue();
- message.getBody().add("<CreditCheckRequest id=\"" + idValue +"\"></CreditCheckRequest>");
+ message.getBody().add("<creditInformation id=\"" + idValue +"\"></creditInformation>");
logger.info("Updated credit check request message: "+message.getBody().get());
Modified: cdl/trunk/samples/jbossesb/broker/src/main/java/org/jboss/soa/overlord/samples/jbossesb/loan/broker/SetOrderConfirmRequestAction.java
===================================================================
--- cdl/trunk/samples/jbossesb/broker/src/main/java/org/jboss/soa/overlord/samples/jbossesb/loan/broker/SetOrderConfirmRequestAction.java 2008-07-22 06:43:40 UTC (rev 194)
+++ cdl/trunk/samples/jbossesb/broker/src/main/java/org/jboss/soa/overlord/samples/jbossesb/loan/broker/SetOrderConfirmRequestAction.java 2008-07-22 18:06:55 UTC (rev 195)
@@ -46,10 +46,10 @@
String supplier = (String) message.getProperties().getProperty("supplierDesc");
String quoteValue = (String)message.getProperties().getProperty("quoteValue");
- message.getBody().add("<orderConfirmRequest id=\"" + idValue +"\" supplierDesc=\""
- + supplier+"\" quoteValue=\"" + quoteValue + "\"></orderConfirmRequest>");
+ message.getBody().add("<orderConfirmed id=\"" + idValue +"\" supplierDesc=\""
+ + supplier+"\" quoteValue=\"" + quoteValue + "\"></orderConfirmed>");
- logger.info("Set 'orderConfirmRequest' : " + message.getBody().get());
+ logger.info(message.getBody().get());
return message;
}
Modified: cdl/trunk/samples/jbossesb/broker/src/main/java/org/jboss/soa/overlord/samples/jbossesb/loan/creditAgency/SetCreditCheckResponseMessageAction.java
===================================================================
--- cdl/trunk/samples/jbossesb/broker/src/main/java/org/jboss/soa/overlord/samples/jbossesb/loan/creditAgency/SetCreditCheckResponseMessageAction.java 2008-07-22 06:43:40 UTC (rev 194)
+++ cdl/trunk/samples/jbossesb/broker/src/main/java/org/jboss/soa/overlord/samples/jbossesb/loan/creditAgency/SetCreditCheckResponseMessageAction.java 2008-07-22 18:06:55 UTC (rev 195)
@@ -40,7 +40,7 @@
Node node = XMLUtils.getNode((String)message.getBody().get());
String idValue = node.getAttributes().getNamedItem("id").getNodeValue();
- message.getBody().add("<CreditCheckResponse id=\"" + idValue +"\"></CreditCheckResponse>");
+ message.getBody().add("<creditValid id=\"" + idValue +"\"></creditValid>");
logger.info("Updated credit message: "+message);
Modified: cdl/trunk/samples/jbossesb/broker/src/main/java/org/jboss/soa/overlord/samples/jbossesb/loan/supplier/SetOrderConfirmResponseAction.java
===================================================================
--- cdl/trunk/samples/jbossesb/broker/src/main/java/org/jboss/soa/overlord/samples/jbossesb/loan/supplier/SetOrderConfirmResponseAction.java 2008-07-22 06:43:40 UTC (rev 194)
+++ cdl/trunk/samples/jbossesb/broker/src/main/java/org/jboss/soa/overlord/samples/jbossesb/loan/supplier/SetOrderConfirmResponseAction.java 2008-07-22 18:06:55 UTC (rev 195)
@@ -49,12 +49,12 @@
String supplierDesc = "{http://www.jboss.org/overlord/loanBroker}Supplier1";
String confirmation = "The quote of " + quoteValue + " has been confirmed.";
- String body = "<orderConfirmResponse id=\"" + idValue + "\" supplierDesc = \""
- + supplierDesc+ "\">"+confirmation +"</orderConfirmResponse>";
+ String body = "<bookingReference id=\"" + idValue + "\" supplierDesc = \""
+ + supplierDesc+ "\">"+confirmation +"</bookingReference>";
message.getBody().add(body);
- logger.info("set 'orderConfirmResponse' of [" + body + "]");
+ logger.info("set 'bookingReference' of [" + body + "]");
return message;
}
Modified: cdl/trunk/samples/jbossesb/broker/src/main/resources/META-INF/jboss-esb.xml
===================================================================
--- cdl/trunk/samples/jbossesb/broker/src/main/resources/META-INF/jboss-esb.xml 2008-07-22 06:43:40 UTC (rev 194)
+++ cdl/trunk/samples/jbossesb/broker/src/main/resources/META-INF/jboss-esb.xml 2008-07-22 18:06:55 UTC (rev 195)
@@ -337,7 +337,7 @@
process="process" name="s13-1">
<property name="session" value="org.jboss.soa.overlord.samples.jbossesb.loan.broker.BrokerMain" />
<property name="operation" value="confirm" />
- <property name="messageType" value="orderConfirmResponse" />
+ <property name="messageType" value="bookingReference" />
<property name="identities" >
<identity type="primary" >
<token name="id" locator="//@id" />
@@ -484,7 +484,7 @@
<action class="org.jboss.soa.overlord.jbossesb.actions.SendMessageAction"
process="process" name="s10-4">
<property name="operation" value="checkCredit" />
- <property name="messageType" value="CreditCheckRequest" />
+ <property name="messageType" value="creditInformation" />
<property name="serviceName" value="CreditAgency.Main" />
<property name="serviceCategory" value="ESBBroker.CreditAgency" />
<property name="responseServiceName" value="CompleteTransaction.main.1" />
@@ -520,7 +520,7 @@
<property name="paths">
<case service-category="ESBBroker.BrokerParticipant"
service-name="CompleteTransaction.main.2" >
- <message type="CreditCheckResponse" />
+ <message type="creditValid" />
</case>
<case service-category="ESBBroker.BrokerParticipant"
service-name="CompleteTransaction.main.4" >
@@ -542,7 +542,7 @@
process="process" name="s12-1">
<property name="session" value="org.jboss.soa.overlord.samples.jbossesb.loan.broker.CompleteTransactionMain" />
<property name="operation" value="checkCredit" />
- <property name="messageType" value="CreditCheckResponse" />
+ <property name="messageType" value="creditValid" />
<property name="identities" >
<identity type="primary" >
<token name="id" locator="//@id" />
@@ -569,7 +569,7 @@
<action class="org.jboss.soa.overlord.jbossesb.actions.SendMessageAction"
process="process" name="s12-5">
<property name="operation" value="confirm" />
- <property name="messageType" value="orderConfirmRequest" />
+ <property name="messageType" value="orderConfirmed" />
<property name="serviceNameExpression" value="supplier.serviceName" />
<property name="serviceCategoryExpression" value="supplier.serviceCategory" />
<property name="responseServiceName" value="CompleteTransaction.main.3" />
@@ -594,7 +594,7 @@
process="process" name="s13-1">
<property name="session" value="org.jboss.soa.overlord.samples.jbossesb.loan.broker.CompleteTransactionMain" />
<property name="operation" value="confirm" />
- <property name="messageType" value="orderConfirmResponse" />
+ <property name="messageType" value="bookingReference" />
<property name="serviceDescriptionName" value="{http://www.jboss.org/overlord/loanBroker}CompleteTransaction" />
<property name="identities" >
<identity type="primary" >
@@ -606,13 +606,13 @@
<action class="org.jboss.soa.overlord.jbossesb.actions.SetStateAction"
process="process" name="s13-2">
<property name="variable" value="confirmation.detail" />
- <property name="messageExpression" value="/orderConfirmResponse" />
+ <property name="messageExpression" value="/bookingReference" />
</action>
<action class="org.jboss.soa.overlord.jbossesb.actions.SendMessageAction"
process="process" name="s13-3">
<property name="operation" value="buy" />
- <property name="messageType" value="orderConfirmResponse" />
+ <property name="messageType" value="bookingReference" />
<property name="clientEPR" value="buyer" />
<property name="identities" >
<identity type="primary" >
@@ -682,7 +682,7 @@
<token name="id" locator="//@id" />
<token name="supplierDesc" locator="//@supplierDesc" />
</identity>
- <message type="orderConfirmRequest" />
+ <message type="orderConfirmed" />
</route>
</property>
</action>
@@ -740,7 +740,7 @@
</action>
<action class="org.jboss.soa.overlord.jbossesb.actions.ReceiveMessageAction"
process="process" name="su12-2">
- <property name="messageType" value="orderConfirmRequest" />
+ <property name="messageType" value="orderConfirmed" />
<property name="clientEPR" value="broker" />
<property name="identities" >
<identity type="primary" >
@@ -753,7 +753,7 @@
</action>
<action class="org.jboss.soa.overlord.jbossesb.actions.SendMessageAction"
process="process" name="su12-4">
- <property name="messageType" value="orderConfirmResponse" />
+ <property name="messageType" value="bookingReference" />
<property name="clientEPR" value="broker" />
<property name="identities" >
<identity type="primary" >
@@ -779,7 +779,7 @@
<action class="org.jboss.soa.overlord.jbossesb.actions.ReceiveMessageAction"
process="process" name="c2">
<property name="operation" value="checkCredit" />
- <property name="messageType" value="CreditCheckRequest" />
+ <property name="messageType" value="creditInformation" />
<property name="clientEPR" value="broker" />
<property name="identities" >
<identity type="primary" >
@@ -816,7 +816,7 @@
process="process" name="d3">
<property name="session" value="org.jboss.soa.overlord.samples.jbossesb.loan.creditAgency.CreditAgency" />
<property name="operation" value="checkCredit" />
- <property name="messageType" value="CreditCheckResponse" />
+ <property name="messageType" value="creditValid" />
<property name="clientEPR" value="broker" />
<property name="identities" >
<identity type="primary" >
Modified: cdl/trunk/samples/pom.xml
===================================================================
--- cdl/trunk/samples/pom.xml 2008-07-22 06:43:40 UTC (rev 194)
+++ cdl/trunk/samples/pom.xml 2008-07-22 18:06:55 UTC (rev 195)
@@ -20,7 +20,6 @@
<hibernate-commons-annotations>3.0.0.ga</hibernate-commons-annotations>
<hibernate-tools-version>3.2.0.ga</hibernate-tools-version>
<hsqldb-version>1.8.0.7</hsqldb-version>
-
</properties>
15 years, 9 months
Overlord SVN: r194 - cdl/trunk/samples/jbossesb/broker/models.
by overlord-commits@lists.jboss.org
Author: jeff.yuchang
Date: 2008-07-22 02:43:40 -0400 (Tue, 22 Jul 2008)
New Revision: 194
Modified:
cdl/trunk/samples/jbossesb/broker/models/ESBBroker.cdm
Log:
* Revert the information type update.
Modified: cdl/trunk/samples/jbossesb/broker/models/ESBBroker.cdm
===================================================================
--- cdl/trunk/samples/jbossesb/broker/models/ESBBroker.cdm 2008-07-21 16:01:08 UTC (rev 193)
+++ cdl/trunk/samples/jbossesb/broker/models/ESBBroker.cdm 2008-07-22 06:43:40 UTC (rev 194)
@@ -1,112 +1,112 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<org.pi4soa.cdl:Package xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:org.pi4soa.cdl="http:///org/pi4soa/cdl.ecore" description="The choreography description for ESBBroker" name="ESBBroker" author="gary" version="0.2" targetNamespace="http://www.pi4soa.org/ESBBroker">
- <typeDefinitions>
- <nameSpaces description="Target Namespace for ESBBroker" prefix="tns" uRI="http://www.pi4soa.org/ESBBroker"/>
- <nameSpaces description="XML Schema Namespace" prefix="xsd" uRI="http://www.w3.org/2001/XMLSchema"/>
- <informationTypes description="This is the information type Buy" name="Buy" elementName="buy"/>
- <informationTypes description="This is the information type Cancel" name="Cancel" elementName="cancel"/>
- <informationTypes description="This is the information type CreditCheckRequest" name="CreditCheckRequest" elementName="CreditCheckRequest"/>
- <informationTypes description="This is the information type CreditCheckResponse" name="CreditCheckResponse" elementName="CreditCheckResponse"/>
- <informationTypes description="This is the information type CreditInvalid" name="CreditInvalid" elementName="creditInvalid"/>
- <informationTypes description="This is the information type Enquiry" name="Enquiry" typeName="" elementName="enquiry"/>
- <informationTypes description="This is the information type OrderConfirmRequest" name="OrderConfirmRequest" elementName="orderConfirmRequest"/>
- <informationTypes description="This is the information type OrderConfirmResponse" name="OrderConfirmResponse" elementName="orderConfirmResponse"/>
- <informationTypes description="This is the information type OrderRejected" name="OrderRejected" elementName="orderRejected"/>
- <informationTypes description="This is the information type Quote" name="Quote" elementName="quote"/>
- <informationTypes description="This is the information type QuoteList" name="QuoteList" elementName="quoteList"/>
- <informationTypes description="This is the information type RequestForQuote" name="RequestForQuote" elementName="requestForQuote"/>
- <informationTypes description="This is the information type URIType" name="URIType"/>
- <tokens description="This is the token URI" name="URI" informationType="//@typeDefinitions/(a)informationTypes.12"/>
- <roleTypes description="This is the role type Broker" name="Broker">
- <behaviors description="This is the behavior BrokerBehavior" name="BrokerBehavior"/>
- </roleTypes>
- <roleTypes description="This is the role type Buyer" name="Buyer">
- <behaviors description="This is the behavior BuyerBehavior" name="BuyerBehavior"/>
- </roleTypes>
- <roleTypes description="This is the role type CreditAgency" name="CreditAgency">
- <behaviors description="This is the behavior CreditAgencyBehavior" name="CreditAgencyBehavior"/>
- </roleTypes>
- <roleTypes description="This is the role type Supplier" name="Supplier">
- <behaviors description="This is the behavior SupplierBehavior" name="SupplierBehavior"/>
- </roleTypes>
- <relationshipTypes description="Relationship between Broker and CreditAgency" name="BrokerToCreditAgencyRel" firstRoleType="//@typeDefinitions/(a)roleTypes.0" secondRoleType="//@typeDefinitions/(a)roleTypes.2"/>
- <relationshipTypes description="Relationship between Broker and Supplier" name="BrokerToSupplierRel" firstRoleType="//@typeDefinitions/(a)roleTypes.0" secondRoleType="//@typeDefinitions/(a)roleTypes.3"/>
- <relationshipTypes description="Relationship between Buyer and Broker" name="BuyerToBrokerRel" firstRoleType="//@typeDefinitions/(a)roleTypes.1" secondRoleType="//@typeDefinitions/(a)roleTypes.0"/>
- <participantTypes description="This is the participant type Broker" name="Broker" roleTypes="//@typeDefinitions/(a)roleTypes.0">
- <semanticAnnotations annotation="jboss.overlord.samples.LoanBroker@Broker" name="conversationType"/>
- </participantTypes>
- <participantTypes description="This is the participant type Buyer" name="Buyer" roleTypes="//@typeDefinitions/(a)roleTypes.1"/>
- <participantTypes description="This is the participant type CreditAgency" name="CreditAgency" roleTypes="//@typeDefinitions/(a)roleTypes.2"/>
- <participantTypes description="This is the participant type Supplier" name="Supplier" roleTypes="//@typeDefinitions/(a)roleTypes.3"/>
- <channelTypes description="This is the channel type BrokerChannelType" name="BrokerChannelType" referenceToken="//@typeDefinitions/(a)tokens.0" roleType="//@typeDefinitions/(a)roleTypes.0"/>
- <channelTypes description="This is the channel type CreditAgencyChannelType" name="CreditAgencyChannelType" referenceToken="//@typeDefinitions/(a)tokens.0" roleType="//@typeDefinitions/(a)roleTypes.2"/>
- <channelTypes description="This is the channel type SupplierChannelType" name="SupplierChannelType" referenceToken="//@typeDefinitions/(a)tokens.0" roleType="//@typeDefinitions/(a)roleTypes.3"/>
- </typeDefinitions>
- <choreographies description="Choreography flow for the ESBBroker process" name="ESBBrokerProcess" root="true">
- <enclosedChoreographies name="CompleteTransaction">
- <variableDefinitions description="Channel to facilitate interaction to Broker" name="BrokerChannel" type="//@typeDefinitions/(a)channelTypes.0" free="true" roleTypes="//@typeDefinitions/(a)roleTypes.0 //@typeDefinitions/(a)roleTypes.1"/>
- <variableDefinitions description="Channel to facilitate interaction to CreditAgency" name="CreditAgencyChannel" type="//@typeDefinitions/(a)channelTypes.1"/>
- <variableDefinitions description="Channel to facilitate interaction to Supplier" name="SupplierChannel" type="//@typeDefinitions/(a)channelTypes.2"/>
- <activities xsi:type="org.pi4soa.cdl:Interaction" name="Buy" operation="buy" channelVariable="//@choreographies.0/@enclosedChoreographies.0/(a)variableDefinitions.0" relationship="//@typeDefinitions/(a)relationshipTypes.2">
- <exchangeDetails description="This is the exchange details for the request exchange associated with interaction Buy" name="BuyRequestExchange" type="//@typeDefinitions/(a)informationTypes.0"/>
- </activities>
- <activities xsi:type="org.pi4soa.cdl:Interaction" name="CheckCredit" operation="checkCredit" channelVariable="//@choreographies.0/@enclosedChoreographies.0/(a)variableDefinitions.1" relationship="//@typeDefinitions/(a)relationshipTypes.0">
- <exchangeDetails description="This is the exchange details for the request exchange associated with interaction CheckCredit" name="CheckCreditRequestExchange" type="//@typeDefinitions/(a)informationTypes.2"/>
- </activities>
- <activities xsi:type="org.pi4soa.cdl:Choice" description="Evaluate Credit Check Result">
- <activities xsi:type="org.pi4soa.cdl:Sequence" description="Sufficient Credit">
- <activities xsi:type="org.pi4soa.cdl:Interaction" name="CheckCreditResponse" operation="checkCredit" channelVariable="//@choreographies.0/@enclosedChoreographies.0/(a)variableDefinitions.1" relationship="//@typeDefinitions/(a)relationshipTypes.0">
- <exchangeDetails description="This is the exchange details for the respond exchange associated with interaction CheckCreditResponse" name="CheckCreditResponseRespondExchange" type="//@typeDefinitions/(a)informationTypes.3" action="Respond"/>
- </activities>
- <activities xsi:type="org.pi4soa.cdl:Interaction" name="ConfirmBooking" operation="confirm" channelVariable="//@choreographies.0/@enclosedChoreographies.0/(a)variableDefinitions.2" relationship="//@typeDefinitions/(a)relationshipTypes.1">
- <exchangeDetails description="This is the exchange details for the request exchange associated with interaction ConfirmBooking" name="ConfirmBookingRequestExchange" type="//@typeDefinitions/(a)informationTypes.6"/>
- <exchangeDetails description="This is the exchange details for the request exchange associated with interaction ConfirmBooking" name="ConfirmBookingRequestExchange" type="//@typeDefinitions/(a)informationTypes.7" action="Respond"/>
- </activities>
- <activities xsi:type="org.pi4soa.cdl:Interaction" name="Buy" operation="buy" channelVariable="//@choreographies.0/@enclosedChoreographies.0/(a)variableDefinitions.0" relationship="//@typeDefinitions/(a)relationshipTypes.2">
- <exchangeDetails description="This is the exchange details for the respond exchange associated with interaction Buy" name="BuyRespondExchange" type="//@typeDefinitions/(a)informationTypes.7" action="Respond" faultName=""/>
- </activities>
- </activities>
- <activities xsi:type="org.pi4soa.cdl:Sequence" description="Insufficient Credit">
- <activities xsi:type="org.pi4soa.cdl:Interaction" name="CheckCreditFailed" operation="checkCredit" channelVariable="//@choreographies.0/@enclosedChoreographies.0/(a)variableDefinitions.1" relationship="//@typeDefinitions/(a)relationshipTypes.0">
- <exchangeDetails description="This is the exchange details for the respond exchange associated with interaction CheckCreditFailed" name="CheckCreditFailedRespondExchange" type="//@typeDefinitions/(a)informationTypes.4" action="Respond" faultName="invalidCredit"/>
- </activities>
- <activities xsi:type="org.pi4soa.cdl:Interaction" name="Buy" operation="buy" channelVariable="//@choreographies.0/@enclosedChoreographies.0/(a)variableDefinitions.0" relationship="//@typeDefinitions/(a)relationshipTypes.2">
- <exchangeDetails description="This is the exchange details for the respond exchange associated with interaction Buy" name="BuyRespondExchange" type="//@typeDefinitions/(a)informationTypes.8" action="Respond" faultName="rejected"/>
- </activities>
- </activities>
- </activities>
- </enclosedChoreographies>
- <enclosedChoreographies name="RequestForQuote">
- <variableDefinitions description="Channel to facilitate interaction to Supplier" name="SupplierChannel" type="//@typeDefinitions/(a)channelTypes.2"/>
- <activities xsi:type="org.pi4soa.cdl:Interaction" name="RFQ" operation="getQuote" channelVariable="//@choreographies.0/@enclosedChoreographies.1/(a)variableDefinitions.0" relationship="//@typeDefinitions/(a)relationshipTypes.1">
- <exchangeDetails description="This is the exchange details for the request exchange associated with interaction RFQ" name="RFQRequestExchange" type="//@typeDefinitions/(a)informationTypes.11"/>
- <exchangeDetails description="This is the exchange details for the respond exchange associated with interaction RFQ" name="RFQRespondExchange" type="//@typeDefinitions/(a)informationTypes.9" action="Respond"/>
- </activities>
- </enclosedChoreographies>
- <variableDefinitions description="Channel to facilitate interaction to Broker" name="BrokerChannel" type="//@typeDefinitions/(a)channelTypes.0" roleTypes="//@typeDefinitions/(a)roleTypes.0 //@typeDefinitions/(a)roleTypes.1"/>
- <activities xsi:type="org.pi4soa.cdl:Interaction" name="Enquiry" operation="makeEnquiry" channelVariable="//@choreographies.0/(a)variableDefinitions.0" relationship="//@typeDefinitions/(a)relationshipTypes.2">
- <exchangeDetails description="This is the exchange details for the request exchange associated with interaction Enquiry" name="EnquiryRequestExchange" type="//@typeDefinitions/(a)informationTypes.5"/>
- </activities>
- <activities xsi:type="org.pi4soa.cdl:While" name="SendRFQToSuppliers">
- <activities xsi:type="org.pi4soa.cdl:Perform" choreography="//@choreographies.0/(a)enclosedChoreographies.1" waitForCompletion="false"/>
- </activities>
- <activities xsi:type="org.pi4soa.cdl:When" name="WhenQuotesReceivedOrTimeout">
- <activities xsi:type="org.pi4soa.cdl:Interaction" name="Enquiry" operation="makeEnquiry" channelVariable="//@choreographies.0/(a)variableDefinitions.0" relationship="//@typeDefinitions/(a)relationshipTypes.2">
- <exchangeDetails description="This is the exchange details for the respond exchange associated with interaction Enquiry" name="EnquiryRespondExchange" type="//@typeDefinitions/(a)informationTypes.10" action="Respond"/>
- </activities>
- </activities>
- <activities xsi:type="org.pi4soa.cdl:Choice">
- <activities xsi:type="org.pi4soa.cdl:Sequence">
- <activities xsi:type="org.pi4soa.cdl:Perform" choreography="//@choreographies.0/(a)enclosedChoreographies.0">
- <bindDetails name="BindBrokerChannel" thisVariable="//@choreographies.0/(a)variableDefinitions.0" thisRole="//@typeDefinitions/(a)roleTypes.1" freeVariable="//@choreographies.0/@enclosedChoreographies.0/(a)variableDefinitions.0" freeRole="//@typeDefinitions/(a)roleTypes.1"/>
- <bindDetails name="BindBrokerChannel" thisVariable="//@choreographies.0/(a)variableDefinitions.0" thisRole="//@typeDefinitions/(a)roleTypes.0" freeVariable="//@choreographies.0/@enclosedChoreographies.0/(a)variableDefinitions.0" freeRole="//@typeDefinitions/(a)roleTypes.0"/>
- </activities>
- </activities>
- <activities xsi:type="org.pi4soa.cdl:Sequence">
- <activities xsi:type="org.pi4soa.cdl:Interaction" name="Cancel" operation="cancel" channelVariable="//@choreographies.0/(a)variableDefinitions.0" relationship="//@typeDefinitions/(a)relationshipTypes.2">
- <exchangeDetails description="This is the exchange details for the request exchange associated with interaction Cancel" name="CancelRequestExchange" type="//@typeDefinitions/(a)informationTypes.1"/>
- </activities>
- </activities>
- </activities>
- </choreographies>
-</org.pi4soa.cdl:Package>
+<?xml version="1.0" encoding="Cp1252"?>
+<org.pi4soa.cdl:Package xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:org.pi4soa.cdl="http:///org/pi4soa/cdl.ecore" description="The choreography description for ESBBroker" name="ESBBroker" author="gary" version="0.2" targetNamespace="http://www.pi4soa.org/ESBBroker">
+ <typeDefinitions>
+ <nameSpaces description="Target Namespace for ESBBroker" prefix="tns" uRI="http://www.pi4soa.org/ESBBroker"/>
+ <nameSpaces description="XML Schema Namespace" prefix="xsd" uRI="http://www.w3.org/2001/XMLSchema"/>
+ <informationTypes description="This is the information type BookingReference" name="BookingReference" elementName="bookingReference"/>
+ <informationTypes description="This is the information type Cancel" name="Cancel" elementName="cancel"/>
+ <informationTypes description="This is the information type CreditInformation" name="CreditInformation" elementName="creditInformation"/>
+ <informationTypes description="This is the information type CreditInvalid" name="CreditInvalid" elementName="creditInvalid"/>
+ <informationTypes description="This is the information type CreditValid" name="CreditValid" elementName="creditValid"/>
+ <informationTypes description="This is the information type Enquiry" name="Enquiry" typeName="" elementName="enquiry"/>
+ <informationTypes description="This is the information type OrderConfirmed" name="OrderConfirmed" elementName="orderConfirmed"/>
+ <informationTypes description="This is the information type OrderRejected" name="OrderRejected" elementName="orderRejected"/>
+ <informationTypes description="This is the information type PurchaseDetails" name="PurchaseDetails" elementName="purchaseDetails"/>
+ <informationTypes description="This is the information type Quote" name="Quote" elementName="quote"/>
+ <informationTypes description="This is the information type QuoteList" name="QuoteList" elementName="quoteList"/>
+ <informationTypes description="This is the information type RequestForQuote" name="RequestForQuote" elementName="requestForQuote"/>
+ <informationTypes description="This is the information type URIType" name="URIType"/>
+ <tokens description="This is the token URI" name="URI" informationType="//@typeDefinitions/(a)informationTypes.12"/>
+ <roleTypes description="This is the role type Broker" name="Broker">
+ <behaviors description="This is the behavior BrokerBehavior" name="BrokerBehavior"/>
+ </roleTypes>
+ <roleTypes description="This is the role type Buyer" name="Buyer">
+ <behaviors description="This is the behavior BuyerBehavior" name="BuyerBehavior"/>
+ </roleTypes>
+ <roleTypes description="This is the role type CreditAgency" name="CreditAgency">
+ <behaviors description="This is the behavior CreditAgencyBehavior" name="CreditAgencyBehavior"/>
+ </roleTypes>
+ <roleTypes description="This is the role type Supplier" name="Supplier">
+ <behaviors description="This is the behavior SupplierBehavior" name="SupplierBehavior"/>
+ </roleTypes>
+ <relationshipTypes description="Relationship between Broker and CreditAgency" name="BrokerToCreditAgencyRel" firstRoleType="//@typeDefinitions/(a)roleTypes.0" secondRoleType="//@typeDefinitions/(a)roleTypes.2"/>
+ <relationshipTypes description="Relationship between Broker and Supplier" name="BrokerToSupplierRel" firstRoleType="//@typeDefinitions/(a)roleTypes.0" secondRoleType="//@typeDefinitions/(a)roleTypes.3"/>
+ <relationshipTypes description="Relationship between Buyer and Broker" name="BuyerToBrokerRel" firstRoleType="//@typeDefinitions/(a)roleTypes.1" secondRoleType="//@typeDefinitions/(a)roleTypes.0"/>
+ <participantTypes description="This is the participant type Broker" name="Broker" roleTypes="//@typeDefinitions/(a)roleTypes.0">
+ <semanticAnnotations annotation="jboss.overlord.samples.LoanBroker@Broker" name="conversationType"/>
+ </participantTypes>
+ <participantTypes description="This is the participant type Buyer" name="Buyer" roleTypes="//@typeDefinitions/(a)roleTypes.1"/>
+ <participantTypes description="This is the participant type CreditAgency" name="CreditAgency" roleTypes="//@typeDefinitions/(a)roleTypes.2"/>
+ <participantTypes description="This is the participant type Supplier" name="Supplier" roleTypes="//@typeDefinitions/(a)roleTypes.3"/>
+ <channelTypes description="This is the channel type BrokerChannelType" name="BrokerChannelType" referenceToken="//@typeDefinitions/(a)tokens.0" roleType="//@typeDefinitions/(a)roleTypes.0"/>
+ <channelTypes description="This is the channel type CreditAgencyChannelType" name="CreditAgencyChannelType" referenceToken="//@typeDefinitions/(a)tokens.0" roleType="//@typeDefinitions/(a)roleTypes.2"/>
+ <channelTypes description="This is the channel type SupplierChannelType" name="SupplierChannelType" referenceToken="//@typeDefinitions/(a)tokens.0" roleType="//@typeDefinitions/(a)roleTypes.3"/>
+ </typeDefinitions>
+ <choreographies description="Choreography flow for the ESBBroker process" name="ESBBrokerProcess" root="true">
+ <enclosedChoreographies name="CompleteTransaction">
+ <variableDefinitions description="Channel to facilitate interaction to Broker" name="BrokerChannel" type="//@typeDefinitions/(a)channelTypes.0" free="true" roleTypes="//@typeDefinitions/(a)roleTypes.0 //@typeDefinitions/(a)roleTypes.1"/>
+ <variableDefinitions description="Channel to facilitate interaction to CreditAgency" name="CreditAgencyChannel" type="//@typeDefinitions/(a)channelTypes.1"/>
+ <variableDefinitions description="Channel to facilitate interaction to Supplier" name="SupplierChannel" type="//@typeDefinitions/(a)channelTypes.2"/>
+ <activities xsi:type="org.pi4soa.cdl:Interaction" name="Buy" operation="buy" channelVariable="//@choreographies.0/@enclosedChoreographies.0/(a)variableDefinitions.0" relationship="//@typeDefinitions/(a)relationshipTypes.2">
+ <exchangeDetails description="This is the exchange details for the request exchange associated with interaction Buy" name="BuyRequestExchange" type="//@typeDefinitions/(a)informationTypes.8"/>
+ </activities>
+ <activities xsi:type="org.pi4soa.cdl:Interaction" name="CheckCredit" operation="checkCredit" channelVariable="//@choreographies.0/@enclosedChoreographies.0/(a)variableDefinitions.1" relationship="//@typeDefinitions/(a)relationshipTypes.0">
+ <exchangeDetails description="This is the exchange details for the request exchange associated with interaction CheckCredit" name="CheckCreditRequestExchange" type="//@typeDefinitions/(a)informationTypes.2"/>
+ </activities>
+ <activities xsi:type="org.pi4soa.cdl:Choice" description="Evaluate Credit Check Result">
+ <activities xsi:type="org.pi4soa.cdl:Sequence" description="Sufficient Credit">
+ <activities xsi:type="org.pi4soa.cdl:Interaction" name="CheckCreditResponse" operation="checkCredit" channelVariable="//@choreographies.0/@enclosedChoreographies.0/(a)variableDefinitions.1" relationship="//@typeDefinitions/(a)relationshipTypes.0">
+ <exchangeDetails description="This is the exchange details for the respond exchange associated with interaction CheckCreditResponse" name="CheckCreditResponseRespondExchange" type="//@typeDefinitions/(a)informationTypes.4" action="Respond"/>
+ </activities>
+ <activities xsi:type="org.pi4soa.cdl:Interaction" name="ConfirmBooking" operation="confirm" channelVariable="//@choreographies.0/@enclosedChoreographies.0/(a)variableDefinitions.2" relationship="//@typeDefinitions/(a)relationshipTypes.1">
+ <exchangeDetails description="This is the exchange details for the request exchange associated with interaction ConfirmBooking" name="ConfirmBookingRequestExchange" type="//@typeDefinitions/(a)informationTypes.6"/>
+ <exchangeDetails description="This is the exchange details for the request exchange associated with interaction ConfirmBooking" name="ConfirmBookingRequestExchange" type="//@typeDefinitions/(a)informationTypes.0" action="Respond"/>
+ </activities>
+ <activities xsi:type="org.pi4soa.cdl:Interaction" name="Buy" operation="buy" channelVariable="//@choreographies.0/@enclosedChoreographies.0/(a)variableDefinitions.0" relationship="//@typeDefinitions/(a)relationshipTypes.2">
+ <exchangeDetails description="This is the exchange details for the respond exchange associated with interaction Buy" name="BuyRespondExchange" type="//@typeDefinitions/(a)informationTypes.6" action="Respond" faultName=""/>
+ </activities>
+ </activities>
+ <activities xsi:type="org.pi4soa.cdl:Sequence" description="Insufficient Credit">
+ <activities xsi:type="org.pi4soa.cdl:Interaction" name="CheckCreditFailed" operation="checkCredit" channelVariable="//@choreographies.0/@enclosedChoreographies.0/(a)variableDefinitions.1" relationship="//@typeDefinitions/(a)relationshipTypes.0">
+ <exchangeDetails description="This is the exchange details for the respond exchange associated with interaction CheckCreditFailed" name="CheckCreditFailedRespondExchange" type="//@typeDefinitions/(a)informationTypes.3" action="Respond" faultName="invalidCredit"/>
+ </activities>
+ <activities xsi:type="org.pi4soa.cdl:Interaction" name="Buy" operation="buy" channelVariable="//@choreographies.0/@enclosedChoreographies.0/(a)variableDefinitions.0" relationship="//@typeDefinitions/(a)relationshipTypes.2">
+ <exchangeDetails description="This is the exchange details for the respond exchange associated with interaction Buy" name="BuyRespondExchange" type="//@typeDefinitions/(a)informationTypes.7" action="Respond" faultName="rejected"/>
+ </activities>
+ </activities>
+ </activities>
+ </enclosedChoreographies>
+ <enclosedChoreographies name="RequestForQuote">
+ <variableDefinitions description="Channel to facilitate interaction to Supplier" name="SupplierChannel" type="//@typeDefinitions/(a)channelTypes.2"/>
+ <activities xsi:type="org.pi4soa.cdl:Interaction" name="RFQ" operation="getQuote" channelVariable="//@choreographies.0/@enclosedChoreographies.1/(a)variableDefinitions.0" relationship="//@typeDefinitions/(a)relationshipTypes.1">
+ <exchangeDetails description="This is the exchange details for the request exchange associated with interaction RFQ" name="RFQRequestExchange" type="//@typeDefinitions/(a)informationTypes.11"/>
+ <exchangeDetails description="This is the exchange details for the respond exchange associated with interaction RFQ" name="RFQRespondExchange" type="//@typeDefinitions/(a)informationTypes.9" action="Respond"/>
+ </activities>
+ </enclosedChoreographies>
+ <variableDefinitions description="Channel to facilitate interaction to Broker" name="BrokerChannel" type="//@typeDefinitions/(a)channelTypes.0" roleTypes="//@typeDefinitions/(a)roleTypes.0 //@typeDefinitions/(a)roleTypes.1"/>
+ <activities xsi:type="org.pi4soa.cdl:Interaction" name="Enquiry" operation="makeEnquiry" channelVariable="//@choreographies.0/(a)variableDefinitions.0" relationship="//@typeDefinitions/(a)relationshipTypes.2">
+ <exchangeDetails description="This is the exchange details for the request exchange associated with interaction Enquiry" name="EnquiryRequestExchange" type="//@typeDefinitions/(a)informationTypes.5"/>
+ </activities>
+ <activities xsi:type="org.pi4soa.cdl:While" name="SendRFQToSuppliers">
+ <activities xsi:type="org.pi4soa.cdl:Perform" choreography="//@choreographies.0/(a)enclosedChoreographies.1" waitForCompletion="false"/>
+ </activities>
+ <activities xsi:type="org.pi4soa.cdl:When" name="WhenQuotesReceivedOrTimeout">
+ <activities xsi:type="org.pi4soa.cdl:Interaction" name="Enquiry" operation="makeEnquiry" channelVariable="//@choreographies.0/(a)variableDefinitions.0" relationship="//@typeDefinitions/(a)relationshipTypes.2">
+ <exchangeDetails description="This is the exchange details for the respond exchange associated with interaction Enquiry" name="EnquiryRespondExchange" type="//@typeDefinitions/(a)informationTypes.10" action="Respond"/>
+ </activities>
+ </activities>
+ <activities xsi:type="org.pi4soa.cdl:Choice">
+ <activities xsi:type="org.pi4soa.cdl:Sequence">
+ <activities xsi:type="org.pi4soa.cdl:Perform" choreography="//@choreographies.0/(a)enclosedChoreographies.0">
+ <bindDetails name="BindBrokerChannel" thisVariable="//@choreographies.0/(a)variableDefinitions.0" thisRole="//@typeDefinitions/(a)roleTypes.1" freeVariable="//@choreographies.0/@enclosedChoreographies.0/(a)variableDefinitions.0" freeRole="//@typeDefinitions/(a)roleTypes.1"/>
+ <bindDetails name="BindBrokerChannel" thisVariable="//@choreographies.0/(a)variableDefinitions.0" thisRole="//@typeDefinitions/(a)roleTypes.0" freeVariable="//@choreographies.0/@enclosedChoreographies.0/(a)variableDefinitions.0" freeRole="//@typeDefinitions/(a)roleTypes.0"/>
+ </activities>
+ </activities>
+ <activities xsi:type="org.pi4soa.cdl:Sequence">
+ <activities xsi:type="org.pi4soa.cdl:Interaction" name="Cancel" operation="cancel" channelVariable="//@choreographies.0/(a)variableDefinitions.0" relationship="//@typeDefinitions/(a)relationshipTypes.2">
+ <exchangeDetails description="This is the exchange details for the request exchange associated with interaction Cancel" name="CancelRequestExchange" type="//@typeDefinitions/(a)informationTypes.1"/>
+ </activities>
+ </activities>
+ </activities>
+ </choreographies>
+</org.pi4soa.cdl:Package>
15 years, 9 months
Overlord SVN: r193 - cdl/trunk/samples/jbossesb/broker/models.
by overlord-commits@lists.jboss.org
Author: jeff.yuchang
Date: 2008-07-21 12:01:08 -0400 (Mon, 21 Jul 2008)
New Revision: 193
Modified:
cdl/trunk/samples/jbossesb/broker/models/ESBBroker.cdm
Log:
* Update the information type in model, so that it can be matched in the runtime.
Modified: cdl/trunk/samples/jbossesb/broker/models/ESBBroker.cdm
===================================================================
--- cdl/trunk/samples/jbossesb/broker/models/ESBBroker.cdm 2008-07-21 11:34:33 UTC (rev 192)
+++ cdl/trunk/samples/jbossesb/broker/models/ESBBroker.cdm 2008-07-21 16:01:08 UTC (rev 193)
@@ -1,112 +1,112 @@
-<?xml version="1.0" encoding="Cp1252"?>
-<org.pi4soa.cdl:Package xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:org.pi4soa.cdl="http:///org/pi4soa/cdl.ecore" description="The choreography description for ESBBroker" name="ESBBroker" author="gary" version="0.2" targetNamespace="http://www.pi4soa.org/ESBBroker">
- <typeDefinitions>
- <nameSpaces description="Target Namespace for ESBBroker" prefix="tns" uRI="http://www.pi4soa.org/ESBBroker"/>
- <nameSpaces description="XML Schema Namespace" prefix="xsd" uRI="http://www.w3.org/2001/XMLSchema"/>
- <informationTypes description="This is the information type BookingReference" name="BookingReference" elementName="bookingReference"/>
- <informationTypes description="This is the information type Cancel" name="Cancel" elementName="cancel"/>
- <informationTypes description="This is the information type CreditInformation" name="CreditInformation" elementName="creditInformation"/>
- <informationTypes description="This is the information type CreditInvalid" name="CreditInvalid" elementName="creditInvalid"/>
- <informationTypes description="This is the information type CreditValid" name="CreditValid" elementName="creditValid"/>
- <informationTypes description="This is the information type Enquiry" name="Enquiry" typeName="" elementName="enquiry"/>
- <informationTypes description="This is the information type OrderConfirmed" name="OrderConfirmed" elementName="orderConfirmed"/>
- <informationTypes description="This is the information type OrderRejected" name="OrderRejected" elementName="orderRejected"/>
- <informationTypes description="This is the information type PurchaseDetails" name="PurchaseDetails" elementName="purchaseDetails"/>
- <informationTypes description="This is the information type Quote" name="Quote" elementName="quote"/>
- <informationTypes description="This is the information type QuoteList" name="QuoteList" elementName="quoteList"/>
- <informationTypes description="This is the information type RequestForQuote" name="RequestForQuote" elementName="requestForQuote"/>
- <informationTypes description="This is the information type URIType" name="URIType"/>
- <tokens description="This is the token URI" name="URI" informationType="//@typeDefinitions/(a)informationTypes.12"/>
- <roleTypes description="This is the role type Broker" name="Broker">
- <behaviors description="This is the behavior BrokerBehavior" name="BrokerBehavior"/>
- </roleTypes>
- <roleTypes description="This is the role type Buyer" name="Buyer">
- <behaviors description="This is the behavior BuyerBehavior" name="BuyerBehavior"/>
- </roleTypes>
- <roleTypes description="This is the role type CreditAgency" name="CreditAgency">
- <behaviors description="This is the behavior CreditAgencyBehavior" name="CreditAgencyBehavior"/>
- </roleTypes>
- <roleTypes description="This is the role type Supplier" name="Supplier">
- <behaviors description="This is the behavior SupplierBehavior" name="SupplierBehavior"/>
- </roleTypes>
- <relationshipTypes description="Relationship between Broker and CreditAgency" name="BrokerToCreditAgencyRel" firstRoleType="//@typeDefinitions/(a)roleTypes.0" secondRoleType="//@typeDefinitions/(a)roleTypes.2"/>
- <relationshipTypes description="Relationship between Broker and Supplier" name="BrokerToSupplierRel" firstRoleType="//@typeDefinitions/(a)roleTypes.0" secondRoleType="//@typeDefinitions/(a)roleTypes.3"/>
- <relationshipTypes description="Relationship between Buyer and Broker" name="BuyerToBrokerRel" firstRoleType="//@typeDefinitions/(a)roleTypes.1" secondRoleType="//@typeDefinitions/(a)roleTypes.0"/>
- <participantTypes description="This is the participant type Broker" name="Broker" roleTypes="//@typeDefinitions/(a)roleTypes.0">
- <semanticAnnotations annotation="jboss.overlord.samples.LoanBroker@Broker" name="conversationType"/>
- </participantTypes>
- <participantTypes description="This is the participant type Buyer" name="Buyer" roleTypes="//@typeDefinitions/(a)roleTypes.1"/>
- <participantTypes description="This is the participant type CreditAgency" name="CreditAgency" roleTypes="//@typeDefinitions/(a)roleTypes.2"/>
- <participantTypes description="This is the participant type Supplier" name="Supplier" roleTypes="//@typeDefinitions/(a)roleTypes.3"/>
- <channelTypes description="This is the channel type BrokerChannelType" name="BrokerChannelType" referenceToken="//@typeDefinitions/(a)tokens.0" roleType="//@typeDefinitions/(a)roleTypes.0"/>
- <channelTypes description="This is the channel type CreditAgencyChannelType" name="CreditAgencyChannelType" referenceToken="//@typeDefinitions/(a)tokens.0" roleType="//@typeDefinitions/(a)roleTypes.2"/>
- <channelTypes description="This is the channel type SupplierChannelType" name="SupplierChannelType" referenceToken="//@typeDefinitions/(a)tokens.0" roleType="//@typeDefinitions/(a)roleTypes.3"/>
- </typeDefinitions>
- <choreographies description="Choreography flow for the ESBBroker process" name="ESBBrokerProcess" root="true">
- <enclosedChoreographies name="CompleteTransaction">
- <variableDefinitions description="Channel to facilitate interaction to Broker" name="BrokerChannel" type="//@typeDefinitions/(a)channelTypes.0" free="true" roleTypes="//@typeDefinitions/(a)roleTypes.0 //@typeDefinitions/(a)roleTypes.1"/>
- <variableDefinitions description="Channel to facilitate interaction to CreditAgency" name="CreditAgencyChannel" type="//@typeDefinitions/(a)channelTypes.1"/>
- <variableDefinitions description="Channel to facilitate interaction to Supplier" name="SupplierChannel" type="//@typeDefinitions/(a)channelTypes.2"/>
- <activities xsi:type="org.pi4soa.cdl:Interaction" name="Buy" operation="buy" channelVariable="//@choreographies.0/@enclosedChoreographies.0/(a)variableDefinitions.0" relationship="//@typeDefinitions/(a)relationshipTypes.2">
- <exchangeDetails description="This is the exchange details for the request exchange associated with interaction Buy" name="BuyRequestExchange" type="//@typeDefinitions/(a)informationTypes.8"/>
- </activities>
- <activities xsi:type="org.pi4soa.cdl:Interaction" name="CheckCredit" operation="checkCredit" channelVariable="//@choreographies.0/@enclosedChoreographies.0/(a)variableDefinitions.1" relationship="//@typeDefinitions/(a)relationshipTypes.0">
- <exchangeDetails description="This is the exchange details for the request exchange associated with interaction CheckCredit" name="CheckCreditRequestExchange" type="//@typeDefinitions/(a)informationTypes.2"/>
- </activities>
- <activities xsi:type="org.pi4soa.cdl:Choice" description="Evaluate Credit Check Result">
- <activities xsi:type="org.pi4soa.cdl:Sequence" description="Sufficient Credit">
- <activities xsi:type="org.pi4soa.cdl:Interaction" name="CheckCreditResponse" operation="checkCredit" channelVariable="//@choreographies.0/@enclosedChoreographies.0/(a)variableDefinitions.1" relationship="//@typeDefinitions/(a)relationshipTypes.0">
- <exchangeDetails description="This is the exchange details for the respond exchange associated with interaction CheckCreditResponse" name="CheckCreditResponseRespondExchange" type="//@typeDefinitions/(a)informationTypes.4" action="Respond"/>
- </activities>
- <activities xsi:type="org.pi4soa.cdl:Interaction" name="ConfirmBooking" operation="confirm" channelVariable="//@choreographies.0/@enclosedChoreographies.0/(a)variableDefinitions.2" relationship="//@typeDefinitions/(a)relationshipTypes.1">
- <exchangeDetails description="This is the exchange details for the request exchange associated with interaction ConfirmBooking" name="ConfirmBookingRequestExchange" type="//@typeDefinitions/(a)informationTypes.6"/>
- <exchangeDetails description="This is the exchange details for the request exchange associated with interaction ConfirmBooking" name="ConfirmBookingRequestExchange" type="//@typeDefinitions/(a)informationTypes.0" action="Respond"/>
- </activities>
- <activities xsi:type="org.pi4soa.cdl:Interaction" name="Buy" operation="buy" channelVariable="//@choreographies.0/@enclosedChoreographies.0/(a)variableDefinitions.0" relationship="//@typeDefinitions/(a)relationshipTypes.2">
- <exchangeDetails description="This is the exchange details for the respond exchange associated with interaction Buy" name="BuyRespondExchange" type="//@typeDefinitions/(a)informationTypes.6" action="Respond" faultName=""/>
- </activities>
- </activities>
- <activities xsi:type="org.pi4soa.cdl:Sequence" description="Insufficient Credit">
- <activities xsi:type="org.pi4soa.cdl:Interaction" name="CheckCreditFailed" operation="checkCredit" channelVariable="//@choreographies.0/@enclosedChoreographies.0/(a)variableDefinitions.1" relationship="//@typeDefinitions/(a)relationshipTypes.0">
- <exchangeDetails description="This is the exchange details for the respond exchange associated with interaction CheckCreditFailed" name="CheckCreditFailedRespondExchange" type="//@typeDefinitions/(a)informationTypes.3" action="Respond" faultName="invalidCredit"/>
- </activities>
- <activities xsi:type="org.pi4soa.cdl:Interaction" name="Buy" operation="buy" channelVariable="//@choreographies.0/@enclosedChoreographies.0/(a)variableDefinitions.0" relationship="//@typeDefinitions/(a)relationshipTypes.2">
- <exchangeDetails description="This is the exchange details for the respond exchange associated with interaction Buy" name="BuyRespondExchange" type="//@typeDefinitions/(a)informationTypes.7" action="Respond" faultName="rejected"/>
- </activities>
- </activities>
- </activities>
- </enclosedChoreographies>
- <enclosedChoreographies name="RequestForQuote">
- <variableDefinitions description="Channel to facilitate interaction to Supplier" name="SupplierChannel" type="//@typeDefinitions/(a)channelTypes.2"/>
- <activities xsi:type="org.pi4soa.cdl:Interaction" name="RFQ" operation="getQuote" channelVariable="//@choreographies.0/@enclosedChoreographies.1/(a)variableDefinitions.0" relationship="//@typeDefinitions/(a)relationshipTypes.1">
- <exchangeDetails description="This is the exchange details for the request exchange associated with interaction RFQ" name="RFQRequestExchange" type="//@typeDefinitions/(a)informationTypes.11"/>
- <exchangeDetails description="This is the exchange details for the respond exchange associated with interaction RFQ" name="RFQRespondExchange" type="//@typeDefinitions/(a)informationTypes.9" action="Respond"/>
- </activities>
- </enclosedChoreographies>
- <variableDefinitions description="Channel to facilitate interaction to Broker" name="BrokerChannel" type="//@typeDefinitions/(a)channelTypes.0" roleTypes="//@typeDefinitions/(a)roleTypes.0 //@typeDefinitions/(a)roleTypes.1"/>
- <activities xsi:type="org.pi4soa.cdl:Interaction" name="Enquiry" operation="makeEnquiry" channelVariable="//@choreographies.0/(a)variableDefinitions.0" relationship="//@typeDefinitions/(a)relationshipTypes.2">
- <exchangeDetails description="This is the exchange details for the request exchange associated with interaction Enquiry" name="EnquiryRequestExchange" type="//@typeDefinitions/(a)informationTypes.5"/>
- </activities>
- <activities xsi:type="org.pi4soa.cdl:While" name="SendRFQToSuppliers">
- <activities xsi:type="org.pi4soa.cdl:Perform" choreography="//@choreographies.0/(a)enclosedChoreographies.1" waitForCompletion="false"/>
- </activities>
- <activities xsi:type="org.pi4soa.cdl:When" name="WhenQuotesReceivedOrTimeout">
- <activities xsi:type="org.pi4soa.cdl:Interaction" name="Enquiry" operation="makeEnquiry" channelVariable="//@choreographies.0/(a)variableDefinitions.0" relationship="//@typeDefinitions/(a)relationshipTypes.2">
- <exchangeDetails description="This is the exchange details for the respond exchange associated with interaction Enquiry" name="EnquiryRespondExchange" type="//@typeDefinitions/(a)informationTypes.10" action="Respond"/>
- </activities>
- </activities>
- <activities xsi:type="org.pi4soa.cdl:Choice">
- <activities xsi:type="org.pi4soa.cdl:Sequence">
- <activities xsi:type="org.pi4soa.cdl:Perform" choreography="//@choreographies.0/(a)enclosedChoreographies.0">
- <bindDetails name="BindBrokerChannel" thisVariable="//@choreographies.0/(a)variableDefinitions.0" thisRole="//@typeDefinitions/(a)roleTypes.1" freeVariable="//@choreographies.0/@enclosedChoreographies.0/(a)variableDefinitions.0" freeRole="//@typeDefinitions/(a)roleTypes.1"/>
- <bindDetails name="BindBrokerChannel" thisVariable="//@choreographies.0/(a)variableDefinitions.0" thisRole="//@typeDefinitions/(a)roleTypes.0" freeVariable="//@choreographies.0/@enclosedChoreographies.0/(a)variableDefinitions.0" freeRole="//@typeDefinitions/(a)roleTypes.0"/>
- </activities>
- </activities>
- <activities xsi:type="org.pi4soa.cdl:Sequence">
- <activities xsi:type="org.pi4soa.cdl:Interaction" name="Cancel" operation="cancel" channelVariable="//@choreographies.0/(a)variableDefinitions.0" relationship="//@typeDefinitions/(a)relationshipTypes.2">
- <exchangeDetails description="This is the exchange details for the request exchange associated with interaction Cancel" name="CancelRequestExchange" type="//@typeDefinitions/(a)informationTypes.1"/>
- </activities>
- </activities>
- </activities>
- </choreographies>
-</org.pi4soa.cdl:Package>
+<?xml version="1.0" encoding="UTF-8"?>
+<org.pi4soa.cdl:Package xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:org.pi4soa.cdl="http:///org/pi4soa/cdl.ecore" description="The choreography description for ESBBroker" name="ESBBroker" author="gary" version="0.2" targetNamespace="http://www.pi4soa.org/ESBBroker">
+ <typeDefinitions>
+ <nameSpaces description="Target Namespace for ESBBroker" prefix="tns" uRI="http://www.pi4soa.org/ESBBroker"/>
+ <nameSpaces description="XML Schema Namespace" prefix="xsd" uRI="http://www.w3.org/2001/XMLSchema"/>
+ <informationTypes description="This is the information type Buy" name="Buy" elementName="buy"/>
+ <informationTypes description="This is the information type Cancel" name="Cancel" elementName="cancel"/>
+ <informationTypes description="This is the information type CreditCheckRequest" name="CreditCheckRequest" elementName="CreditCheckRequest"/>
+ <informationTypes description="This is the information type CreditCheckResponse" name="CreditCheckResponse" elementName="CreditCheckResponse"/>
+ <informationTypes description="This is the information type CreditInvalid" name="CreditInvalid" elementName="creditInvalid"/>
+ <informationTypes description="This is the information type Enquiry" name="Enquiry" typeName="" elementName="enquiry"/>
+ <informationTypes description="This is the information type OrderConfirmRequest" name="OrderConfirmRequest" elementName="orderConfirmRequest"/>
+ <informationTypes description="This is the information type OrderConfirmResponse" name="OrderConfirmResponse" elementName="orderConfirmResponse"/>
+ <informationTypes description="This is the information type OrderRejected" name="OrderRejected" elementName="orderRejected"/>
+ <informationTypes description="This is the information type Quote" name="Quote" elementName="quote"/>
+ <informationTypes description="This is the information type QuoteList" name="QuoteList" elementName="quoteList"/>
+ <informationTypes description="This is the information type RequestForQuote" name="RequestForQuote" elementName="requestForQuote"/>
+ <informationTypes description="This is the information type URIType" name="URIType"/>
+ <tokens description="This is the token URI" name="URI" informationType="//@typeDefinitions/(a)informationTypes.12"/>
+ <roleTypes description="This is the role type Broker" name="Broker">
+ <behaviors description="This is the behavior BrokerBehavior" name="BrokerBehavior"/>
+ </roleTypes>
+ <roleTypes description="This is the role type Buyer" name="Buyer">
+ <behaviors description="This is the behavior BuyerBehavior" name="BuyerBehavior"/>
+ </roleTypes>
+ <roleTypes description="This is the role type CreditAgency" name="CreditAgency">
+ <behaviors description="This is the behavior CreditAgencyBehavior" name="CreditAgencyBehavior"/>
+ </roleTypes>
+ <roleTypes description="This is the role type Supplier" name="Supplier">
+ <behaviors description="This is the behavior SupplierBehavior" name="SupplierBehavior"/>
+ </roleTypes>
+ <relationshipTypes description="Relationship between Broker and CreditAgency" name="BrokerToCreditAgencyRel" firstRoleType="//@typeDefinitions/(a)roleTypes.0" secondRoleType="//@typeDefinitions/(a)roleTypes.2"/>
+ <relationshipTypes description="Relationship between Broker and Supplier" name="BrokerToSupplierRel" firstRoleType="//@typeDefinitions/(a)roleTypes.0" secondRoleType="//@typeDefinitions/(a)roleTypes.3"/>
+ <relationshipTypes description="Relationship between Buyer and Broker" name="BuyerToBrokerRel" firstRoleType="//@typeDefinitions/(a)roleTypes.1" secondRoleType="//@typeDefinitions/(a)roleTypes.0"/>
+ <participantTypes description="This is the participant type Broker" name="Broker" roleTypes="//@typeDefinitions/(a)roleTypes.0">
+ <semanticAnnotations annotation="jboss.overlord.samples.LoanBroker@Broker" name="conversationType"/>
+ </participantTypes>
+ <participantTypes description="This is the participant type Buyer" name="Buyer" roleTypes="//@typeDefinitions/(a)roleTypes.1"/>
+ <participantTypes description="This is the participant type CreditAgency" name="CreditAgency" roleTypes="//@typeDefinitions/(a)roleTypes.2"/>
+ <participantTypes description="This is the participant type Supplier" name="Supplier" roleTypes="//@typeDefinitions/(a)roleTypes.3"/>
+ <channelTypes description="This is the channel type BrokerChannelType" name="BrokerChannelType" referenceToken="//@typeDefinitions/(a)tokens.0" roleType="//@typeDefinitions/(a)roleTypes.0"/>
+ <channelTypes description="This is the channel type CreditAgencyChannelType" name="CreditAgencyChannelType" referenceToken="//@typeDefinitions/(a)tokens.0" roleType="//@typeDefinitions/(a)roleTypes.2"/>
+ <channelTypes description="This is the channel type SupplierChannelType" name="SupplierChannelType" referenceToken="//@typeDefinitions/(a)tokens.0" roleType="//@typeDefinitions/(a)roleTypes.3"/>
+ </typeDefinitions>
+ <choreographies description="Choreography flow for the ESBBroker process" name="ESBBrokerProcess" root="true">
+ <enclosedChoreographies name="CompleteTransaction">
+ <variableDefinitions description="Channel to facilitate interaction to Broker" name="BrokerChannel" type="//@typeDefinitions/(a)channelTypes.0" free="true" roleTypes="//@typeDefinitions/(a)roleTypes.0 //@typeDefinitions/(a)roleTypes.1"/>
+ <variableDefinitions description="Channel to facilitate interaction to CreditAgency" name="CreditAgencyChannel" type="//@typeDefinitions/(a)channelTypes.1"/>
+ <variableDefinitions description="Channel to facilitate interaction to Supplier" name="SupplierChannel" type="//@typeDefinitions/(a)channelTypes.2"/>
+ <activities xsi:type="org.pi4soa.cdl:Interaction" name="Buy" operation="buy" channelVariable="//@choreographies.0/@enclosedChoreographies.0/(a)variableDefinitions.0" relationship="//@typeDefinitions/(a)relationshipTypes.2">
+ <exchangeDetails description="This is the exchange details for the request exchange associated with interaction Buy" name="BuyRequestExchange" type="//@typeDefinitions/(a)informationTypes.0"/>
+ </activities>
+ <activities xsi:type="org.pi4soa.cdl:Interaction" name="CheckCredit" operation="checkCredit" channelVariable="//@choreographies.0/@enclosedChoreographies.0/(a)variableDefinitions.1" relationship="//@typeDefinitions/(a)relationshipTypes.0">
+ <exchangeDetails description="This is the exchange details for the request exchange associated with interaction CheckCredit" name="CheckCreditRequestExchange" type="//@typeDefinitions/(a)informationTypes.2"/>
+ </activities>
+ <activities xsi:type="org.pi4soa.cdl:Choice" description="Evaluate Credit Check Result">
+ <activities xsi:type="org.pi4soa.cdl:Sequence" description="Sufficient Credit">
+ <activities xsi:type="org.pi4soa.cdl:Interaction" name="CheckCreditResponse" operation="checkCredit" channelVariable="//@choreographies.0/@enclosedChoreographies.0/(a)variableDefinitions.1" relationship="//@typeDefinitions/(a)relationshipTypes.0">
+ <exchangeDetails description="This is the exchange details for the respond exchange associated with interaction CheckCreditResponse" name="CheckCreditResponseRespondExchange" type="//@typeDefinitions/(a)informationTypes.3" action="Respond"/>
+ </activities>
+ <activities xsi:type="org.pi4soa.cdl:Interaction" name="ConfirmBooking" operation="confirm" channelVariable="//@choreographies.0/@enclosedChoreographies.0/(a)variableDefinitions.2" relationship="//@typeDefinitions/(a)relationshipTypes.1">
+ <exchangeDetails description="This is the exchange details for the request exchange associated with interaction ConfirmBooking" name="ConfirmBookingRequestExchange" type="//@typeDefinitions/(a)informationTypes.6"/>
+ <exchangeDetails description="This is the exchange details for the request exchange associated with interaction ConfirmBooking" name="ConfirmBookingRequestExchange" type="//@typeDefinitions/(a)informationTypes.7" action="Respond"/>
+ </activities>
+ <activities xsi:type="org.pi4soa.cdl:Interaction" name="Buy" operation="buy" channelVariable="//@choreographies.0/@enclosedChoreographies.0/(a)variableDefinitions.0" relationship="//@typeDefinitions/(a)relationshipTypes.2">
+ <exchangeDetails description="This is the exchange details for the respond exchange associated with interaction Buy" name="BuyRespondExchange" type="//@typeDefinitions/(a)informationTypes.7" action="Respond" faultName=""/>
+ </activities>
+ </activities>
+ <activities xsi:type="org.pi4soa.cdl:Sequence" description="Insufficient Credit">
+ <activities xsi:type="org.pi4soa.cdl:Interaction" name="CheckCreditFailed" operation="checkCredit" channelVariable="//@choreographies.0/@enclosedChoreographies.0/(a)variableDefinitions.1" relationship="//@typeDefinitions/(a)relationshipTypes.0">
+ <exchangeDetails description="This is the exchange details for the respond exchange associated with interaction CheckCreditFailed" name="CheckCreditFailedRespondExchange" type="//@typeDefinitions/(a)informationTypes.4" action="Respond" faultName="invalidCredit"/>
+ </activities>
+ <activities xsi:type="org.pi4soa.cdl:Interaction" name="Buy" operation="buy" channelVariable="//@choreographies.0/@enclosedChoreographies.0/(a)variableDefinitions.0" relationship="//@typeDefinitions/(a)relationshipTypes.2">
+ <exchangeDetails description="This is the exchange details for the respond exchange associated with interaction Buy" name="BuyRespondExchange" type="//@typeDefinitions/(a)informationTypes.8" action="Respond" faultName="rejected"/>
+ </activities>
+ </activities>
+ </activities>
+ </enclosedChoreographies>
+ <enclosedChoreographies name="RequestForQuote">
+ <variableDefinitions description="Channel to facilitate interaction to Supplier" name="SupplierChannel" type="//@typeDefinitions/(a)channelTypes.2"/>
+ <activities xsi:type="org.pi4soa.cdl:Interaction" name="RFQ" operation="getQuote" channelVariable="//@choreographies.0/@enclosedChoreographies.1/(a)variableDefinitions.0" relationship="//@typeDefinitions/(a)relationshipTypes.1">
+ <exchangeDetails description="This is the exchange details for the request exchange associated with interaction RFQ" name="RFQRequestExchange" type="//@typeDefinitions/(a)informationTypes.11"/>
+ <exchangeDetails description="This is the exchange details for the respond exchange associated with interaction RFQ" name="RFQRespondExchange" type="//@typeDefinitions/(a)informationTypes.9" action="Respond"/>
+ </activities>
+ </enclosedChoreographies>
+ <variableDefinitions description="Channel to facilitate interaction to Broker" name="BrokerChannel" type="//@typeDefinitions/(a)channelTypes.0" roleTypes="//@typeDefinitions/(a)roleTypes.0 //@typeDefinitions/(a)roleTypes.1"/>
+ <activities xsi:type="org.pi4soa.cdl:Interaction" name="Enquiry" operation="makeEnquiry" channelVariable="//@choreographies.0/(a)variableDefinitions.0" relationship="//@typeDefinitions/(a)relationshipTypes.2">
+ <exchangeDetails description="This is the exchange details for the request exchange associated with interaction Enquiry" name="EnquiryRequestExchange" type="//@typeDefinitions/(a)informationTypes.5"/>
+ </activities>
+ <activities xsi:type="org.pi4soa.cdl:While" name="SendRFQToSuppliers">
+ <activities xsi:type="org.pi4soa.cdl:Perform" choreography="//@choreographies.0/(a)enclosedChoreographies.1" waitForCompletion="false"/>
+ </activities>
+ <activities xsi:type="org.pi4soa.cdl:When" name="WhenQuotesReceivedOrTimeout">
+ <activities xsi:type="org.pi4soa.cdl:Interaction" name="Enquiry" operation="makeEnquiry" channelVariable="//@choreographies.0/(a)variableDefinitions.0" relationship="//@typeDefinitions/(a)relationshipTypes.2">
+ <exchangeDetails description="This is the exchange details for the respond exchange associated with interaction Enquiry" name="EnquiryRespondExchange" type="//@typeDefinitions/(a)informationTypes.10" action="Respond"/>
+ </activities>
+ </activities>
+ <activities xsi:type="org.pi4soa.cdl:Choice">
+ <activities xsi:type="org.pi4soa.cdl:Sequence">
+ <activities xsi:type="org.pi4soa.cdl:Perform" choreography="//@choreographies.0/(a)enclosedChoreographies.0">
+ <bindDetails name="BindBrokerChannel" thisVariable="//@choreographies.0/(a)variableDefinitions.0" thisRole="//@typeDefinitions/(a)roleTypes.1" freeVariable="//@choreographies.0/@enclosedChoreographies.0/(a)variableDefinitions.0" freeRole="//@typeDefinitions/(a)roleTypes.1"/>
+ <bindDetails name="BindBrokerChannel" thisVariable="//@choreographies.0/(a)variableDefinitions.0" thisRole="//@typeDefinitions/(a)roleTypes.0" freeVariable="//@choreographies.0/@enclosedChoreographies.0/(a)variableDefinitions.0" freeRole="//@typeDefinitions/(a)roleTypes.0"/>
+ </activities>
+ </activities>
+ <activities xsi:type="org.pi4soa.cdl:Sequence">
+ <activities xsi:type="org.pi4soa.cdl:Interaction" name="Cancel" operation="cancel" channelVariable="//@choreographies.0/(a)variableDefinitions.0" relationship="//@typeDefinitions/(a)relationshipTypes.2">
+ <exchangeDetails description="This is the exchange details for the request exchange associated with interaction Cancel" name="CancelRequestExchange" type="//@typeDefinitions/(a)informationTypes.1"/>
+ </activities>
+ </activities>
+ </activities>
+ </choreographies>
+</org.pi4soa.cdl:Package>
15 years, 9 months
Overlord SVN: r192 - in cdl/trunk/samples: jbossesb and 2 other directories.
by overlord-commits@lists.jboss.org
Author: jeff.yuchang
Date: 2008-07-21 07:34:33 -0400 (Mon, 21 Jul 2008)
New Revision: 192
Modified:
cdl/trunk/samples/jbossesb/README.txt
cdl/trunk/samples/jbossesb/broker/pom.xml
cdl/trunk/samples/jbossesb/purchasing/pom.xml
cdl/trunk/samples/pom.xml
Log:
* Extract the common attribte to the parent pom.xml, so that it can be reused among its child projects.
Modified: cdl/trunk/samples/jbossesb/README.txt
===================================================================
--- cdl/trunk/samples/jbossesb/README.txt 2008-07-18 14:18:51 UTC (rev 191)
+++ cdl/trunk/samples/jbossesb/README.txt 2008-07-21 11:34:33 UTC (rev 192)
@@ -17,8 +17,8 @@
Settings required to edit before running:
========================================
-File: purchasing/pom.xml, broker/pom.xml for purchasing example and broker's respectively.
-- Update the "deploy.dir" variable to your JBossAS server directory.
+File: $samples/pom.xml
+- Update the "deploy.dir" property value to your JBossAS server directory.
- Before jbossesb-rosetta.jar and jbossesb-config-model.jar get published in jboss maven repository, you need to install these two artifacts into
your local repository by using following commands:
Modified: cdl/trunk/samples/jbossesb/broker/pom.xml
===================================================================
--- cdl/trunk/samples/jbossesb/broker/pom.xml 2008-07-18 14:18:51 UTC (rev 191)
+++ cdl/trunk/samples/jbossesb/broker/pom.xml 2008-07-21 11:34:33 UTC (rev 192)
@@ -15,13 +15,7 @@
<version>1.0-SNAPSHOT</version>
</parent>
- <properties>
- <hibernate-commons-annotations>3.0.0.ga</hibernate-commons-annotations>
- <hibernate-tools-version>3.2.0.ga</hibernate-tools-version>
- <hsqldb-version>1.8.0.7</hsqldb-version>
- </properties>
-
- <dependencies>
+ <dependencies>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
@@ -95,7 +89,6 @@
<phase>install</phase>
<configuration>
<tasks>
- <property name="deploy.dir" value="/var/local/jboss/server/default/deploy" />
<copy file="target/broker.esb" todir="${deploy.dir}" overwrite="true" />
</tasks>
</configuration>
Modified: cdl/trunk/samples/jbossesb/purchasing/pom.xml
===================================================================
--- cdl/trunk/samples/jbossesb/purchasing/pom.xml 2008-07-18 14:18:51 UTC (rev 191)
+++ cdl/trunk/samples/jbossesb/purchasing/pom.xml 2008-07-21 11:34:33 UTC (rev 192)
@@ -15,12 +15,6 @@
<version>1.0-SNAPSHOT</version>
</parent>
- <properties>
- <hibernate-commons-annotations>3.0.0.ga</hibernate-commons-annotations>
- <hibernate-tools-version>3.2.0.ga</hibernate-tools-version>
- <hsqldb-version>1.8.0.7</hsqldb-version>
- </properties>
-
<dependencies>
<dependency>
<groupId>log4j</groupId>
@@ -101,7 +95,6 @@
<phase>install</phase>
<configuration>
<tasks>
- <property name="deploy.dir" value="/var/local/jboss/server/default/deploy" />
<copy file="target/purchasing.esb" todir="${deploy.dir}" overwrite="true" />
</tasks>
</configuration>
Modified: cdl/trunk/samples/pom.xml
===================================================================
--- cdl/trunk/samples/pom.xml 2008-07-18 14:18:51 UTC (rev 191)
+++ cdl/trunk/samples/pom.xml 2008-07-21 11:34:33 UTC (rev 192)
@@ -15,6 +15,15 @@
<version>1.0-SNAPSHOT</version>
</parent>
+ <properties>
+ <deploy.dir>/var/local/jboss/server/default/deploy</deploy.dir>
+ <hibernate-commons-annotations>3.0.0.ga</hibernate-commons-annotations>
+ <hibernate-tools-version>3.2.0.ga</hibernate-tools-version>
+ <hsqldb-version>1.8.0.7</hsqldb-version>
+
+ </properties>
+
+
<modules>
<module>jbossesb/purchasing</module>
<module>jbossesb/broker</module>
15 years, 9 months