Overlord SVN: r76 - in trunk/cdl/samples: jbossesb/broker and 4 other directories.
by overlord-commits@lists.jboss.org
Author: jeff.yuchang
Date: 2008-06-29 11:00:01 -0400 (Sun, 29 Jun 2008)
New Revision: 76
Added:
trunk/cdl/samples/jbossesb/broker/src/main/java/org/jboss/soa/overlord/samples/jbossesb/loan/broker/Confirmation.java
trunk/cdl/samples/jbossesb/broker/src/main/java/org/jboss/soa/overlord/samples/jbossesb/loan/broker/Supplier.java
trunk/cdl/samples/jbossesb/broker/src/main/java/org/jboss/soa/overlord/samples/jbossesb/loan/creditAgency/
trunk/cdl/samples/jbossesb/broker/src/main/java/org/jboss/soa/overlord/samples/jbossesb/loan/creditAgency/CreditAgency.java
trunk/cdl/samples/jbossesb/broker/src/main/java/org/jboss/soa/overlord/samples/jbossesb/loan/supplier/
Modified:
trunk/cdl/samples/jbossesb/broker/pom.xml
trunk/cdl/samples/jbossesb/broker/src/main/java/org/jboss/soa/overlord/samples/jbossesb/loan/broker/BrokerMain.java
trunk/cdl/samples/jbossesb/broker/src/main/java/org/jboss/soa/overlord/samples/jbossesb/loan/broker/CompleteTransactionMain.java
trunk/cdl/samples/jbossesb/broker/src/main/java/org/jboss/soa/overlord/samples/jbossesb/loan/broker/Quote.java
trunk/cdl/samples/jbossesb/broker/src/main/resources/META-INF/jboss-esb.xml
trunk/cdl/samples/pom.xml
Log:
* update broker example.
Modified: trunk/cdl/samples/jbossesb/broker/pom.xml
===================================================================
--- trunk/cdl/samples/jbossesb/broker/pom.xml 2008-06-27 15:47:46 UTC (rev 75)
+++ trunk/cdl/samples/jbossesb/broker/pom.xml 2008-06-29 15:00:01 UTC (rev 76)
@@ -10,7 +10,7 @@
<url>http://www.jboss.org/overlord</url>
<parent>
- <groupId>org.jboss.soa.overlord</groupId>
+ <groupId>org.jboss.soa.overlord.cdl</groupId>
<artifactId>samples</artifactId>
<version>1.0-SNAPSHOT</version>
</parent>
Modified: trunk/cdl/samples/jbossesb/broker/src/main/java/org/jboss/soa/overlord/samples/jbossesb/loan/broker/BrokerMain.java
===================================================================
--- trunk/cdl/samples/jbossesb/broker/src/main/java/org/jboss/soa/overlord/samples/jbossesb/loan/broker/BrokerMain.java 2008-06-27 15:47:46 UTC (rev 75)
+++ trunk/cdl/samples/jbossesb/broker/src/main/java/org/jboss/soa/overlord/samples/jbossesb/loan/broker/BrokerMain.java 2008-06-29 15:00:01 UTC (rev 76)
@@ -21,20 +21,41 @@
import java.util.List;
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.GeneratedValue;
+import javax.persistence.Id;
+import javax.persistence.JoinColumn;
+import javax.persistence.OneToMany;
+import javax.persistence.OneToOne;
+import javax.persistence.Table;
+
import org.jboss.soa.overlord.conversation.HibernateObject;
import org.jboss.soa.overlord.jbossesb.actions.Service;
@Service(name="{http://www.jboss.org/overlord/loanBroker}Broker", conversationType="Broker", root=true)
+@Entity
+@Table(name="T_BROKER")
public class BrokerMain implements HibernateObject{
private static final long serialVersionUID = 11114L;
+ @Id @GeneratedValue
+ @Column(name="ID")
private long id;
- private List<Quote> quotes;
+ @Column(name="TRANSACTION_ID")
+ @OneToOne(mappedBy="TRANSACTION_ID")
+ private CompleteTransactionMain transaction;
- private CompleteTransactionMain transaction;
-
+ @OneToMany
+ @JoinColumn(name="supplier_ID")
+ private List<Supplier> suppliers;
+
+ public BrokerMain() {
+ initSuppliers();
+ }
+
public long getId() {
return this.id;
}
@@ -43,14 +64,6 @@
this.id = id;
}
- public List<Quote> getQuotes() {
- return quotes;
- }
-
- public void setQuotes(List<Quote> quotes) {
- this.quotes = quotes;
- }
-
public CompleteTransactionMain getTransaction() {
return transaction;
}
@@ -58,7 +71,26 @@
public void setTransaction(CompleteTransactionMain transaction) {
this.transaction = transaction;
}
+
+ public List<Supplier> getSuppliers() {
+ return suppliers;
+ }
+
+ public void setSuppliers(List<Supplier> suppliers) {
+ this.suppliers = suppliers;
+ }
+ protected void initSuppliers() {
+ for(int i =1; i< 5; i++) {
+ Supplier supplier = new Supplier();
+ supplier.setServiceCategory("ESBBroker.Suppliers");
+ supplier.setServiceName("supplier" + i);
+ suppliers.add(supplier);
+ }
+ }
+
+
+
}
Modified: trunk/cdl/samples/jbossesb/broker/src/main/java/org/jboss/soa/overlord/samples/jbossesb/loan/broker/CompleteTransactionMain.java
===================================================================
--- trunk/cdl/samples/jbossesb/broker/src/main/java/org/jboss/soa/overlord/samples/jbossesb/loan/broker/CompleteTransactionMain.java 2008-06-27 15:47:46 UTC (rev 75)
+++ trunk/cdl/samples/jbossesb/broker/src/main/java/org/jboss/soa/overlord/samples/jbossesb/loan/broker/CompleteTransactionMain.java 2008-06-29 15:00:01 UTC (rev 76)
@@ -19,14 +19,27 @@
*/
package org.jboss.soa.overlord.samples.jbossesb.loan.broker;
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.GeneratedValue;
+import javax.persistence.Id;
+import javax.persistence.OneToOne;
+import javax.persistence.Table;
+
import org.jboss.soa.overlord.conversation.HibernateObject;
+@Entity
+@Table(name="T_COMPLETE_TRANSACTION")
public class CompleteTransactionMain implements HibernateObject {
private static final long serialVersionUID = 111313L;
+ @Id @GeneratedValue
+ @Column(name="ID")
private long id;
+ @OneToOne(mappedBy="quote")
+ @Column(name="quote")
private Quote confirmedQuote;
public long getId() {
Added: trunk/cdl/samples/jbossesb/broker/src/main/java/org/jboss/soa/overlord/samples/jbossesb/loan/broker/Confirmation.java
===================================================================
--- trunk/cdl/samples/jbossesb/broker/src/main/java/org/jboss/soa/overlord/samples/jbossesb/loan/broker/Confirmation.java (rev 0)
+++ trunk/cdl/samples/jbossesb/broker/src/main/java/org/jboss/soa/overlord/samples/jbossesb/loan/broker/Confirmation.java 2008-06-29 15:00:01 UTC (rev 76)
@@ -0,0 +1,48 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2008, JBoss Inc., 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.
+ *
+ * (C) 2008,
+ */
+package org.jboss.soa.overlord.samples.jbossesb.loan.broker;
+
+import javax.persistence.Entity;
+import javax.persistence.Table;
+
+import org.jboss.soa.overlord.conversation.HibernateObject;
+
+/**
+ * @author jeffyu
+ *
+ */
+@Entity
+@Table(name="T_CONFIRMATION")
+public class Confirmation implements HibernateObject {
+
+
+ private static final long serialVersionUID = 115L;
+
+ private long id;
+
+ public long getId() {
+ return this.id;
+ }
+
+ public void setId(long id) {
+ this.id = id;
+ }
+
+}
Modified: trunk/cdl/samples/jbossesb/broker/src/main/java/org/jboss/soa/overlord/samples/jbossesb/loan/broker/Quote.java
===================================================================
--- trunk/cdl/samples/jbossesb/broker/src/main/java/org/jboss/soa/overlord/samples/jbossesb/loan/broker/Quote.java 2008-06-27 15:47:46 UTC (rev 75)
+++ trunk/cdl/samples/jbossesb/broker/src/main/java/org/jboss/soa/overlord/samples/jbossesb/loan/broker/Quote.java 2008-06-29 15:00:01 UTC (rev 76)
@@ -23,6 +23,7 @@
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
+import javax.persistence.OneToOne;
import javax.persistence.Table;
import org.jboss.soa.overlord.conversation.HibernateObject;
@@ -38,7 +39,8 @@
private long id;
@Column(name="SUPPLIER")
- private String supplier;
+ @OneToOne(mappedBy="SUPPLIER")
+ private Supplier supplier;
@Column(name="QUOTE_VALUE")
private int quoteValue;
@@ -51,11 +53,11 @@
this.id = id;
}
- public String getSupplier() {
+ public Supplier getSupplier() {
return supplier;
}
- public void setSupplier(String supplier) {
+ public void setSupplier(Supplier supplier) {
this.supplier = supplier;
}
Added: trunk/cdl/samples/jbossesb/broker/src/main/java/org/jboss/soa/overlord/samples/jbossesb/loan/broker/Supplier.java
===================================================================
--- trunk/cdl/samples/jbossesb/broker/src/main/java/org/jboss/soa/overlord/samples/jbossesb/loan/broker/Supplier.java (rev 0)
+++ trunk/cdl/samples/jbossesb/broker/src/main/java/org/jboss/soa/overlord/samples/jbossesb/loan/broker/Supplier.java 2008-06-29 15:00:01 UTC (rev 76)
@@ -0,0 +1,75 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2008, JBoss Inc., 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.
+ *
+ * (C) 2008,
+ */
+package org.jboss.soa.overlord.samples.jbossesb.loan.broker;
+
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.GeneratedValue;
+import javax.persistence.Id;
+import javax.persistence.Table;
+
+import org.jboss.soa.overlord.conversation.HibernateObject;
+
+/**
+ * @author jeffyu
+ *
+ */
+@Entity
+@Table(name="T_SUPPLIER")
+public class Supplier implements HibernateObject {
+
+ private static final long serialVersionUID = 14L;
+
+ @Id @GeneratedValue
+ @Column(name="ID")
+ private long id;
+
+ @Column(name="SERVICE_CATEGORY")
+ private String serviceCategory;
+
+ @Column(name="SERVICE_NAME")
+ private String serviceName;
+
+ public long getId() {
+ return this.id;
+ }
+
+ public void setId(long id) {
+ this.id = id;
+ }
+
+ public String getServiceCategory() {
+ return serviceCategory;
+ }
+
+ public void setServiceCategory(String serviceCategory) {
+ this.serviceCategory = serviceCategory;
+ }
+
+ public String getServiceName() {
+ return serviceName;
+ }
+
+ public void setServiceName(String serviceName) {
+ this.serviceName = serviceName;
+ }
+
+
+}
Added: trunk/cdl/samples/jbossesb/broker/src/main/java/org/jboss/soa/overlord/samples/jbossesb/loan/creditAgency/CreditAgency.java
===================================================================
--- trunk/cdl/samples/jbossesb/broker/src/main/java/org/jboss/soa/overlord/samples/jbossesb/loan/creditAgency/CreditAgency.java (rev 0)
+++ trunk/cdl/samples/jbossesb/broker/src/main/java/org/jboss/soa/overlord/samples/jbossesb/loan/creditAgency/CreditAgency.java 2008-06-29 15:00:01 UTC (rev 76)
@@ -0,0 +1,55 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2008, JBoss Inc., 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.
+ *
+ * (C) 2008,
+ */
+package org.jboss.soa.overlord.samples.jbossesb.loan.creditAgency;
+
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.GeneratedValue;
+import javax.persistence.Id;
+import javax.persistence.Table;
+
+import org.jboss.soa.overlord.conversation.HibernateObject;
+import org.jboss.soa.overlord.jbossesb.actions.Service;
+
+/**
+ * @author jeffyu
+ *
+ */
+@Entity
+@Table(name="T_CREDIT_AGENCY")
+@Service(conversationType="creditAgency", name="{http://www.jboss.org/overlord/loan/}creditAgency", root=true)
+public class CreditAgency implements HibernateObject {
+
+ private static final long serialVersionUID = 2111L;
+
+ @Id @GeneratedValue
+ @Column(name="ID")
+ private long id;
+
+ public long getId() {
+ return this.id;
+ }
+
+
+ public void setId(long id) {
+ this.id = id;
+ }
+
+}
Modified: trunk/cdl/samples/jbossesb/broker/src/main/resources/META-INF/jboss-esb.xml
===================================================================
--- trunk/cdl/samples/jbossesb/broker/src/main/resources/META-INF/jboss-esb.xml 2008-06-27 15:47:46 UTC (rev 75)
+++ trunk/cdl/samples/jbossesb/broker/src/main/resources/META-INF/jboss-esb.xml 2008-06-29 15:00:01 UTC (rev 76)
@@ -102,11 +102,11 @@
<!-- To be done -->
</listeners>
<actions mep="OneWay">
- <action class="org.jboss.soa.esb.actions.conversation.CreateSessionAction"
+ <action class="org.jboss.soa.overlord.jbossesb.actions.CreateSessionAction"
process="process" name="s1-1">
<property name="session" value="org.jboss.soa.overlord.samples.jbossesb.loan.broker.BrokerMain" />
</action>
- <action class="org.jboss.soa.esb.actions.conversation.ReceiveMessageAction"
+ <action class="org.jboss.soa.overlord.jbossesb.actions.ReceiveMessageAction"
process="process" name="s1-2">
<property name="operation" value="makeEnquiry" />
<property name="messageType" value="enquiry" />
@@ -116,6 +116,12 @@
<token name="id" locator="//@id" />
</identity>
</property>
+ </action>
+ <action class="org.jboss.soa.overlord.jbossesb.actions.ScheduleStateAction"
+ process="process" name="s1-3">
+ <property name="serviceCategory" value="ESBBroker.BrokerParticipant" />
+ <property name="serviceName" value="ESBBrokerProcess.main.1" />
+ <property name="immediate" value="true" />
</action>
</actions>
</service>
@@ -136,9 +142,8 @@
<actions mep="OneWay">
<action class="org.jboss.soa.esb.actions.conversation.WhileAction"
process="process" name="s2-1">
- <property name="session" value="org.jboss.soa.esb.samples.broker.BrokerMain" />
<property name="paths">
- <while decision-method="isCreditValid"
+ <while decision-method="sendAllRequests"
service-category="ESBBroker.BrokerParticipant"
service-name="ESBBrokerProcess.main.2"
immediate="true" />
@@ -175,9 +180,8 @@
to-variable="supplier" />
</property>
</action>
- <action class="org.jboss.soa.esb.actions.conversation.ScheduleStateAction"
+ <action class="org.jboss.soa.overlord.jbossesb.actions.ScheduleStateAction"
process="process" name="s3-2">
- <property name="session" value="org.jboss.soa.esb.samples.broker.BrokerMain" />
<property name="serviceCategory" value="ESBBroker.BrokerParticipant" />
<property name="serviceName" value="ESBBrokerProcess.main.1" />
<property name="immediate" value="true" />
@@ -355,7 +359,7 @@
<actions mep="OneWay">
<action class="org.jboss.soa.esb.actions.conversation.CreateSessionAction"
process="process" name="s8-1">
- <property name="session" value="org.jboss.soa.esb.samples.broker.RequestForQuoteMain" />
+ <property name="session" value="org.jboss.soa.overlord.samples.jbossesb.loan.broker.Quote" />
</action>
<!-- NOTE: the service being sent the message is obtained by
@@ -581,5 +585,5 @@
</action>
</actions>
</service>
-
+ </services>
</jbossesb>
Modified: trunk/cdl/samples/pom.xml
===================================================================
--- trunk/cdl/samples/pom.xml 2008-06-27 15:47:46 UTC (rev 75)
+++ trunk/cdl/samples/pom.xml 2008-06-29 15:00:01 UTC (rev 76)
@@ -16,7 +16,8 @@
</parent>
<modules>
- <!--module>jbossesb/purchasing/system</module-->
+ <module>jbossesb/purchasing/system</module>
+ <module>jbossesb/broker</module>
</modules>
<build>
15 years, 10 months
Overlord SVN: r75 - trunk/cdl/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-06-27 11:47:46 -0400 (Fri, 27 Jun 2008)
New Revision: 75
Added:
trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/PerformAction.java
Modified:
trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/Messages.properties
trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/ScheduleStateAction.java
Log:
Support PerformAction.
Modified: trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/Messages.properties
===================================================================
--- trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/Messages.properties 2008-06-26 17:39:18 UTC (rev 74)
+++ trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/Messages.properties 2008-06-27 15:47:46 UTC (rev 75)
@@ -17,5 +17,6 @@
# */
_NOT_FOUND_BUSINESS_OBJECT_TYPE=Business object type '{0}' could not be found
+_NOT_FOUND_PERFORM_CREATE_SESSION=Perform action can only invoke a service descriptor that starts with a CreateSessionAction
_NOT_FOUND_SERVICE_DESCRIPTOR=Service descriptor for category '{0}' and name '{1}' not found
_MUST_BE_FIRST_ACTION='{0}' action must be first in the service descriptor
\ No newline at end of file
Added: trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/PerformAction.java
===================================================================
--- trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/PerformAction.java (rev 0)
+++ trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/PerformAction.java 2008-06-27 15:47:46 UTC (rev 75)
@@ -0,0 +1,128 @@
+/*
+ * 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.actions;
+
+import org.jboss.tools.overlord.jbossesb.model.ConversionContext;
+import org.jboss.tools.overlord.jbossesb.model.ESBAction;
+import org.jboss.tools.overlord.jbossesb.model.ESBLink;
+import org.jboss.tools.overlord.jbossesb.model.ESBService;
+import org.scribble.model.*;
+import org.scribble.conversation.model.*;
+
+/**
+ * The model component for the 'WhenAction'.
+ *
+ * @author gary
+ */
+public class PerformAction extends ESBAction {
+
+ private static final String SERVICE_NAME = "serviceName";
+ private static final String SERVICE_CATEGORY = "serviceCategory";
+ private static final String JOIN_SERVICE_NAME = "joinServiceName";
+ private static final String JOIN_SERVICE_CATEGORY = "joinServiceCategory";
+
+ /**
+ * This method initializes the links with the ESB service descriptors
+ * identified in each path of the action.
+ */
+ @Override
+ protected void initializeLinks() {
+ super.initializeLinks();
+
+ m_category=getPropertyValue(SERVICE_CATEGORY);
+ m_name=getPropertyValue(SERVICE_NAME);
+
+ m_service=getService().getModel().getService(m_category, m_name);
+
+ getLinks().add(new ESBLink(m_category, m_name, m_service, true));
+
+ m_joinCategory=getPropertyValue(JOIN_SERVICE_CATEGORY);
+ m_joinName=getPropertyValue(JOIN_SERVICE_NAME);
+
+ if (m_joinCategory != null && m_joinName != null) {
+ m_joinService=getService().getModel().getService(m_joinCategory, m_joinName);
+
+ getLinks().add(new ESBLink(m_joinCategory, m_joinName, m_joinService, true));
+ }
+ }
+
+ /**
+ * 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) {
+ super.validate(l);
+
+ // Check if performed state starts with a create session action
+ if (m_service != null) {
+
+ if (m_service.getActions().size() == 0 ||
+ m_service.getActions().get(0).getActionClass().
+ endsWith("CreateSessionAction") == false) {
+ l.error(this, org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.jbossesb.model.actions.Messages"),
+ "_NOT_FOUND_PERFORM_CREATE_SESSION",
+ new String[]{}), null);
+ }
+ }
+ }
+
+ /**
+ * This method converts the ESB action into an equivalent
+ * behavioural description for conformance checking.
+ *
+ * @param activities The list of activities that will contain
+ * the converted action(s)
+ * @param context The conversion context
+ */
+ @Override
+ public void convert(java.util.List<Activity> activities,
+ ConversionContext context) {
+
+ Run elem=new Run();
+ activities.add(elem);
+
+ elem.derivedFrom(this);
+
+ Conversation definition=new Conversation();
+
+ elem.setInlineDefinition(definition);
+
+ if (m_service != null) {
+ // TODO: May need to be separate definition, in case the
+ // same state is called from a number of different
+ // places
+ m_service.convert(definition.getBlock().getContents(), context);
+ }
+
+ if (m_joinService != null) {
+ m_joinService.convert(activities, context);
+ }
+ }
+
+ private String m_category=null;
+ private String m_name=null;
+ private ESBService m_service=null;
+ private String m_joinCategory=null;
+ private String m_joinName=null;
+ private ESBService m_joinService=null;
+}
Modified: trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/ScheduleStateAction.java
===================================================================
--- trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/ScheduleStateAction.java 2008-06-26 17:39:18 UTC (rev 74)
+++ trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/ScheduleStateAction.java 2008-06-27 15:47:46 UTC (rev 75)
@@ -30,6 +30,10 @@
*/
public class ScheduleStateAction extends ESBAction {
+ private static final String IMMEDIATE = "immediate";
+ private static final String SERVICE_NAME = "serviceName";
+ private static final String SERVICE_CATEGORY = "serviceCategory";
+
/**
* This method initializes the links with the ESB service descriptors
* identified in each path of the action.
@@ -38,9 +42,9 @@
protected void initializeLinks() {
super.initializeLinks();
- String serviceCategory=getPropertyValue("serviceCategory");
- String serviceName=getPropertyValue("serviceName");
- String immediate=getPropertyValue("immediate");
+ String serviceCategory=getPropertyValue(SERVICE_CATEGORY);
+ String serviceName=getPropertyValue(SERVICE_NAME);
+ String immediate=getPropertyValue(IMMEDIATE);
m_service=getService().getModel().getService(serviceCategory, serviceName);
15 years, 10 months
Overlord SVN: r74 - in trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model: actions and 1 other directory.
by overlord-commits@lists.jboss.org
Author: objectiser
Date: 2008-06-26 13:39:18 -0400 (Thu, 26 Jun 2008)
New Revision: 74
Modified:
trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/ESBLanguageModel.java
trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/ParallelAction.java
trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/WhenAction.java
trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/WhileAction.java
Log:
Modified: trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/ESBLanguageModel.java
===================================================================
--- trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/ESBLanguageModel.java 2008-06-26 13:02:35 UTC (rev 73)
+++ trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/ESBLanguageModel.java 2008-06-26 17:39:18 UTC (rev 74)
@@ -202,7 +202,7 @@
String str=new String(os.toByteArray());
- System.out.println("EXPORTED TEXT:");
+ System.out.println("EXPORTED JBOSS-ESB TEXT:");
System.out.println(str);
}
} catch(Exception e) {
Modified: trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/ParallelAction.java
===================================================================
--- trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/ParallelAction.java 2008-06-26 13:02:35 UTC (rev 73)
+++ trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/ParallelAction.java 2008-06-26 17:39:18 UTC (rev 74)
@@ -51,18 +51,32 @@
org.w3c.dom.Node n=nl.item(i);
- if (n instanceof org.w3c.dom.Element &&
- (n.getNodeName().equals(PATH) ||
- n.getNodeName().equals(JOIN))) {
- String category=((org.w3c.dom.Element)n).getAttribute(SERVICE_CATEGORY);
- String name=((org.w3c.dom.Element)n).getAttribute(SERVICE_NAME);
-
- // Lookup service associated with category and name
- ESBService service=getService().getModel().getService(category, name);
-
- // Initialize link, even if service is null - this will be
- // reported as a validation error later
- getLinks().add(new ESBLink(category, name, service, true));
+ if (n instanceof org.w3c.dom.Element) {
+ if (n.getNodeName().equals(PATH)) {
+ String category=((org.w3c.dom.Element)n).getAttribute(SERVICE_CATEGORY);
+ String name=((org.w3c.dom.Element)n).getAttribute(SERVICE_NAME);
+
+ // Lookup service associated with category and name
+ ESBService service=getService().getModel().getService(category, name);
+
+ // Initialize link, even if service is null - this will be
+ // reported as a validation error later
+ getLinks().add(new ESBLink(category, name, service, true));
+
+ if (service != null) {
+ m_services.add(service);
+ }
+ } else if (n.getNodeName().equals(JOIN)) {
+ m_joinCategory=((org.w3c.dom.Element)n).getAttribute(SERVICE_CATEGORY);
+ m_joinName=((org.w3c.dom.Element)n).getAttribute(SERVICE_NAME);
+
+ // Lookup service associated with category and name
+ m_joinService=getService().getModel().getService(m_joinCategory, m_joinName);
+
+ // Initialize link, even if service is null - this will be
+ // reported as a validation error later
+ getLinks().add(new ESBLink(m_joinCategory, m_joinName, m_joinService, true));
+ }
}
}
}
@@ -78,51 +92,45 @@
@Override
public void convert(java.util.List<Activity> activities,
ConversionContext context) {
-
- org.w3c.dom.NodeList nl=getPropertyChildNodes(PATHS);
-
+
Parallel parallel=new Parallel();
activities.add(parallel);
- for (int i=0; i < nl.getLength(); i++) {
+ parallel.derivedFrom(this);
+
+ if (m_joinService != null) {
+ context.markJoin(m_joinService);
+ }
+
+ for (int i=0; i < m_services.size(); i++) {
+ Block block=new Block();
- org.w3c.dom.Node n=nl.item(i);
+ ESBService service=m_services.get(i);
- if (n instanceof org.w3c.dom.Element) {
- if (n.getNodeName().equals(PATH)) {
- String category=((org.w3c.dom.Element)n).getAttribute(SERVICE_CATEGORY);
- String name=((org.w3c.dom.Element)n).getAttribute(SERVICE_NAME);
-
- Block block=new Block();
-
- ESBService service=getService().getModel().getService(category, name);
-
- if (service != null) {
- service.convert(block.getContents(), context);
- }
-
- if (block.getContents().size() > 0) {
- parallel.getBlocks().add(block);
- }
- } else if (n.getNodeName().equals(JOIN)) {
- String category=((org.w3c.dom.Element)n).getAttribute(SERVICE_CATEGORY);
- String name=((org.w3c.dom.Element)n).getAttribute(SERVICE_NAME);
-
- ESBService service=getService().getModel().getService(category, name);
-
- if (service != null) {
- // Join activities should be added after the
- // parallel construct
- service.convert(activities, context);
- }
- }
+ if (service != null) {
+ service.convert(block.getContents(), context);
}
+
+ // TODO: Only temporary check while conformance
+ // check does not handle
+ if (block.getContents().size() > 0) {
+ parallel.getBlocks().add(block);
+ }
}
-
- // Only add parallel activity if it has paths
+
+ // TODO: Only temporary check while conformance
+ // check does not handle
if (parallel.getBlocks().size() == 0) {
activities.remove(parallel);
}
+
+ if (m_joinService != null) {
+ m_joinService.convert(activities, context);
+ }
}
+ private java.util.List<ESBService> m_services=new java.util.Vector<ESBService>();
+ private String m_joinCategory=null;
+ private String m_joinName=null;
+ private ESBService m_joinService=null;
}
Modified: trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/WhenAction.java
===================================================================
--- trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/WhenAction.java 2008-06-26 13:02:35 UTC (rev 73)
+++ trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/WhenAction.java 2008-06-26 17:39:18 UTC (rev 74)
@@ -129,10 +129,6 @@
}
}
- if (elem.getConditionalBlocks().size() == 0) {
- activities.remove(elem);
- }
-
if (m_joinService != null) {
m_joinService.convert(activities, context);
}
Modified: trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/WhileAction.java
===================================================================
--- trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/WhileAction.java 2008-06-26 13:02:35 UTC (rev 73)
+++ trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/WhileAction.java 2008-06-26 17:39:18 UTC (rev 74)
@@ -155,10 +155,6 @@
context.pop(getService());
}
- if (elem.getBlock().getContents().size() == 0) {
- activities.remove(elem);
- }
-
if (m_exitService != null) {
m_exitService.convert(activities, context);
}
15 years, 10 months
Overlord SVN: r72 - in trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model: actions and 1 other directory.
by overlord-commits@lists.jboss.org
Author: objectiser
Date: 2008-06-25 14:19:59 -0400 (Wed, 25 Jun 2008)
New Revision: 72
Added:
trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/ConversionContext.java
trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/DefaultConversionContext.java
trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/WhenAction.java
trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/WhileAction.java
Modified:
trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/ESBAction.java
trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/ESBActionFactory.java
trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/ESBLanguageModel.java
trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/ESBService.java
trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/UnsupportedAction.java
trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/CreateSessionAction.java
trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/IfAction.java
trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/Messages.properties
trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/ParallelAction.java
trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/ReceiveMessageAction.java
trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/RetrieveSessionAction.java
trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/ScheduleStateAction.java
trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/SendMessageAction.java
trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/SwitchAction.java
Log:
Initial support for while and when actions.
Added: trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/ConversionContext.java
===================================================================
--- trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/ConversionContext.java (rev 0)
+++ trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/ConversionContext.java 2008-06-25 18:19:59 UTC (rev 72)
@@ -0,0 +1,80 @@
+/*
+ * Copyright 2005-8 Pi4 Technologies Ltd
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ *
+ * Change History:
+ * 25 Jun 2008 : Initial version created by gary
+ */
+package org.jboss.tools.overlord.jbossesb.model;
+
+public interface ConversionContext {
+
+ /**
+ * This method is invoked when an ESB service is being processed.
+ *
+ * @param service The service
+ */
+ public void processing(ESBService service);
+
+ /**
+ * This method is invoked when an ESB service has been processed.
+ *
+ * @param service The service
+ */
+ public void processed(ESBService service);
+
+ /**
+ * Push service on the stack of services in which the current
+ * context is contained.
+ *
+ * @param service The service
+ */
+ public void push(ESBService service);
+
+ /**
+ * Pop service from the stack of services in which the current
+ * context is contained.
+ *
+ * @param service The service
+ */
+ public void pop(ESBService service);
+
+ /**
+ * This method determines whether the supplied service is on
+ * the stack of services in which the current context is
+ * contained.
+ *
+ * @param service The service
+ * @return Whether the service is on the stack
+ */
+ public boolean isOnStack(ESBService service);
+
+ /**
+ * This method marks an ESB service as being a join state.
+ *
+ * @param service The service
+ */
+ public void markJoin(ESBService service);
+
+ /**
+ * This method determines whether the ESB service is a join
+ * state.
+ *
+ * @param service The serviice
+ * @return Whether the service is a join state
+ */
+ public boolean isJoin(ESBService service);
+
+}
Added: trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/DefaultConversionContext.java
===================================================================
--- trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/DefaultConversionContext.java (rev 0)
+++ trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/DefaultConversionContext.java 2008-06-25 18:19:59 UTC (rev 72)
@@ -0,0 +1,108 @@
+/*
+ * Copyright 2005-8 Pi4 Technologies Ltd
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ *
+ * Change History:
+ * 25 Jun 2008 : Initial version created by gary
+ */
+package org.jboss.tools.overlord.jbossesb.model;
+
+import java.util.logging.Logger;
+
+public class DefaultConversionContext implements ConversionContext {
+
+ /**
+ * This method is invoked when an ESB service is being processed.
+ *
+ * @param service The service
+ */
+ public void processing(ESBService service) {
+ m_joins.remove(service);
+ }
+
+ /**
+ * This method is invoked when an ESB service has been processed.
+ *
+ * @param service The service
+ */
+ public void processed(ESBService service) {
+
+ }
+
+ /**
+ * Push service on the stack of services in which the current
+ * context is contained.
+ *
+ * @param service The service
+ */
+ public void push(ESBService service) {
+ m_serviceStack.add(service);
+ }
+
+ /**
+ * Pop service from the stack of services in which the current
+ * context is contained.
+ *
+ * @param service The service
+ */
+ public void pop(ESBService service) {
+
+ // Check if the service is the last element on the stack
+ if (m_serviceStack.size() == 0 ||
+ m_serviceStack.get(m_serviceStack.size()-1) != service) {
+ logger.severe("Request to pop service '"+service+
+ "' that is not the most recent entry on the stack");
+ }
+
+ m_serviceStack.remove(service);
+ }
+
+ /**
+ * This method determines whether the supplied service is on
+ * the stack of services in which the current context is
+ * contained.
+ *
+ * @param service The service
+ * @return Whether the service is on the stack
+ */
+ public boolean isOnStack(ESBService service) {
+ return(m_serviceStack.contains(service));
+ }
+
+ /**
+ * This method marks an ESB service as being a join state.
+ *
+ * @param service The service
+ */
+ public void markJoin(ESBService service) {
+ m_joins.add(service);
+ }
+
+ /**
+ * This method determines whether the ESB service is a join
+ * state.
+ *
+ * @param service The serviice
+ * @return Whether the service is a join state
+ */
+ public boolean isJoin(ESBService service) {
+ return(m_joins.contains(service));
+ }
+
+ private static Logger logger = Logger.getLogger("org.jboss.tools.overlord.jbossesb.model");
+
+ private java.util.List<ESBService> m_serviceStack=new java.util.Vector<ESBService>();
+ private java.util.List<ESBService> m_joins=new java.util.Vector<ESBService>();
+}
Modified: trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/ESBAction.java
===================================================================
--- trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/ESBAction.java 2008-06-24 14:02:05 UTC (rev 71)
+++ trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/ESBAction.java 2008-06-25 18:19:59 UTC (rev 72)
@@ -17,6 +17,8 @@
*/
package org.jboss.tools.overlord.jbossesb.model;
+import java.util.logging.Logger;
+
import org.scribble.model.*;
/**
@@ -32,6 +34,9 @@
private static final String NAME_ATTR = "name";
private static final String PROPERTY_ELEMENT = "property";
private static final String CLASS_PROPERTY = "class";
+
+ protected static final String BUSINESS_OBJECT_TYPE_PROPERTY = "session";
+
/**
* The default constructor.
*/
@@ -104,6 +109,29 @@
*/
public void validate(ModelListener l) {
+ String session=getPropertyValue(BUSINESS_OBJECT_TYPE_PROPERTY);
+
+ if (session != null) {
+ // Validate that the business object type exists
+ try {
+ ClassLoader cl=getService().getProjectLoader();
+
+ try {
+ Class.forName(session, true, cl);
+ } catch(ClassNotFoundException cfne) {
+ l.error(this, org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.jbossesb.model.actions.Messages"),
+ "_NOT_FOUND_BUSINESS_OBJECT_TYPE",
+ new String[]{session}), null);
+ }
+
+ } catch(Exception e) {
+ logger.log(java.util.logging.Level.SEVERE,
+ "Failed to load business class '"+session+"'", e);
+ }
+ }
+
// Validate links
for (int i=0; i < m_links.size(); i++) {
ESBLink link=(ESBLink)m_links.get(i);
@@ -123,6 +151,15 @@
}
/**
+ * This method determines if the action represents a loop construct.
+ *
+ * @return Whether the action represents a loop construct
+ */
+ public boolean isLoop() {
+ return(false);
+ }
+
+ /**
* This method returns the action's class name.
*
* @return The action's class name
@@ -213,8 +250,10 @@
*
* @param activities The list of activities that will contain
* the converted action(s)
+ * @param context The conversion context
*/
- public abstract void convert(java.util.List<Activity> activities);
+ public abstract void convert(java.util.List<Activity> activities,
+ ConversionContext context);
/**
* This method returns the position of the service node within the
@@ -273,6 +312,8 @@
return(actionCount);
}
+ private static Logger logger = Logger.getLogger("org.jboss.tools.overlord.jbossesb.model");
+
private ESBService m_service=null;
private org.w3c.dom.Element m_action=null;
private java.util.List<ESBLink> m_links=new java.util.Vector<ESBLink>();
Modified: trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/ESBActionFactory.java
===================================================================
--- trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/ESBActionFactory.java 2008-06-24 14:02:05 UTC (rev 71)
+++ trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/ESBActionFactory.java 2008-06-25 18:19:59 UTC (rev 72)
@@ -17,6 +17,8 @@
*/
package org.jboss.tools.overlord.jbossesb.model;
+import java.util.logging.Logger;
+
/**
* This class provides a factory for ESBAction instances.
*
@@ -59,10 +61,14 @@
ret.init(service, action);
} catch(Exception e) {
- e.printStackTrace();
+ logger.log(java.util.logging.Level.SEVERE,
+ "Unable to find action class '"+
+ MODEL_ACTION_PACKAGE+"."+actionName+"'", e);
}
}
- } else {
+ }
+
+ if (ret == null) {
// Unrecognised or unsupported action
ret = new UnsupportedAction();
ret.init(service, action);
@@ -70,4 +76,6 @@
return(ret);
}
+
+ private static Logger logger = Logger.getLogger("org.jboss.tools.overlord.jbossesb.model");
}
Modified: trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/ESBLanguageModel.java
===================================================================
--- trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/ESBLanguageModel.java 2008-06-24 14:02:05 UTC (rev 71)
+++ trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/ESBLanguageModel.java 2008-06-25 18:19:59 UTC (rev 72)
@@ -21,6 +21,7 @@
import java.util.logging.Logger;
import org.scribble.conversation.model.*;
+import org.scribble.extensions.RegistryFactory;
import org.scribble.model.*;
/**
@@ -168,13 +169,46 @@
conv.setBlock(new Block());
- service.convert(conv.getBlock().getContents());
+ service.convert(conv.getBlock().getContents(),
+ new DefaultConversionContext());
getConversations().add(conv);
}
}
-
}
+
+ if (logger.isLoggable(java.util.logging.Level.FINEST)) {
+
+ org.scribble.export.Exporter exporter=
+ (org.scribble.export.Exporter)
+ RegistryFactory.getRegistry().getExtension(
+ org.scribble.export.Exporter.class, null);
+
+ try {
+ for (int i=0; i < getConversations().size(); i++) {
+ ConversationModel model=new ConversationModel();
+
+ model.setConversation(getConversations().get(i));
+
+ org.scribble.export.text.TextFormatter formatter=
+ new org.scribble.export.text.TextFormatter();
+
+ java.io.ByteArrayOutputStream os=
+ new java.io.ByteArrayOutputStream();
+
+ formatter.setOutputStream(os);
+
+ exporter.export(model, formatter);
+
+ String str=new String(os.toByteArray());
+
+ System.out.println("EXPORTED TEXT:");
+ System.out.println(str);
+ }
+ } catch(Exception e) {
+ e.printStackTrace();
+ }
+ }
}
@Override
Modified: trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/ESBService.java
===================================================================
--- trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/ESBService.java 2008-06-24 14:02:05 UTC (rev 71)
+++ trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/ESBService.java 2008-06-25 18:19:59 UTC (rev 72)
@@ -148,44 +148,56 @@
protected java.lang.annotation.Annotation getServiceAnnotation(String session) {
java.lang.annotation.Annotation ret=null;
- IFile file=OSGIModelRepository.getFile(getModel().getModelReference());
-
- if (file != null) {
- IJavaProject jproj=JavaCore.create(file.getProject());
+ try {
+ ClassLoader cl=getProjectLoader();
- try {
- ClassLoader cl=getProjectLoader(jproj);
-
- Class<?> cls=Class.forName(session, true, cl);
-
- // TODO: This should be replaced by direct lookup
- // of Service annotation - but library not available
- // at the moment
- java.lang.annotation.Annotation[] annotations=
- cls.getAnnotations();
- for (int i=0; ret == null &&
- i < annotations.length; i++) {
- try {
- if (annotations[i].annotationType().getName().equals(
- "org.jboss.soa.overlord.jbossesb.actions.Service")) {
- ret = annotations[i];
- }
- } catch(Throwable ex) {
- // Ignore
- System.err.println("ANNOTATION: "+annotations[i].annotationType());
- ex.printStackTrace();
+ Class<?> cls=Class.forName(session, true, cl);
+
+ // TODO: This should be replaced by direct lookup
+ // of Service annotation - but library not available
+ // at the moment
+ java.lang.annotation.Annotation[] annotations=
+ cls.getAnnotations();
+ for (int i=0; ret == null &&
+ i < annotations.length; i++) {
+ try {
+ if (annotations[i].annotationType().getName().equals(
+ "org.jboss.soa.overlord.jbossesb.actions.Service")) {
+ ret = annotations[i];
}
+ } catch(Throwable ex) {
+ // Ignore
+ System.err.println("ANNOTATION: "+annotations[i].annotationType());
+ ex.printStackTrace();
}
-
- } catch(Exception e) {
- e.printStackTrace();
}
+
+ } catch(Exception e) {
+ e.printStackTrace();
}
return(ret);
}
/**
+ * This method determines whether the ESB service represents a
+ * loop construct.
+ *
+ * @return Whether the service represents a loop
+ */
+ public boolean isLoop() {
+ boolean ret=false;
+
+ if (m_actions.size() > 0) {
+ ESBAction action=(ESBAction)m_actions.get(0);
+
+ ret = action.isLoop();
+ }
+
+ return(ret);
+ }
+
+ /**
* This method determines whether the ESB service descriptor represents
* a 'root' conversation.
*
@@ -289,7 +301,6 @@
ret = action.getPropertyValue(CONVERSATION_TYPE_PROPERTY);
if (ret == null) {
- /* TODO: Uncomment when conversationType defined on Service annotation
String session=action.getPropertyValue(BUSINESS_OBJECT_TYPE_PROPERTY);
java.lang.annotation.Annotation annotation=
@@ -310,7 +321,6 @@
"Failed to get 'name' annotation value", t);
}
}
- */
}
}
}
@@ -325,12 +335,18 @@
*
* @param activities The target list of activities associated with the
* ESB actions being converted
+ * @param context The conversion context
*/
- public void convert(java.util.List<Activity> activities) {
+ public void convert(java.util.List<Activity> activities,
+ ConversionContext context) {
+ context.processing(this);
+
for (int i=0; i < m_actions.size(); i++) {
- ((ESBAction)m_actions.get(i)).convert(activities);
+ ((ESBAction)m_actions.get(i)).convert(activities, context);
}
+
+ context.processed(this);
}
/**
@@ -339,55 +355,76 @@
*
* @see http://dev.eclipse.org/newslists/news.eclipse.tools.jdt/msg17769.html
*
- * @param javaProject The Java project containing the config file
* @return The classloader
* @throws Exception Failed to obtain the classloader
*/
- private static ClassLoader getProjectLoader(IJavaProject javaProject)
- throws Exception {
- IClasspathEntry[] entries = javaProject.getResolvedClasspath(true);
- String wsPath = javaProject.getProject().getLocation().toPortableString();
- String firstEntryLocation = javaProject.getPath().toPortableString();
- int idx = wsPath.indexOf(firstEntryLocation);
- wsPath = wsPath.substring(0,idx);
+ protected ClassLoader getProjectLoader() throws Exception {
+ java.net.URLClassLoader classLoader=null;
+ IFile file=OSGIModelRepository.getFile(getModel().getModelReference());
+
+ if (file != null) {
+ IJavaProject javaProject=JavaCore.create(file.getProject());
+ IClasspathEntry[] entries = javaProject.getResolvedClasspath(true);
+ String wsPath = javaProject.getProject().getLocation().toPortableString();
+ String firstEntryLocation = javaProject.getPath().toPortableString();
+ int idx = wsPath.indexOf(firstEntryLocation);
+ wsPath = wsPath.substring(0,idx);
+
+ String fullPath = null;
- String fullPath = null;
-
- java.net.URL[] urls = new java.net.URL[entries.length+1];
- int i = 0;
- urls[i++] = new java.io.File(wsPath +
- javaProject.getOutputLocation().toPortableString()).toURL();
-
- for (IClasspathEntry entry : entries) {
- if(entry.getEntryKind() == IClasspathEntry.CPE_PROJECT) {
- IResource project =
- ResourcesPlugin.getWorkspace().getRoot().findMember(entry.getPath());
- String projectPath =
- JavaCore.create(project.getProject()).getOutputLocation().toPortableString();
- fullPath = wsPath + projectPath;
- } else {
- // TODO: Need to find alternative to this internal class (JavaModel)
- Object resource =
- JavaModel.getTarget(ResourcesPlugin.getWorkspace().getRoot(),entry.getPath(),true);
-
- if (resource instanceof IResource) {
- IResource iFile = (IResource) resource;
- fullPath = iFile.getLocation().toPortableString();
- } else if (resource instanceof java.io.File) {
- java.io.File file = (java.io.File) resource;
- fullPath = file.getAbsolutePath();
+ java.net.URL[] urls = new java.net.URL[entries.length+1];
+ int i = 0;
+ urls[i++] = new java.io.File(wsPath +
+ javaProject.getOutputLocation().toPortableString()).toURL();
+
+ for (IClasspathEntry entry : entries) {
+ if(entry.getEntryKind() == IClasspathEntry.CPE_PROJECT) {
+ IResource project =
+ ResourcesPlugin.getWorkspace().getRoot().findMember(entry.getPath());
+ String projectPath =
+ JavaCore.create(project.getProject()).getOutputLocation().toPortableString();
+ fullPath = wsPath + projectPath;
+ } else {
+ // TODO: Need to find alternative to this internal class (JavaModel)
+ Object resource =
+ JavaModel.getTarget(ResourcesPlugin.getWorkspace().getRoot(),entry.getPath(),true);
+
+ if (resource instanceof IResource) {
+ IResource iFile = (IResource) resource;
+ fullPath = iFile.getLocation().toPortableString();
+ } else if (resource instanceof java.io.File) {
+ java.io.File resfile = (java.io.File) resource;
+ fullPath = resfile.getAbsolutePath();
+ }
}
+
+ urls[i++] = new java.io.File(fullPath).toURL();
}
- urls[i++] = new java.io.File(fullPath).toURL();
+ classLoader = new java.net.URLClassLoader(urls,String.class.getClassLoader());
}
-
- java.net.URLClassLoader classLoader = new
- java.net.URLClassLoader(urls,String.class.getClassLoader());
-
+
return(classLoader);
- }
+ }
+ public int hashCode() {
+ return(m_service.hashCode());
+ }
+
+ public boolean equals(Object obj) {
+ boolean ret=false;
+
+ if (obj instanceof ESBService) {
+ ESBService other=(ESBService)obj;
+
+ if (m_service == other.m_service) {
+ ret = true;
+ }
+ }
+
+ return(ret);
+ }
+
private static Logger logger = Logger.getLogger("org.jboss.tools.overlord.jbossesb.model");
private ESBLanguageModel m_model=null;
Modified: trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/UnsupportedAction.java
===================================================================
--- trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/UnsupportedAction.java 2008-06-24 14:02:05 UTC (rev 71)
+++ trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/UnsupportedAction.java 2008-06-25 18:19:59 UTC (rev 72)
@@ -33,8 +33,10 @@
*
* @param activities The list of activities that will contain
* the converted action(s)
+ * @param context The conversion context
*/
- public void convert(java.util.List<Activity> activities) {
+ public void convert(java.util.List<Activity> activities,
+ ConversionContext context) {
}
}
Modified: trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/CreateSessionAction.java
===================================================================
--- trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/CreateSessionAction.java 2008-06-24 14:02:05 UTC (rev 71)
+++ trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/CreateSessionAction.java 2008-06-25 18:19:59 UTC (rev 72)
@@ -17,7 +17,9 @@
*/
package org.jboss.tools.overlord.jbossesb.model.actions;
+import org.jboss.tools.overlord.jbossesb.model.ConversionContext;
import org.jboss.tools.overlord.jbossesb.model.ESBAction;
+import org.jboss.tools.overlord.jbossesb.model.ESBService;
import org.scribble.model.*;
/**
@@ -33,8 +35,11 @@
*
* @param activities The list of activities that will contain
* the converted action(s)
+ * @param context The conversion context
*/
- public void convert(java.util.List<Activity> activities) {
+ @Override
+ public void convert(java.util.List<Activity> activities,
+ ConversionContext context) {
}
}
Modified: trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/IfAction.java
===================================================================
--- trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/IfAction.java 2008-06-24 14:02:05 UTC (rev 71)
+++ trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/IfAction.java 2008-06-25 18:19:59 UTC (rev 72)
@@ -17,6 +17,7 @@
*/
package org.jboss.tools.overlord.jbossesb.model.actions;
+import org.jboss.tools.overlord.jbossesb.model.ConversionContext;
import org.jboss.tools.overlord.jbossesb.model.ESBAction;
import org.jboss.tools.overlord.jbossesb.model.ESBLink;
import org.jboss.tools.overlord.jbossesb.model.ESBService;
@@ -89,8 +90,11 @@
*
* @param activities The list of activities that will contain
* the converted action(s)
+ * @param context The conversion context
*/
- public void convert(java.util.List<Activity> activities) {
+ @Override
+ public void convert(java.util.List<Activity> activities,
+ ConversionContext context) {
org.w3c.dom.NodeList nl=getPropertyChildNodes(PATHS);
@@ -116,7 +120,7 @@
ESBService service=getService().getModel().getService(category, name);
if (service != null) {
- service.convert(cond.getContents());
+ service.convert(cond.getContents(), context);
}
}
}
Modified: trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/Messages.properties
===================================================================
--- trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/Messages.properties 2008-06-24 14:02:05 UTC (rev 71)
+++ trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/Messages.properties 2008-06-25 18:19:59 UTC (rev 72)
@@ -16,4 +16,6 @@
# * MA 02110-1301, USA.
# */
+_NOT_FOUND_BUSINESS_OBJECT_TYPE=Business object type '{0}' could not be found
_NOT_FOUND_SERVICE_DESCRIPTOR=Service descriptor for category '{0}' and name '{1}' not found
+_MUST_BE_FIRST_ACTION='{0}' action must be first in the service descriptor
\ No newline at end of file
Modified: trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/ParallelAction.java
===================================================================
--- trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/ParallelAction.java 2008-06-24 14:02:05 UTC (rev 71)
+++ trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/ParallelAction.java 2008-06-25 18:19:59 UTC (rev 72)
@@ -17,6 +17,7 @@
*/
package org.jboss.tools.overlord.jbossesb.model.actions;
+import org.jboss.tools.overlord.jbossesb.model.ConversionContext;
import org.jboss.tools.overlord.jbossesb.model.ESBAction;
import org.jboss.tools.overlord.jbossesb.model.ESBLink;
import org.jboss.tools.overlord.jbossesb.model.ESBService;
@@ -72,8 +73,11 @@
*
* @param activities The list of activities that will contain
* the converted action(s)
+ * @param context The conversion context
*/
- public void convert(java.util.List<Activity> activities) {
+ @Override
+ public void convert(java.util.List<Activity> activities,
+ ConversionContext context) {
org.w3c.dom.NodeList nl=getPropertyChildNodes(PATHS);
@@ -94,7 +98,7 @@
ESBService service=getService().getModel().getService(category, name);
if (service != null) {
- service.convert(block.getContents());
+ service.convert(block.getContents(), context);
}
if (block.getContents().size() > 0) {
@@ -109,7 +113,7 @@
if (service != null) {
// Join activities should be added after the
// parallel construct
- service.convert(activities);
+ service.convert(activities, context);
}
}
}
Modified: trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/ReceiveMessageAction.java
===================================================================
--- trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/ReceiveMessageAction.java 2008-06-24 14:02:05 UTC (rev 71)
+++ trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/ReceiveMessageAction.java 2008-06-25 18:19:59 UTC (rev 72)
@@ -17,6 +17,7 @@
*/
package org.jboss.tools.overlord.jbossesb.model.actions;
+import org.jboss.tools.overlord.jbossesb.model.ConversionContext;
import org.jboss.tools.overlord.jbossesb.model.ESBAction;
import org.scribble.conversation.model.*;
import org.scribble.model.*;
@@ -37,8 +38,11 @@
*
* @param activities The list of activities that will contain
* the converted action(s)
+ * @param context The conversion context
*/
- public void convert(java.util.List<Activity> activities) {
+ @Override
+ public void convert(java.util.List<Activity> activities,
+ ConversionContext context) {
ConversationInteraction recv=new ConversationInteraction();
activities.add(recv);
Modified: trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/RetrieveSessionAction.java
===================================================================
--- trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/RetrieveSessionAction.java 2008-06-24 14:02:05 UTC (rev 71)
+++ trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/RetrieveSessionAction.java 2008-06-25 18:19:59 UTC (rev 72)
@@ -17,6 +17,7 @@
*/
package org.jboss.tools.overlord.jbossesb.model.actions;
+import org.jboss.tools.overlord.jbossesb.model.ConversionContext;
import org.jboss.tools.overlord.jbossesb.model.ESBAction;
import org.scribble.model.*;
@@ -33,8 +34,11 @@
*
* @param activities The list of activities that will contain
* the converted action(s)
+ * @param context The conversion context
*/
- public void convert(java.util.List<Activity> activities) {
+ @Override
+ public void convert(java.util.List<Activity> activities,
+ ConversionContext context) {
}
}
\ No newline at end of file
Modified: trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/ScheduleStateAction.java
===================================================================
--- trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/ScheduleStateAction.java 2008-06-24 14:02:05 UTC (rev 71)
+++ trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/ScheduleStateAction.java 2008-06-25 18:19:59 UTC (rev 72)
@@ -17,8 +17,11 @@
*/
package org.jboss.tools.overlord.jbossesb.model.actions;
+import org.jboss.tools.overlord.jbossesb.model.ConversionContext;
import org.jboss.tools.overlord.jbossesb.model.ESBAction;
+import org.jboss.tools.overlord.jbossesb.model.ESBLink;
import org.scribble.model.*;
+import org.jboss.tools.overlord.jbossesb.model.ESBService;
/**
* The model component for the 'ScheduleStateAction'.
@@ -28,13 +31,49 @@
public class ScheduleStateAction extends ESBAction {
/**
+ * This method initializes the links with the ESB service descriptors
+ * identified in each path of the action.
+ */
+ @Override
+ protected void initializeLinks() {
+ super.initializeLinks();
+
+ String serviceCategory=getPropertyValue("serviceCategory");
+ String serviceName=getPropertyValue("serviceName");
+ String immediate=getPropertyValue("immediate");
+
+ m_service=getService().getModel().getService(serviceCategory, serviceName);
+
+ getLinks().add(new ESBLink(serviceCategory, serviceName, m_service,
+ (immediate != null && immediate.equalsIgnoreCase("true"))));
+ }
+
+ /**
* This method converts the ESB action into an equivalent
* behavioural description for conformance checking.
*
* @param activities The list of activities that will contain
* the converted action(s)
+ * @param context The conversion context
*/
- public void convert(java.util.List<Activity> activities) {
+ @Override
+ public void convert(java.util.List<Activity> activities,
+ ConversionContext context) {
+
+ // If the service has been located, then convert its activities
+ // if it is either not a loop construct (i.e. a while action), or
+ // if it is a loop, then we need to ensure that it is not in the
+ // current stack of ESB services that logically 'contain' this
+ // action. If this action is within the scope of the loop, then
+ // the default behaviour should be to return to the loop
+ // condition (i.e. just let the loop return implicitly).
+ if (m_service != null &&
+ (m_service.isLoop() == false ||
+ context.isOnStack(m_service) == false) &&
+ context.isJoin(m_service) == false) {
+ m_service.convert(activities, context);
+ }
}
+ private ESBService m_service=null;
}
\ No newline at end of file
Modified: trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/SendMessageAction.java
===================================================================
--- trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/SendMessageAction.java 2008-06-24 14:02:05 UTC (rev 71)
+++ trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/SendMessageAction.java 2008-06-25 18:19:59 UTC (rev 72)
@@ -17,6 +17,7 @@
*/
package org.jboss.tools.overlord.jbossesb.model.actions;
+import org.jboss.tools.overlord.jbossesb.model.ConversionContext;
import org.jboss.tools.overlord.jbossesb.model.ESBAction;
import org.jboss.tools.overlord.jbossesb.model.ESBLink;
import org.jboss.tools.overlord.jbossesb.model.ESBService;
@@ -73,8 +74,11 @@
*
* @param activities The list of activities that will contain
* the converted action(s)
+ * @param context The conversion context
*/
- public void convert(java.util.List<Activity> activities) {
+ @Override
+ public void convert(java.util.List<Activity> activities,
+ ConversionContext context) {
ConversationInteraction send=new ConversationInteraction();
activities.add(send);
@@ -128,7 +132,7 @@
// the set of activities. If service not found, then ignore
// here as will be reported as part of the validation of links.
if (service != null) {
- service.convert(activities);
+ service.convert(activities, context);
}
}
}
Modified: trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/SwitchAction.java
===================================================================
--- trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/SwitchAction.java 2008-06-24 14:02:05 UTC (rev 71)
+++ trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/SwitchAction.java 2008-06-25 18:19:59 UTC (rev 72)
@@ -17,6 +17,7 @@
*/
package org.jboss.tools.overlord.jbossesb.model.actions;
+import org.jboss.tools.overlord.jbossesb.model.ConversionContext;
import org.jboss.tools.overlord.jbossesb.model.ESBAction;
import org.jboss.tools.overlord.jbossesb.model.ESBLink;
import org.jboss.tools.overlord.jbossesb.model.ESBService;
@@ -70,8 +71,11 @@
*
* @param activities The list of activities that will contain
* the converted action(s)
+ * @param context The conversion context
*/
- public void convert(java.util.List<Activity> activities) {
+ @Override
+ public void convert(java.util.List<Activity> activities,
+ ConversionContext context) {
org.w3c.dom.NodeList nl=getPropertyChildNodes(PATHS);
@@ -96,7 +100,7 @@
ESBService service=getService().getModel().getService(category, name);
if (service != null) {
- service.convert(block.getContents());
+ service.convert(block.getContents(), context);
}
}
}
Added: trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/WhenAction.java
===================================================================
--- trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/WhenAction.java (rev 0)
+++ trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/WhenAction.java 2008-06-25 18:19:59 UTC (rev 72)
@@ -0,0 +1,145 @@
+/*
+ * 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.actions;
+
+import org.jboss.tools.overlord.jbossesb.model.ConversionContext;
+import org.jboss.tools.overlord.jbossesb.model.ESBAction;
+import org.jboss.tools.overlord.jbossesb.model.ESBLink;
+import org.jboss.tools.overlord.jbossesb.model.ESBService;
+import org.scribble.model.*;
+import org.scribble.conversation.model.*;
+
+/**
+ * The model component for the 'WhenAction'.
+ *
+ * @author gary
+ */
+public class WhenAction extends ESBAction {
+
+ private static final String SERVICE_NAME = "service-name";
+ private static final String SERVICE_CATEGORY = "service-category";
+ private static final String WHEN = "when";
+ private static final String JOIN = "join";
+ private static final String PATHS = "paths";
+
+ /**
+ * This method initializes the links with the ESB service descriptors
+ * identified in each path of the action.
+ */
+ @Override
+ protected void initializeLinks() {
+ super.initializeLinks();
+
+ org.w3c.dom.NodeList nl=getPropertyChildNodes(PATHS);
+
+ for (int i=0; i < nl.getLength(); i++) {
+
+ org.w3c.dom.Node n=nl.item(i);
+
+ if (n instanceof org.w3c.dom.Element) {
+ if (n.getNodeName().equals(WHEN)) {
+ String category=((org.w3c.dom.Element)n).getAttribute(SERVICE_CATEGORY);
+ String name=((org.w3c.dom.Element)n).getAttribute(SERVICE_NAME);
+
+ // Lookup service associated with category and name
+ ESBService service=getService().getModel().getService(category, name);
+
+ // Initialize link, even if service is null - this will be
+ // reported as a validation error later
+ getLinks().add(new ESBLink(category, name, service, true));
+
+ if (service != null) {
+ m_services.add(service);
+ }
+
+ } else if (n.getNodeName().equals(JOIN)) {
+ m_joinCategory=((org.w3c.dom.Element)n).getAttribute(SERVICE_CATEGORY);
+ m_joinName=((org.w3c.dom.Element)n).getAttribute(SERVICE_NAME);
+
+ // Lookup service associated with category and name
+ m_joinService=getService().getModel().getService(m_joinCategory, m_joinName);
+
+ // Initialize link, even if service is null - this will be
+ // reported as a validation error later
+ getLinks().add(new ESBLink(m_joinCategory, m_joinName, m_joinService, true));
+ }
+ }
+ }
+ }
+
+ /**
+ * 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) {
+ super.validate(l);
+
+ // TODO: Validate only one 'when' element, if decision-method
+ // specified, that method exists, if expression, then
+ // validate the expression etc.
+
+ }
+
+ /**
+ * This method converts the ESB action into an equivalent
+ * behavioural description for conformance checking.
+ *
+ * @param activities The list of activities that will contain
+ * the converted action(s)
+ * @param context The conversion context
+ */
+ @Override
+ public void convert(java.util.List<Activity> activities,
+ ConversionContext context) {
+
+ When elem=new When();
+ activities.add(elem);
+
+ elem.derivedFrom(this);
+
+ if (m_joinService != null) {
+ context.markJoin(m_joinService);
+ }
+
+ for (int i=0; i < m_services.size(); i++) {
+ ConditionalBlock block=new ConditionalBlock();
+
+ m_services.get(i).convert(block.getContents(), context);
+
+ if (block.getContents().size() > 0) {
+ elem.getConditionalBlocks().add(block);
+ }
+ }
+
+ if (elem.getConditionalBlocks().size() == 0) {
+ activities.remove(elem);
+ }
+
+ if (m_joinService != null) {
+ m_joinService.convert(activities, context);
+ }
+ }
+
+ private java.util.List<ESBService> m_services=new java.util.Vector<ESBService>();
+ private String m_joinCategory=null;
+ private String m_joinName=null;
+ private ESBService m_joinService=null;
+}
Added: trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/WhileAction.java
===================================================================
--- trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/WhileAction.java (rev 0)
+++ trunk/cdl/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/WhileAction.java 2008-06-25 18:19:59 UTC (rev 72)
@@ -0,0 +1,173 @@
+/*
+ * 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.actions;
+
+import org.jboss.tools.overlord.jbossesb.model.ConversionContext;
+import org.jboss.tools.overlord.jbossesb.model.ESBAction;
+import org.jboss.tools.overlord.jbossesb.model.ESBLink;
+import org.jboss.tools.overlord.jbossesb.model.ESBService;
+import org.scribble.model.*;
+import org.scribble.conversation.model.*;
+
+/**
+ * The model component for the 'WhileAction'.
+ *
+ * @author gary
+ */
+public class WhileAction extends ESBAction {
+
+ private static final String SERVICE_NAME = "service-name";
+ private static final String SERVICE_CATEGORY = "service-category";
+ private static final String IMMEDIATE = "immediate";
+ private static final String WHILE = "while";
+ private static final String EXIT = "exit";
+ private static final String PATHS = "paths";
+
+ /**
+ * This method initializes the links with the ESB service descriptors
+ * identified in each path of the action.
+ */
+ @Override
+ protected void initializeLinks() {
+ super.initializeLinks();
+
+ org.w3c.dom.NodeList nl=getPropertyChildNodes(PATHS);
+
+ for (int i=0; i < nl.getLength(); i++) {
+
+ org.w3c.dom.Node n=nl.item(i);
+
+ if (n instanceof org.w3c.dom.Element) {
+ if (n.getNodeName().equals(WHILE)) {
+ m_loopCategory=((org.w3c.dom.Element)n).getAttribute(SERVICE_CATEGORY);
+ m_loopName=((org.w3c.dom.Element)n).getAttribute(SERVICE_NAME);
+
+ // Lookup service associated with category and name
+ m_loopService=getService().getModel().getService(m_loopCategory, m_loopName);
+
+ String immediate=((org.w3c.dom.Element)n).getAttribute(IMMEDIATE);
+
+ // Initialize link, even if service is null - this will be
+ // reported as a validation error later
+ getLinks().add(new ESBLink(m_loopCategory, m_loopName, m_loopService,
+ (immediate != null && immediate.equalsIgnoreCase("true"))));
+ } else if (n.getNodeName().equals(EXIT)) {
+ m_exitCategory=((org.w3c.dom.Element)n).getAttribute(SERVICE_CATEGORY);
+ m_exitName=((org.w3c.dom.Element)n).getAttribute(SERVICE_NAME);
+
+ // Lookup service associated with category and name
+ m_exitService=getService().getModel().getService(m_exitCategory, m_exitName);
+
+ String immediate=((org.w3c.dom.Element)n).getAttribute(IMMEDIATE);
+
+ // Initialize link, even if service is null - this will be
+ // reported as a validation error later
+ getLinks().add(new ESBLink(m_exitCategory, m_exitName, m_exitService,
+ (immediate != null && immediate.equalsIgnoreCase("true"))));
+ }
+ }
+ }
+ }
+
+ /**
+ * This method determines if the action represents a loop construct.
+ *
+ * @return Whether the action represents a loop construct
+ */
+ @Override
+ public boolean isLoop() {
+ return(true);
+ }
+
+ /**
+ * 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) {
+ super.validate(l);
+
+ // While action must be first conversation based action in
+ // the service
+ if (getService() != null && getService().getActions().size() > 0) {
+ ESBAction act=getService().getActions().get(0);
+
+ if (act != this) {
+ l.error(this, org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.jbossesb.model.actions.Messages"),
+ "_MUST_BE_FIRST_ACTION",
+ new String[]{"While"}), null);
+ }
+ }
+
+ // TODO: Validate while/exit order, if decision-method
+ // specified, that method exists, if expression, then
+ // validate the expression etc.
+
+ // TODO: Validate that the loop service returns back to the
+ // while action for all paths
+
+ }
+
+ /**
+ * This method converts the ESB action into an equivalent
+ * behavioural description for conformance checking.
+ *
+ * @param activities The list of activities that will contain
+ * the converted action(s)
+ * @param context The conversion context
+ */
+ @Override
+ public void convert(java.util.List<Activity> activities,
+ ConversionContext context) {
+
+ While elem=new While();
+ activities.add(elem);
+
+ elem.derivedFrom(this);
+
+ ConditionalBlock block=new ConditionalBlock();
+ elem.setBlock(block);
+
+ if (m_loopService != null) {
+ context.push(getService());
+
+ m_loopService.convert(elem.getBlock().getContents(), context);
+
+ context.pop(getService());
+ }
+
+ if (elem.getBlock().getContents().size() == 0) {
+ activities.remove(elem);
+ }
+
+ if (m_exitService != null) {
+ m_exitService.convert(activities, context);
+ }
+ }
+
+ private String m_loopCategory=null;
+ private String m_loopName=null;
+ private ESBService m_loopService=null;
+ private String m_exitCategory=null;
+ private String m_exitName=null;
+ private ESBService m_exitService=null;
+}
15 years, 10 months
Overlord SVN: r70 - trunk.
by overlord-commits@lists.jboss.org
Author: mark.little(a)jboss.com
Date: 2008-06-24 07:14:30 -0400 (Tue, 24 Jun 2008)
New Revision: 70
Added:
trunk/sam/
Log:
15 years, 10 months
Overlord SVN: r69 - in trunk/cdl: runtime and 5 other directories.
by overlord-commits@lists.jboss.org
Author: jeff.yuchang
Date: 2008-06-24 06:55:01 -0400 (Tue, 24 Jun 2008)
New Revision: 69
Removed:
trunk/cdl/samples/jbossesb/purchasing/client/.classpath
Modified:
trunk/cdl/pom.xml
trunk/cdl/runtime/jbossesb/pom.xml
trunk/cdl/runtime/pom.xml
trunk/cdl/samples/jbossesb/broker/pom.xml
trunk/cdl/samples/jbossesb/purchasing/system/pom.xml
trunk/cdl/samples/pom.xml
Log:
* Update the pom file accordingly, adding a CDL prefix to the project.
Modified: trunk/cdl/pom.xml
===================================================================
--- trunk/cdl/pom.xml 2008-06-24 10:38:11 UTC (rev 68)
+++ trunk/cdl/pom.xml 2008-06-24 10:55:01 UTC (rev 69)
@@ -3,10 +3,10 @@
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>org.jboss.soa.overlord</groupId>
- <artifactId>overlord</artifactId>
+ <artifactId>cdl</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>pom</packaging>
- <name>JBoss Overlord</name>
+ <name>Overlord::CDL</name>
<url>http://www.jboss.org/overlord</url>
<description>
JBoss Overlord.
Modified: trunk/cdl/runtime/jbossesb/pom.xml
===================================================================
--- trunk/cdl/runtime/jbossesb/pom.xml 2008-06-24 10:38:11 UTC (rev 68)
+++ trunk/cdl/runtime/jbossesb/pom.xml 2008-06-24 10:55:01 UTC (rev 69)
@@ -2,15 +2,15 @@
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
- <groupId>org.jboss.soa.overlord</groupId>
+ <groupId>org.jboss.soa.overlord.cdl</groupId>
<artifactId>runtime-jbossesb</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>jar</packaging>
- <name>Overlord::Runtime::JBossESB</name>
+ <name>Overlord::CDL::Runtime::JBossESB</name>
<url>http://www.jboss.org/overlord</url>
<parent>
- <groupId>org.jboss.soa.overlord</groupId>
+ <groupId>org.jboss.soa.overlord.cdl</groupId>
<artifactId>runtime</artifactId>
<version>1.0-SNAPSHOT</version>
</parent>
Modified: trunk/cdl/runtime/pom.xml
===================================================================
--- trunk/cdl/runtime/pom.xml 2008-06-24 10:38:11 UTC (rev 68)
+++ trunk/cdl/runtime/pom.xml 2008-06-24 10:55:01 UTC (rev 69)
@@ -2,16 +2,16 @@
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
- <groupId>org.jboss.soa.overlord</groupId>
+ <groupId>org.jboss.soa.overlord.cdl</groupId>
<artifactId>runtime</artifactId>
<packaging>pom</packaging>
<version>1.0-SNAPSHOT</version>
- <name>Overlord::Runtime</name>
+ <name>Overlord::CDL::Runtime</name>
<url>http://www.jboss.org/overlord</url>
<parent>
<groupId>org.jboss.soa.overlord</groupId>
- <artifactId>overlord</artifactId>
+ <artifactId>cdl</artifactId>
<version>1.0-SNAPSHOT</version>
</parent>
Modified: trunk/cdl/samples/jbossesb/broker/pom.xml
===================================================================
--- trunk/cdl/samples/jbossesb/broker/pom.xml 2008-06-24 10:38:11 UTC (rev 68)
+++ trunk/cdl/samples/jbossesb/broker/pom.xml 2008-06-24 10:55:01 UTC (rev 69)
@@ -2,11 +2,11 @@
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
- <groupId>org.jboss.soa.overlord.samples</groupId>
+ <groupId>org.jboss.soa.overlord.cdl.samples</groupId>
<artifactId>jbossesb-broker</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>jboss-esb</packaging>
- <name>Overlord::Samples::Broker</name>
+ <name>Overlord::CDL::Samples::Broker</name>
<url>http://www.jboss.org/overlord</url>
<parent>
@@ -28,7 +28,7 @@
<version>1.2.14</version>
</dependency>
<dependency>
- <groupId>org.jboss.soa.overlord</groupId>
+ <groupId>org.jboss.soa.overlord.cdl</groupId>
<artifactId>runtime-jbossesb</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
Deleted: trunk/cdl/samples/jbossesb/purchasing/client/.classpath
===================================================================
--- trunk/cdl/samples/jbossesb/purchasing/client/.classpath 2008-06-24 10:38:11 UTC (rev 68)
+++ trunk/cdl/samples/jbossesb/purchasing/client/.classpath 2008-06-24 10:55:01 UTC (rev 69)
@@ -1,22 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
- <classpathentry kind="src" path="src"/>
- <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
- <classpathentry kind="lib" path="lib/jbossesb-config-model-1.0.1.jar"/>
- <classpathentry kind="lib" path="lib/jbossesb-rosetta.jar"/>
- <classpathentry kind="lib" path="lib/log4j.jar"/>
- <classpathentry kind="lib" path="lib/jbossts-common.jar"/>
- <classpathentry kind="lib" path="lib/jbossall-client.jar"/>
- <classpathentry kind="lib" path="lib/commons-logging.jar"/>
- <classpathentry kind="lib" path="lib/javassist.jar"/>
- <classpathentry kind="lib" path="lib/jboss-aop-jdk50.jar"/>
- <classpathentry kind="lib" path="lib/jboss-messaging-client.jar"/>
- <classpathentry kind="lib" path="lib/jboss-remoting.jar"/>
- <classpathentry kind="lib" path="lib/juddi-client-20071022.191630-6.jar"/>
- <classpathentry kind="lib" path="lib/scout-1.0rc1.jar"/>
- <classpathentry kind="lib" path="lib/stax-api-1.0.1.jar"/>
- <classpathentry kind="lib" path="lib/trove.jar"/>
- <classpathentry kind="lib" path="lib/xbean.jar"/>
- <classpathentry kind="lib" path="lib/xercesImpl-modified.jar"/>
- <classpathentry kind="output" path="bin"/>
-</classpath>
Modified: trunk/cdl/samples/jbossesb/purchasing/system/pom.xml
===================================================================
--- trunk/cdl/samples/jbossesb/purchasing/system/pom.xml 2008-06-24 10:38:11 UTC (rev 68)
+++ trunk/cdl/samples/jbossesb/purchasing/system/pom.xml 2008-06-24 10:55:01 UTC (rev 69)
@@ -2,15 +2,15 @@
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
- <groupId>org.jboss.soa.overlord.samples</groupId>
+ <groupId>org.jboss.soa.overlord.cdl.samples</groupId>
<artifactId>jbossesb-purchasing</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>jboss-esb</packaging>
- <name>Overlord::Samples::Purchasing</name>
+ <name>Overlord::CDL::Samples::Purchasing</name>
<url>http://www.jboss.org/overlord</url>
<parent>
- <groupId>org.jboss.soa.overlord</groupId>
+ <groupId>org.jboss.soa.overlord.cdl</groupId>
<artifactId>samples</artifactId>
<version>1.0-SNAPSHOT</version>
</parent>
@@ -28,7 +28,7 @@
<version>1.2.14</version>
</dependency>
<dependency>
- <groupId>org.jboss.soa.overlord</groupId>
+ <groupId>org.jboss.soa.overlord.cdl</groupId>
<artifactId>runtime-jbossesb</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
Modified: trunk/cdl/samples/pom.xml
===================================================================
--- trunk/cdl/samples/pom.xml 2008-06-24 10:38:11 UTC (rev 68)
+++ trunk/cdl/samples/pom.xml 2008-06-24 10:55:01 UTC (rev 69)
@@ -2,16 +2,16 @@
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
- <groupId>org.jboss.soa.overlord</groupId>
+ <groupId>org.jboss.soa.overlord.cdl</groupId>
<artifactId>samples</artifactId>
<packaging>pom</packaging>
<version>1.0-SNAPSHOT</version>
- <name>Overlord::Samples</name>
+ <name>Overlord::CDL::Samples</name>
<url>http://www.jboss.org/overlord</url>
<parent>
<groupId>org.jboss.soa.overlord</groupId>
- <artifactId>overlord</artifactId>
+ <artifactId>cdl</artifactId>
<version>1.0-SNAPSHOT</version>
</parent>
15 years, 10 months
Overlord SVN: r68 - in trunk: cdl and 4 other directories.
by overlord-commits@lists.jboss.org
Author: jeff.yuchang
Date: 2008-06-24 06:38:11 -0400 (Tue, 24 Jun 2008)
New Revision: 68
Added:
trunk/cdl/distribution/
trunk/cdl/distribution/install/
trunk/cdl/distribution/lib/
trunk/cdl/docs/
trunk/cdl/docs/conversation/
trunk/cdl/docs/monitor/
trunk/cdl/docs/tooling/
trunk/cdl/pom.xml
trunk/cdl/runtime/
trunk/cdl/runtime/jbossesb/
trunk/cdl/runtime/pom.xml
trunk/cdl/samples/
trunk/cdl/samples/jbossesb/
trunk/cdl/samples/pom.xml
Removed:
trunk/cdl/distribution/install/
trunk/cdl/distribution/lib/
trunk/cdl/docs/conversation/
trunk/cdl/docs/monitor/
trunk/cdl/docs/tooling/
trunk/cdl/runtime/jbossesb/
trunk/cdl/runtime/pom.xml
trunk/cdl/samples/jbossesb/
trunk/cdl/samples/pom.xml
trunk/distribution/
trunk/docs/
trunk/pom.xml
trunk/runtime/
trunk/samples/
Log:
* Move all the folders to the cdl top-level folder.
Copied: trunk/cdl/distribution (from rev 66, trunk/distribution)
Copied: trunk/cdl/distribution/install (from rev 67, trunk/distribution/install)
Copied: trunk/cdl/distribution/lib (from rev 67, trunk/distribution/lib)
Copied: trunk/cdl/docs (from rev 66, trunk/docs)
Copied: trunk/cdl/docs/conversation (from rev 67, trunk/docs/conversation)
Copied: trunk/cdl/docs/monitor (from rev 67, trunk/docs/monitor)
Copied: trunk/cdl/docs/tooling (from rev 67, trunk/docs/tooling)
Copied: trunk/cdl/pom.xml (from rev 66, trunk/pom.xml)
===================================================================
--- trunk/cdl/pom.xml (rev 0)
+++ trunk/cdl/pom.xml 2008-06-24 10:38:11 UTC (rev 68)
@@ -0,0 +1,212 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <groupId>org.jboss.soa.overlord</groupId>
+ <artifactId>overlord</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ <packaging>pom</packaging>
+ <name>JBoss Overlord</name>
+ <url>http://www.jboss.org/overlord</url>
+ <description>
+ JBoss Overlord.
+ </description>
+ <scm>
+ <connection>scm:svn:https://svn.jboss.org/repos/soag/trunk</connection>
+ </scm>
+ <developers>
+ <developer>
+ <name>Jeff Yu</name>
+ <id>jeff.yuchang</id>
+ <email>cyu(a)redhat.com</email>
+ <organization>Red Hat</organization>
+ <roles>
+ <role>Developer</role>
+ </roles>
+ <timezone>+8</timezone>
+ </developer>
+ </developers>
+ <modules>
+ <module>runtime</module>
+ <module>samples</module>
+ </modules>
+
+ <properties>
+ <overlord-version>1.0-SNAPSHOT</overlord-version>
+ </properties>
+
+ <profiles>
+ <profile>
+ <id>release</id>
+ <modules>
+ <module>docs</module>
+ <module>docs/examples/gettingstarted</module>
+ </modules>
+ </profile>
+ <profile>
+ <!--
+ This profile is activated when the "generate.docs" property is set,
+ as in "mvn ... -Dgenerate.docs=true ..."
+ -->
+ <id>docs</id>
+ <activation>
+ <property>
+ <name>generate.docs</name>
+ </property>
+ </activation>
+ <modules>
+ <module>docs</module>
+ </modules>
+ <reporting>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-javadoc-plugin</artifactId>
+ <configuration>
+ <aggregate>true</aggregate>
+ <show>public</show>
+ <title>JBoss Overlord ${project.version}</title>
+ </configuration>
+ </plugin>
+ </plugins>
+ </reporting>
+ </profile>
+ </profiles>
+
+ <build>
+ <!-- This section defines the default plugin settings inherited by child projects. -->
+ <pluginManagement>
+ <plugins>
+ <!-- Fixes how test resources of a project can be used in projects dependent on it -->
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-jar-plugin</artifactId>
+ <version>2.2</version>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-javadoc-plugin</artifactId>
+ <version>2.2</version>
+ <configuration>
+ <aggregate>true</aggregate>
+ </configuration>
+ </plugin>
+ </plugins>
+ </pluginManagement>
+ <plugins>
+ <!-- Specify the compiler options and settings -->
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-compiler-plugin</artifactId>
+ <version>2.0.2</version>
+ <configuration>
+ <source>1.5</source>
+ <target>1.5</target>
+ <showDeprecation>false</showDeprecation>
+ <showWarnings>false</showWarnings>
+ </configuration>
+ </plugin>
+ <!-- Produce source jars during the 'verify' phase -->
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-source-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>attach-sources</id>
+ <phase>verify</phase>
+ <goals>
+ <goal>jar</goal>
+ <goal>test-jar</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <artifactId>maven-surefire-plugin</artifactId>
+ <configuration>
+ <includes>
+ <include>**/*TestCase.java</include>
+ <include>**/*Test.java</include>
+ </includes>
+ </configuration>
+ </plugin>
+ <!--
+ Build a test-jar for each project, so that src/test/* resources and classes can be used
+ in other projects. Also customize how the jar files are assembled.
+ -->
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-jar-plugin</artifactId>
+ <executions>
+ <execution>
+ <goals>
+ <goal>test-jar</goal>
+ </goals>
+ </execution>
+ </executions>
+ <configuration>
+ <archive>
+ <manifest>
+ <addDefaultSpecificationEntries>
+ true
+ </addDefaultSpecificationEntries>
+ <addDefaultImplementationEntries>
+ true
+ </addDefaultImplementationEntries>
+ </manifest>
+ <manifestEntries>
+ <Implementation-URL>
+ ${pom.url}
+ </Implementation-URL>
+ </manifestEntries>
+ </archive>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+
+ <reporting>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-surefire-report-plugin</artifactId>
+ </plugin>
+ </plugins>
+ </reporting>
+
+ <repositories>
+ <repository>
+ <id>jboss</id>
+ <url>http://repository.jboss.com/maven2/</url>
+ </repository>
+
+ <repository>
+ <id>jboss-snapshot</id>
+ <url>http://snapshots.jboss.org/maven2</url>
+ </repository>
+
+ <repository>
+ <id>maven.repo</id>
+ <name>maven repository</name>
+ <url>http://repo1.maven.org/maven2</url>
+ </repository>
+
+ <repository>
+ <id>ibiblio</id>
+ <name>ibiblio repository</name>
+ <url>http://mirrors.ibiblio.org/pub/mirrors/maven2</url>
+ </repository>
+
+ </repositories>
+
+ <distributionManagement>
+ <repository>
+ <!-- Copy the distribution jar file to a local checkout of the maven repository
+ - This variable can be set in $MAVEN_HOME/conf/settings.xml -->
+ <id>repository.jboss.org</id>
+ <url>file://${jboss.repository.root}</url>
+ </repository>
+ </distributionManagement>
+
+</project>
+
Copied: trunk/cdl/runtime (from rev 66, trunk/runtime)
Copied: trunk/cdl/runtime/jbossesb (from rev 67, trunk/runtime/jbossesb)
Deleted: trunk/cdl/runtime/pom.xml
===================================================================
--- trunk/runtime/pom.xml 2008-06-23 13:03:09 UTC (rev 66)
+++ trunk/cdl/runtime/pom.xml 2008-06-24 10:38:11 UTC (rev 68)
@@ -1,23 +0,0 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
- <modelVersion>4.0.0</modelVersion>
- <groupId>org.jboss.soa.overlord</groupId>
- <artifactId>runtime</artifactId>
- <packaging>pom</packaging>
- <version>1.0-SNAPSHOT</version>
- <name>Overlord::Runtime</name>
- <url>http://www.jboss.org/overlord</url>
-
- <parent>
- <groupId>org.jboss.soa.overlord</groupId>
- <artifactId>overlord</artifactId>
- <version>1.0-SNAPSHOT</version>
- </parent>
-
- <modules>
- <module>jbossesb</module>
- </modules>
-
-</project>
-
Copied: trunk/cdl/runtime/pom.xml (from rev 67, trunk/runtime/pom.xml)
===================================================================
--- trunk/cdl/runtime/pom.xml (rev 0)
+++ trunk/cdl/runtime/pom.xml 2008-06-24 10:38:11 UTC (rev 68)
@@ -0,0 +1,23 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <groupId>org.jboss.soa.overlord</groupId>
+ <artifactId>runtime</artifactId>
+ <packaging>pom</packaging>
+ <version>1.0-SNAPSHOT</version>
+ <name>Overlord::Runtime</name>
+ <url>http://www.jboss.org/overlord</url>
+
+ <parent>
+ <groupId>org.jboss.soa.overlord</groupId>
+ <artifactId>overlord</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </parent>
+
+ <modules>
+ <module>jbossesb</module>
+ </modules>
+
+</project>
+
Copied: trunk/cdl/samples (from rev 66, trunk/samples)
Copied: trunk/cdl/samples/jbossesb (from rev 67, trunk/samples/jbossesb)
Deleted: trunk/cdl/samples/pom.xml
===================================================================
--- trunk/samples/pom.xml 2008-06-23 13:03:09 UTC (rev 66)
+++ trunk/cdl/samples/pom.xml 2008-06-24 10:38:11 UTC (rev 68)
@@ -1,47 +0,0 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
- <modelVersion>4.0.0</modelVersion>
- <groupId>org.jboss.soa.overlord</groupId>
- <artifactId>samples</artifactId>
- <packaging>pom</packaging>
- <version>1.0-SNAPSHOT</version>
- <name>Overlord::Samples</name>
- <url>http://www.jboss.org/overlord</url>
-
- <parent>
- <groupId>org.jboss.soa.overlord</groupId>
- <artifactId>overlord</artifactId>
- <version>1.0-SNAPSHOT</version>
- </parent>
-
- <modules>
- <!--module>jbossesb/purchasing/system</module-->
- </modules>
-
- <build>
- <plugins>
- <plugin>
- <groupId>org.codehaus.mojo</groupId>
- <artifactId>jboss-packaging-maven-plugin</artifactId>
- <version>2.0-20080130.110241-9</version>
- <extensions>true</extensions>
- </plugin>
- </plugins>
- </build>
-
- <pluginRepositories>
- <pluginRepository>
- <releases>
- <enabled>false</enabled>
- </releases>
- <snapshots/>
- <id>jboss-plugin-snapshots</id>
- <name>JBoss Snapshot Plugin Repository</name>
- <url>http://snapshots.repository.codehaus.org</url>
- </pluginRepository>
- </pluginRepositories>
-
-
-</project>
-
Copied: trunk/cdl/samples/pom.xml (from rev 67, trunk/samples/pom.xml)
===================================================================
--- trunk/cdl/samples/pom.xml (rev 0)
+++ trunk/cdl/samples/pom.xml 2008-06-24 10:38:11 UTC (rev 68)
@@ -0,0 +1,47 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <groupId>org.jboss.soa.overlord</groupId>
+ <artifactId>samples</artifactId>
+ <packaging>pom</packaging>
+ <version>1.0-SNAPSHOT</version>
+ <name>Overlord::Samples</name>
+ <url>http://www.jboss.org/overlord</url>
+
+ <parent>
+ <groupId>org.jboss.soa.overlord</groupId>
+ <artifactId>overlord</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </parent>
+
+ <modules>
+ <!--module>jbossesb/purchasing/system</module-->
+ </modules>
+
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>jboss-packaging-maven-plugin</artifactId>
+ <version>2.0-20080130.110241-9</version>
+ <extensions>true</extensions>
+ </plugin>
+ </plugins>
+ </build>
+
+ <pluginRepositories>
+ <pluginRepository>
+ <releases>
+ <enabled>false</enabled>
+ </releases>
+ <snapshots/>
+ <id>jboss-plugin-snapshots</id>
+ <name>JBoss Snapshot Plugin Repository</name>
+ <url>http://snapshots.repository.codehaus.org</url>
+ </pluginRepository>
+ </pluginRepositories>
+
+
+</project>
+
Deleted: trunk/pom.xml
===================================================================
--- trunk/pom.xml 2008-06-24 10:30:14 UTC (rev 67)
+++ trunk/pom.xml 2008-06-24 10:38:11 UTC (rev 68)
@@ -1,212 +0,0 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
- <modelVersion>4.0.0</modelVersion>
- <groupId>org.jboss.soa.overlord</groupId>
- <artifactId>overlord</artifactId>
- <version>1.0-SNAPSHOT</version>
- <packaging>pom</packaging>
- <name>JBoss Overlord</name>
- <url>http://www.jboss.org/overlord</url>
- <description>
- JBoss Overlord.
- </description>
- <scm>
- <connection>scm:svn:https://svn.jboss.org/repos/soag/trunk</connection>
- </scm>
- <developers>
- <developer>
- <name>Jeff Yu</name>
- <id>jeff.yuchang</id>
- <email>cyu(a)redhat.com</email>
- <organization>Red Hat</organization>
- <roles>
- <role>Developer</role>
- </roles>
- <timezone>+8</timezone>
- </developer>
- </developers>
- <modules>
- <module>runtime</module>
- <module>samples</module>
- </modules>
-
- <properties>
- <overlord-version>1.0-SNAPSHOT</overlord-version>
- </properties>
-
- <profiles>
- <profile>
- <id>release</id>
- <modules>
- <module>docs</module>
- <module>docs/examples/gettingstarted</module>
- </modules>
- </profile>
- <profile>
- <!--
- This profile is activated when the "generate.docs" property is set,
- as in "mvn ... -Dgenerate.docs=true ..."
- -->
- <id>docs</id>
- <activation>
- <property>
- <name>generate.docs</name>
- </property>
- </activation>
- <modules>
- <module>docs</module>
- </modules>
- <reporting>
- <plugins>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-javadoc-plugin</artifactId>
- <configuration>
- <aggregate>true</aggregate>
- <show>public</show>
- <title>JBoss Overlord ${project.version}</title>
- </configuration>
- </plugin>
- </plugins>
- </reporting>
- </profile>
- </profiles>
-
- <build>
- <!-- This section defines the default plugin settings inherited by child projects. -->
- <pluginManagement>
- <plugins>
- <!-- Fixes how test resources of a project can be used in projects dependent on it -->
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-jar-plugin</artifactId>
- <version>2.2</version>
- </plugin>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-javadoc-plugin</artifactId>
- <version>2.2</version>
- <configuration>
- <aggregate>true</aggregate>
- </configuration>
- </plugin>
- </plugins>
- </pluginManagement>
- <plugins>
- <!-- Specify the compiler options and settings -->
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-compiler-plugin</artifactId>
- <version>2.0.2</version>
- <configuration>
- <source>1.5</source>
- <target>1.5</target>
- <showDeprecation>false</showDeprecation>
- <showWarnings>false</showWarnings>
- </configuration>
- </plugin>
- <!-- Produce source jars during the 'verify' phase -->
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-source-plugin</artifactId>
- <executions>
- <execution>
- <id>attach-sources</id>
- <phase>verify</phase>
- <goals>
- <goal>jar</goal>
- <goal>test-jar</goal>
- </goals>
- </execution>
- </executions>
- </plugin>
- <plugin>
- <artifactId>maven-surefire-plugin</artifactId>
- <configuration>
- <includes>
- <include>**/*TestCase.java</include>
- <include>**/*Test.java</include>
- </includes>
- </configuration>
- </plugin>
- <!--
- Build a test-jar for each project, so that src/test/* resources and classes can be used
- in other projects. Also customize how the jar files are assembled.
- -->
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-jar-plugin</artifactId>
- <executions>
- <execution>
- <goals>
- <goal>test-jar</goal>
- </goals>
- </execution>
- </executions>
- <configuration>
- <archive>
- <manifest>
- <addDefaultSpecificationEntries>
- true
- </addDefaultSpecificationEntries>
- <addDefaultImplementationEntries>
- true
- </addDefaultImplementationEntries>
- </manifest>
- <manifestEntries>
- <Implementation-URL>
- ${pom.url}
- </Implementation-URL>
- </manifestEntries>
- </archive>
- </configuration>
- </plugin>
- </plugins>
- </build>
-
- <reporting>
- <plugins>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-surefire-report-plugin</artifactId>
- </plugin>
- </plugins>
- </reporting>
-
- <repositories>
- <repository>
- <id>jboss</id>
- <url>http://repository.jboss.com/maven2/</url>
- </repository>
-
- <repository>
- <id>jboss-snapshot</id>
- <url>http://snapshots.jboss.org/maven2</url>
- </repository>
-
- <repository>
- <id>maven.repo</id>
- <name>maven repository</name>
- <url>http://repo1.maven.org/maven2</url>
- </repository>
-
- <repository>
- <id>ibiblio</id>
- <name>ibiblio repository</name>
- <url>http://mirrors.ibiblio.org/pub/mirrors/maven2</url>
- </repository>
-
- </repositories>
-
- <distributionManagement>
- <repository>
- <!-- Copy the distribution jar file to a local checkout of the maven repository
- - This variable can be set in $MAVEN_HOME/conf/settings.xml -->
- <id>repository.jboss.org</id>
- <url>file://${jboss.repository.root}</url>
- </repository>
- </distributionManagement>
-
-</project>
-
15 years, 10 months
Overlord SVN: r67 - in trunk: samples/jbossesb/broker/src/main/java/org/jboss/soa/overlord/samples/jbossesb/loan/broker and 1 other directories.
by overlord-commits@lists.jboss.org
Author: jeff.yuchang
Date: 2008-06-24 06:30:14 -0400 (Tue, 24 Jun 2008)
New Revision: 67
Added:
trunk/runtime/jbossesb/src/main/java/org/jboss/soa/overlord/jbossesb/actions/MessageRouterAction.java
Modified:
trunk/samples/jbossesb/broker/src/main/java/org/jboss/soa/overlord/samples/jbossesb/loan/broker/BrokerMain.java
trunk/samples/jbossesb/broker/src/main/resources/META-INF/jboss-esb.xml
Log:
* update the changed codes, as will restructure the folders.
Added: trunk/runtime/jbossesb/src/main/java/org/jboss/soa/overlord/jbossesb/actions/MessageRouterAction.java
===================================================================
--- trunk/runtime/jbossesb/src/main/java/org/jboss/soa/overlord/jbossesb/actions/MessageRouterAction.java (rev 0)
+++ trunk/runtime/jbossesb/src/main/java/org/jboss/soa/overlord/jbossesb/actions/MessageRouterAction.java 2008-06-24 10:30:14 UTC (rev 67)
@@ -0,0 +1,61 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2008, JBoss Inc., 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.
+ *
+ * (C) 2008,
+ */
+package org.jboss.soa.overlord.jbossesb.actions;
+
+import org.apache.log4j.Logger;
+import org.jboss.soa.esb.actions.AbstractActionLifecycle;
+import org.jboss.soa.esb.client.ServiceInvoker;
+import org.jboss.soa.esb.helpers.ConfigTree;
+import org.jboss.soa.esb.message.Message;
+import org.jboss.soa.overlord.jbossesb.util.MessageUtil;
+
+/**
+ * @author jeffyu
+ *
+ */
+public class MessageRouterAction extends AbstractActionLifecycle {
+
+ private static Logger logger = Logger.getLogger(MessageRouterAction.class);
+
+ private ConfigTree config;
+
+ public MessageRouterAction(ConfigTree config) {
+ this.config = config;
+ }
+
+ public Message process(Message message) throws Exception {
+ ConfigTree[] children = config.getAllChildren();
+ String messageType = MessageUtil.getMessageType(message.getBody().get());
+ logger.debug("The sent message type is [" + messageType + "]");
+
+ for (ConfigTree ct : children) {
+ ConfigTree[] msgNodes = ct.getChildren("message");
+ String msgType = msgNodes[0].getAttribute("type");
+ if (messageType.equals(msgType)) {
+ String serviceCategory = ct.getAttribute("service-category");
+ String serviceName = ct.getAttribute("service-name");
+ ServiceInvoker invoker = new ServiceInvoker(serviceCategory, serviceName);
+ invoker.deliverAsync(message);
+ }
+ }
+ throw new Exception ("Could not find any services to proceed!");
+ }
+
+}
Modified: trunk/samples/jbossesb/broker/src/main/java/org/jboss/soa/overlord/samples/jbossesb/loan/broker/BrokerMain.java
===================================================================
--- trunk/samples/jbossesb/broker/src/main/java/org/jboss/soa/overlord/samples/jbossesb/loan/broker/BrokerMain.java 2008-06-23 13:03:09 UTC (rev 66)
+++ trunk/samples/jbossesb/broker/src/main/java/org/jboss/soa/overlord/samples/jbossesb/loan/broker/BrokerMain.java 2008-06-24 10:30:14 UTC (rev 67)
@@ -22,7 +22,9 @@
import java.util.List;
import org.jboss.soa.overlord.conversation.HibernateObject;
+import org.jboss.soa.overlord.jbossesb.actions.Service;
+@Service(name="{http://www.jboss.org/overlord/loanBroker}Broker", conversationType="Broker", root=true)
public class BrokerMain implements HibernateObject{
private static final long serialVersionUID = 11114L;
Modified: trunk/samples/jbossesb/broker/src/main/resources/META-INF/jboss-esb.xml
===================================================================
--- trunk/samples/jbossesb/broker/src/main/resources/META-INF/jboss-esb.xml 2008-06-23 13:03:09 UTC (rev 66)
+++ trunk/samples/jbossesb/broker/src/main/resources/META-INF/jboss-esb.xml 2008-06-24 10:30:14 UTC (rev 67)
@@ -6,15 +6,56 @@
<jms-provider name="JBossMQ" connection-factory="ConnectionFactory"
jndi-context-factory="org.jnp.interfaces.NamingContextFactory"
jndi-URL="localhost">
- <!-- To be done -->
+ <jms-bus busid="BrokerService">
+ <jms-message-filter dest-type="QUEUE" dest-name="queue/esb-loan-broker" />
+ </jms-bus>
+ <jms-bus busid="BrokerService1">
+ <jms-message-filter dest-type="QUEUE" dest-name="queue/esb-loan-broker1" />
+ </jms-bus>
+ <jms-bus busid="BrokerService2">
+ <jms-message-filter dest-type="QUEUE" dest-name="queue/esb-loan-broker2"/>
+ </jms-bus>
+ <jms-bus busid="BrokerService3">
+ <jms-message-filter dest-type="QUEUE" dest-name="queue/esb-loan-broker3"/>
+ </jms-bus>
+ <jms-bus busid="BrokerService4">
+ <jms-message-filter dest-type="QUEUE" dest-name="queue/esb-loan-broker4"/>
+ </jms-bus>
+ <jms-bus busid="BrokerService5">
+ <jms-message-filter dest-type="QUEUE" dest-name="queue/esb-loan-broker5"/>
+ </jms-bus>
+ <jms-bus busid="BrokerService6">
+ <jms-message-filter dest-type="QUEUE" dest-name="queue/esb-loan-broker6"/>
+ </jms-bus>
+ <jms-bus busid="BrokerService7">
+ <jms-message-filter dest-type="QUEUE" dest-name="queue/esb-loan-broker7"/>
+ </jms-bus>
+ <jms-bus busid="CreditAgencyService">
+ <jms-message-filter dest-type="QUEUE" dest-name="queue/esb-loan-creditAgency" />
+ </jms-bus>
+ <jms-bus busid="CreditAgencyService1">
+ <jms-message-filter dest-type="QUEUE" dest-name="queue/esb-loan-creditAgency1" />
+ </jms-bus>
+ <jms-bus busid="CreditAgencyService2">
+ <jms-message-filter dest-type="QUEUE" dest-name="queue/esb-loan-creditAgency2" />
+ </jms-bus>
+ <jms-bus busid="Supplier">
+ <jms-message-filter dest-type="QUEUE" dest-name="queue/esb-loan-supplier" />
+ </jms-bus>
+ <jms-bus busid="Supplier1">
+ <jms-message-filter dest-type="QUEUE" dest-name="queue/esb-loan-supplier1" />
+ </jms-bus>
</jms-provider>
</providers>
+
<services>
<service category="ESBBroker.BrokerParticipant" name="ESBBrokerProcess" description="">
<listeners>
- <!-- To be done -->
+ <jms-listener name="BrokerServiceListener"
+ busidref="BrokerService"
+ maxThreads="1"/>
</listeners>
<actions mep="OneWay">
@@ -26,7 +67,7 @@
not yet exist, and the message being routed will initiate the
session - not sure yet if this needs to be flagged specifically. -->
- <action class="org.jboss.soa.esb.actions.conversation.MessageRouterAction"
+ <action class="org.jboss.soa.overlord.jbossesb.actions.MessageRouterAction"
process="process" name="s0-1">
<property name="paths">
<route service-category="ESBBroker.BrokerParticipant"
@@ -63,8 +104,7 @@
<actions mep="OneWay">
<action class="org.jboss.soa.esb.actions.conversation.CreateSessionAction"
process="process" name="s1-1">
- <property name="session" value="org.jboss.soa.esb.samples.broker.BrokerMain" />
- <property name="serviceType" value="{http://www.jboss.org/jbossesb/samples/conversation}BrokerParticipant" />
+ <property name="session" value="org.jboss.soa.overlord.samples.jbossesb.loan.broker.BrokerMain" />
</action>
<action class="org.jboss.soa.esb.actions.conversation.ReceiveMessageAction"
process="process" name="s1-2">
15 years, 10 months
Overlord SVN: r66 - in trunk: cdl and 1 other directory.
by overlord-commits@lists.jboss.org
Author: objectiser
Date: 2008-06-23 09:03:09 -0400 (Mon, 23 Jun 2008)
New Revision: 66
Added:
trunk/cdl/tools/
Removed:
trunk/tools/
Log:
Copied: trunk/cdl/tools (from rev 65, trunk/tools)
15 years, 10 months
Overlord SVN: r65 - in trunk/tools/plugins/org.jboss.tools.overlord.jbossesb: src/java/org/jboss/tools/overlord/jbossesb/model and 1 other directory.
by overlord-commits@lists.jboss.org
Author: objectiser
Date: 2008-06-23 09:02:12 -0400 (Mon, 23 Jun 2008)
New Revision: 65
Modified:
trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/META-INF/MANIFEST.MF
trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/ESBLanguageModel.java
Log:
Change of plugin dependencies.
Modified: trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/META-INF/MANIFEST.MF
===================================================================
--- trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/META-INF/MANIFEST.MF 2008-06-23 13:01:24 UTC (rev 64)
+++ trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/META-INF/MANIFEST.MF 2008-06-23 13:02:12 UTC (rev 65)
@@ -6,7 +6,14 @@
Bundle-ClassPath: .
Bundle-Activator: org.jboss.tools.overlord.jbossesb.eclipse.Activator
Bundle-Vendor: www.jboss.org
-Require-Bundle: org.eclipse.ui,org.eclipse.core.runtime,org.eclipse.core.resources,org.eclipse.jdt.core,org.scribble,org.scribble.osgi,org.scribble.conversation.model,org.scribble.lang.model
+Require-Bundle: org.eclipse.ui,
+ org.eclipse.core.runtime,
+ org.eclipse.core.resources,
+ org.eclipse.jdt.core,
+ org.scribble.osgi,
+ org.scribble.conversation.model,
+ org.scribble.lang.model,
+ org.scribble.core
Scribble-Extensions: org.jboss.tools.overlord.jbossesb.parser.JBossESBParser,
org.jboss.tools.overlord.jbossesb.parser.JBossESBNotation,
org.jboss.tools.overlord.jbossesb.validation.ESBLanguageModelValidationRule
Modified: trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/ESBLanguageModel.java
===================================================================
--- trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/ESBLanguageModel.java 2008-06-23 13:01:24 UTC (rev 64)
+++ trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/ESBLanguageModel.java 2008-06-23 13:02:12 UTC (rev 65)
@@ -121,10 +121,10 @@
// 'implements' reference. If so, then need to change
// Java Lang Model parser and also Lang Model conformance
// rule.
- //ImplementsReference iref=
- // new ImplementsReference(ConversationModel.CONVERSATION);
- ConformanceReference iref=
- new ConformanceReference(ConversationModel.CONVERSATION);
+ ImplementsReference iref=
+ new ImplementsReference(ConversationModel.CONVERSATION);
+ //ConformanceReference iref=
+ // new ConformanceReference(ConversationModel.CONVERSATION);
iref.setLocatedRole(convType.substring(index+1));
@@ -143,8 +143,8 @@
iref.setLocalpart(mainpart.substring(index+1));
}
- //conv.getImplements().add(iref);
- conv.getConformsTo().add(iref);
+ conv.getImplements().add(iref);
+ //conv.getConformsTo().add(iref);
dm.recordDependency(m_source, iref,
DependencyType.Implements);
15 years, 10 months