[overlord-commits] Overlord SVN: r635 - in cdl/trunk: runtime/jbossesb/src/main/java/org/jboss/soa/overlord/jbossesb/stateful/actions and 7 other directories.
overlord-commits at lists.jboss.org
overlord-commits at lists.jboss.org
Mon May 4 12:07:35 EDT 2009
Author: jeff.yuchang
Date: 2009-05-04 12:07:35 -0400 (Mon, 04 May 2009)
New Revision: 635
Added:
cdl/trunk/runtime/jbossesb-assembly/src/test/resources/overlord-cdl-jbossesb.mysql.cfg.xml
Modified:
cdl/trunk/runtime/jbossesb/src/main/java/org/jboss/soa/overlord/jbossesb/stateful/Session.java
cdl/trunk/runtime/jbossesb/src/main/java/org/jboss/soa/overlord/jbossesb/stateful/SessionManager.java
cdl/trunk/runtime/jbossesb/src/main/java/org/jboss/soa/overlord/jbossesb/stateful/actions/ConversationAction.java
cdl/trunk/runtime/jbossesb/src/main/java/org/jboss/soa/overlord/jbossesb/stateful/actions/IfAction.java
cdl/trunk/runtime/jbossesb/src/main/java/org/jboss/soa/overlord/jbossesb/stateful/actions/ParallelAction.java
cdl/trunk/runtime/jbossesb/src/main/java/org/jboss/soa/overlord/jbossesb/stateful/actions/PerformAction.java
cdl/trunk/runtime/jbossesb/src/main/java/org/jboss/soa/overlord/jbossesb/stateful/actions/ReceiveMessageAction.java
cdl/trunk/runtime/jbossesb/src/main/java/org/jboss/soa/overlord/jbossesb/stateful/actions/RetrieveSessionAction.java
cdl/trunk/runtime/jbossesb/src/main/java/org/jboss/soa/overlord/jbossesb/stateful/actions/ScheduleStateAction.java
cdl/trunk/runtime/jbossesb/src/main/java/org/jboss/soa/overlord/jbossesb/stateful/actions/SendMessageAction.java
cdl/trunk/runtime/jbossesb/src/main/java/org/jboss/soa/overlord/jbossesb/stateful/actions/SwitchAction.java
cdl/trunk/runtime/jbossesb/src/main/java/org/jboss/soa/overlord/jbossesb/stateful/actions/WhenAction.java
cdl/trunk/runtime/jbossesb/src/main/java/org/jboss/soa/overlord/jbossesb/stateful/actions/WhileAction.java
cdl/trunk/samples/jbossesb/brokerage/broker/stateful/src/main/java/org/jboss/soa/overlord/samples/jbossesb/loan/broker/SetRequestQuoteMessageAction.java
cdl/trunk/samples/jbossesb/common/creditAgency/stateful/src/main/java/com/acme/services/creditAgency/SetCreditCheckInvalidMessageAction.java
cdl/trunk/samples/jbossesb/common/creditAgency/stateless/src/main/java/com/acme/services/creditAgency/SetCreditCheckInvalidMessageAction.java
cdl/trunk/samples/jbossesb/purchasing/store/stateful/src/main/java/com/acme/services/broker/SetBuyFailedMessageAction.java
cdl/trunk/samples/jbossesb/purchasing/store/stateful/src/main/java/com/acme/services/broker/SetBuyResponseMessageAction.java
cdl/trunk/samples/jbossesb/purchasing/store/stateful/src/main/java/com/acme/services/broker/SetCreditCheckRequestMessageAction.java
cdl/trunk/samples/jbossesb/purchasing/store/stateless/src/main/java/com/acme/services/broker/SetBuyFailedMessageAction.java
cdl/trunk/samples/jbossesb/purchasing/store/stateless/src/main/java/com/acme/services/broker/SetBuyResponseMessageAction.java
cdl/trunk/samples/jbossesb/purchasing/store/stateless/src/main/java/com/acme/services/broker/SetCreditCheckRequestMessageAction.java
cdl/trunk/samples/pom.xml
Log:
[SOAG-73] fix race condition.
* Just render out the Message Body instead of its object.
* Add the mysql conf file for testing against mysql.
Modified: cdl/trunk/runtime/jbossesb/src/main/java/org/jboss/soa/overlord/jbossesb/stateful/Session.java
===================================================================
--- cdl/trunk/runtime/jbossesb/src/main/java/org/jboss/soa/overlord/jbossesb/stateful/Session.java 2009-05-02 05:23:35 UTC (rev 634)
+++ cdl/trunk/runtime/jbossesb/src/main/java/org/jboss/soa/overlord/jbossesb/stateful/Session.java 2009-05-04 16:07:35 UTC (rev 635)
@@ -48,8 +48,6 @@
import org.hibernate.annotations.MapKey;
import org.jboss.internal.soa.esb.addressing.helpers.EPRHelper;
import org.jboss.soa.esb.addressing.EPR;
-import org.jboss.soa.esb.client.ServiceInvoker;
-import org.jboss.soa.esb.message.Message;
/**
* A Session represents the encapsulation of the current status of execution of an associated choreography instance,
@@ -197,104 +195,7 @@
return null;
}
-
- public void schedule(String category, String name, Message message) throws Exception {
-
- ScheduleItem si=new ScheduleItem(category, name);
- si.setSession(this);
-
- logger.debug("Scheduling: " + si + " by thread of " + Thread.currentThread().getName());
-
- synchronized(joinStates) {
- JoinState joinState = getJoinStateByScheduleItem(si);
- if (joinState != null) {
- joinState.join();
- SessionManager.updateObject(joinState);
- logger.debug("Join State is: " + joinState);
- if (joinState.getSpawnPath() <= 0) {
- joinStates.remove(joinState);
- SessionManager.removeObject(joinState);
-
- logger.info("Deliver the Join State of: " + joinState);
-
- ServiceInvoker invoker= new ServiceInvoker(category, name);
- invoker.deliverAsync(message);
- } else {
- logger.info("Don't join yet: "+ joinState);
- return;
- }
- }
- }
-
- synchronized(scheduleItems) {
- // Check if already exists
- if (scheduleItems.contains(si)) {
- throw new Exception("Schedule already contains item for " + si);
- }
-
- scheduleItems.add(si);
- SessionManager.saveObject(si);
-
- logger.debug("Finished scheduling "+si +"' by thread of " + Thread.currentThread().getName());
- }
-
- }
- public void unschedule(String category, String name) throws Exception {
-
- logger.debug("Unscheduling: '"+category+"/"+name+"' by thread of " + Thread.currentThread().getName() );
-
- synchronized(joinStates) {
- if (isScheduleItemInJoinState(category, name)) {
- //FIXME, it should throw exception, but need to use the pemissitic lock in database.
- logger.error("Unable to enact join state, coverging paths have still not completed");
- //throw new Exception("Unable to enact join state, converging paths have still not completed");
- }
- }
-
- synchronized(scheduleItems) {
- ScheduleItem si = getScheduleItem(category, name);
- if (si.getId() == 0) {
- throw new Exception("The scheduleItem of " + si + " is not existed !");
- }
-
- scheduleItems.remove(si);
- SessionManager.removeObject(si);
- logger.debug("Finished unscheduling: " + si +"' by thread of " + Thread.currentThread().getName());
- }
- }
-
- protected boolean isScheduleItemInJoinState(String category, String name) {
- for(JoinState joinState : joinStates) {
- if (name.equals(joinState.getName()) && category.equals(joinState.getCategory())) {
- return true;
- }
- }
- return false;
- }
-
-
- protected synchronized JoinState getJoinStateByScheduleItem(ScheduleItem si) {
- for(JoinState joinState : joinStates) {
- if (si.getName().equals(joinState.getName()) && si.getCategory().equals(joinState.getCategory())) {
- return joinState;
- }
- }
- return null;
- }
-
- protected ScheduleItem getScheduleItem(String category, String name) {
- for(ScheduleItem si : scheduleItems) {
- if (category.equals(si.getCategory()) && name.equals(si.getName())) {
- si.setSession(this);
- return si;
- }
- }
- ScheduleItem item = new ScheduleItem(category, name);
- item.setSession(this);
- return item;
- }
-
public void join(String category, String name, int count) throws Exception {
JoinState joinState=new JoinState(category, name, count);
joinState.setSession(this);
Modified: cdl/trunk/runtime/jbossesb/src/main/java/org/jboss/soa/overlord/jbossesb/stateful/SessionManager.java
===================================================================
--- cdl/trunk/runtime/jbossesb/src/main/java/org/jboss/soa/overlord/jbossesb/stateful/SessionManager.java 2009-05-02 05:23:35 UTC (rev 634)
+++ cdl/trunk/runtime/jbossesb/src/main/java/org/jboss/soa/overlord/jbossesb/stateful/SessionManager.java 2009-05-04 16:07:35 UTC (rev 635)
@@ -25,6 +25,8 @@
import java.util.Map;
import org.apache.log4j.Logger;
+import org.hibernate.LockMode;
+import org.hibernate.Query;
import org.jboss.soa.esb.message.Message;
import org.jboss.soa.overlord.jbossesb.ClassLoaderUtil;
import org.jboss.soa.overlord.jbossesb.stateful.actions.MessageProperties;
@@ -114,10 +116,7 @@
}
if (sessionKey != null) {
- org.hibernate.Session hibernateSession = HibernateUtil.currentSession();
- Session session = (Session) hibernateSession.load(Session.class, Long.valueOf(sessionKey));
- injectParentReference(session);
- return session;
+ return getSessionByKey(sessionKey);
}
for (Identity id : ids) {
@@ -128,6 +127,15 @@
return null;
}
+
+ private static Session getSessionByKey(String sessionKey) {
+ org.hibernate.Session hibernateSession = HibernateUtil.currentSession();
+ Query query = hibernateSession.createQuery("from Session s where s.id=" + sessionKey);
+ query.setLockMode("s", LockMode.UPGRADE);
+ Session session = (Session) query.uniqueResult();
+ injectParentReference(session);
+ return session;
+ }
public static Object saveObject(Object obj) throws Exception {
org.hibernate.Session hibernateSession = HibernateUtil.currentSession();
@@ -189,14 +197,13 @@
return null;
}
- Session session = theID.getSession();
- injectParentReference(session);
+ Session session = getSessionByKey(String.valueOf(theID.getSession().getId()));
logger.debug("Get Session of " + session + " by using identity of " + id);
return session;
}
-
+
private static void injectParentReference(Session session) {
String parentProperty = session.getProperties().get(Session.PARENT_REFERENCE_KEY);
if (parentProperty!= null && session.getParent() != null) {
Modified: cdl/trunk/runtime/jbossesb/src/main/java/org/jboss/soa/overlord/jbossesb/stateful/actions/ConversationAction.java
===================================================================
--- cdl/trunk/runtime/jbossesb/src/main/java/org/jboss/soa/overlord/jbossesb/stateful/actions/ConversationAction.java 2009-05-02 05:23:35 UTC (rev 634)
+++ cdl/trunk/runtime/jbossesb/src/main/java/org/jboss/soa/overlord/jbossesb/stateful/actions/ConversationAction.java 2009-05-04 16:07:35 UTC (rev 635)
@@ -36,6 +36,7 @@
import org.jboss.soa.overlord.jbossesb.XMLUtils;
import org.jboss.soa.overlord.jbossesb.stateful.Identity;
import org.jboss.soa.overlord.jbossesb.stateful.IdentityType;
+import org.jboss.soa.overlord.jbossesb.stateful.JoinState;
import org.jboss.soa.overlord.jbossesb.stateful.ScheduleItem;
import org.jboss.soa.overlord.jbossesb.stateful.Session;
import org.jboss.soa.overlord.jbossesb.stateful.SessionManager;
@@ -64,6 +65,8 @@
protected Session session;
+ protected org.hibernate.Session hibernateSession;
+
public ConversationAction(ConfigTree config) {
this.config = config;
}
@@ -103,13 +106,13 @@
*/
public final Message process(Message message) throws Exception {
- org.hibernate.Session hibernateSession = HibernateUtil.currentSession();
+ hibernateSession = HibernateUtil.currentSession();
Transaction transaction = hibernateSession.beginTransaction();
try {
session = getSession(message);
if (session != null && isFirstOrLastConversationAction(message, true)) {
logger.debug("This is first conversation action of message: [" + message.getBody().get() + "].");
- unschedule(message);
+ unschedule(session, message);
unscheduledServiceItem = true;
}
@@ -250,6 +253,7 @@
}
protected void sendAsyncMessage(Message message) throws Exception {
+ logger.debug("Has [" + scheduleItems.size() + "] message to deliver");
for(ScheduleItem si : scheduleItems) {
ServiceInvoker invoker = new ServiceInvoker(si.getCategory(), si.getName());
logger.debug("Deliver message [" + message.getBody() + "] to [" + si.getCategory() + "/" + si.getName() + "]");
@@ -301,10 +305,10 @@
return(ret);
}
- private void unschedule(Message message) throws Exception {
+ private void unschedule(Session session, Message message) throws Exception {
String serviceCategory=getConfig().getParent().getAttribute(ActionProperties.SERVICE_CATEGORY);
String serviceName=getConfig().getParent().getAttribute(ActionProperties.SERVICE_NAME);
- session.unschedule(serviceCategory, serviceName);
+ unscheduleService(session,serviceCategory, serviceName);
}
private ConfigTree getFirstOrLastConversationAction(boolean isFirst) throws ClassNotFoundException {
@@ -350,4 +354,110 @@
private Session getSession(Message message) throws Exception {
return getSession(message, null);
}
+
+
+ /**
+ * Schedule an item.
+ * @param session
+ * @param category
+ * @param name
+ * @param message
+ * @throws Exception
+ */
+ protected void scheduleService(Session session, String category, String name, Message message)
+ throws Exception{
+ ScheduleItem si=new ScheduleItem(category, name);
+ si.setSession(session);
+
+ logger.debug("Scheduling: " + si + " by thread of " + Thread.currentThread().getName());
+ List<JoinState> joinStates = session.getJoinStates();
+
+ synchronized(joinStates) {
+ JoinState joinState = getJoinStateByScheduleItem(si, joinStates);
+ if (joinState != null) {
+ joinState.join();
+ SessionManager.updateObject(joinState);
+ logger.debug("Join State is: " + joinState);
+ if (joinState.getSpawnPath() <= 0) {
+ joinStates.remove(joinState);
+ SessionManager.removeObject(joinState);
+
+ logger.info("Deliver the Join State of: " + joinState);
+
+ addScheduleItemToDeliver(category, name);
+ } else {
+ logger.info("Don't join yet: "+ joinState);
+ return;
+ }
+ }
+ }
+
+ List<ScheduleItem> scheduleItems = session.getScheduleItems();
+ synchronized(scheduleItems) {
+ // Check if already exists
+ if (scheduleItems.contains(si)) {
+ throw new Exception("Schedule already contains item for " + si);
+ }
+
+ scheduleItems.add(si);
+ SessionManager.saveObject(si);
+
+ logger.debug("Finished scheduling "+si +"' by thread of " + Thread.currentThread().getName());
+ }
+ }
+
+ protected void unscheduleService(Session session, String category, String name)
+ throws Exception{
+ logger.debug("Unscheduling: '"+category+"/"+name+"' by thread of " + Thread.currentThread().getName() );
+
+ List<JoinState> joinStates = session.getJoinStates();
+ synchronized(joinStates) {
+ if (isScheduleItemInJoinState(category, name, joinStates)) {
+ logger.error("Unable to enact join state, coverging paths have still not completed");
+ throw new Exception("Unable to enact join state, converging paths have still not completed");
+ }
+ }
+
+ List<ScheduleItem> scheduleItems = session.getScheduleItems();
+ synchronized(scheduleItems) {
+ ScheduleItem si = getScheduleItem(category, name, scheduleItems);
+ si.setSession(session);
+ if (si.getId() == 0) {
+ throw new Exception("The scheduleItem of " + si + " is not existed !");
+ }
+
+ scheduleItems.remove(si);
+ SessionManager.removeObject(si);
+ logger.debug("Finished unscheduling: " + si +"' by thread of " + Thread.currentThread().getName());
+ }
+ }
+
+
+ private JoinState getJoinStateByScheduleItem(ScheduleItem si, List<JoinState> joinStates) {
+ for(JoinState joinState : joinStates) {
+ if (si.getName().equals(joinState.getName()) && si.getCategory().equals(joinState.getCategory())) {
+ return joinState;
+ }
+ }
+ return null;
+ }
+
+ private boolean isScheduleItemInJoinState(String category, String name, List<JoinState> joinStates) {
+ for(JoinState joinState : joinStates) {
+ if (name.equals(joinState.getName()) && category.equals(joinState.getCategory())) {
+ return true;
+ }
+ }
+ return false;
+ }
+
+ private ScheduleItem getScheduleItem(String category, String name, List<ScheduleItem> scheduleItems) {
+ for(ScheduleItem si : scheduleItems) {
+ if (category.equals(si.getCategory()) && name.equals(si.getName())) {
+ return si;
+ }
+ }
+ ScheduleItem item = new ScheduleItem(category, name);
+ return item;
+ }
}
Modified: cdl/trunk/runtime/jbossesb/src/main/java/org/jboss/soa/overlord/jbossesb/stateful/actions/IfAction.java
===================================================================
--- cdl/trunk/runtime/jbossesb/src/main/java/org/jboss/soa/overlord/jbossesb/stateful/actions/IfAction.java 2009-05-02 05:23:35 UTC (rev 634)
+++ cdl/trunk/runtime/jbossesb/src/main/java/org/jboss/soa/overlord/jbossesb/stateful/actions/IfAction.java 2009-05-04 16:07:35 UTC (rev 635)
@@ -90,13 +90,13 @@
if (flag) {
String category = ifConfig.getAttribute(ActionProperties.SERVICE_CATEGORY);
String name = ifConfig.getAttribute(ActionProperties.SERVICE_NAME);
- session.schedule(category, name, message);
+ scheduleService(session, category, name, message);
addScheduleItemToDeliver(category, name);
logger.info("Scheduled items of [" + category + "/" + name + "].");
} else if (elseConfig != null){
String category = elseConfig.getAttribute(ActionProperties.SERVICE_CATEGORY);
String name = elseConfig.getAttribute(ActionProperties.SERVICE_NAME);
- session.schedule(category, name, message);
+ scheduleService(session, category, name, message);
addScheduleItemToDeliver(category, name);
logger.info("Scheduled items of [" + category + "/" + name + "].");
}
Modified: cdl/trunk/runtime/jbossesb/src/main/java/org/jboss/soa/overlord/jbossesb/stateful/actions/ParallelAction.java
===================================================================
--- cdl/trunk/runtime/jbossesb/src/main/java/org/jboss/soa/overlord/jbossesb/stateful/actions/ParallelAction.java 2009-05-02 05:23:35 UTC (rev 634)
+++ cdl/trunk/runtime/jbossesb/src/main/java/org/jboss/soa/overlord/jbossesb/stateful/actions/ParallelAction.java 2009-05-04 16:07:35 UTC (rev 635)
@@ -104,7 +104,7 @@
String immediate=children[i].getAttribute("immediate","false");
// Schedule service
- session.schedule(category, name, message);
+ scheduleService(session, category, name, message);
if ("true".equalsIgnoreCase(immediate)){
addScheduleItemToDeliver(category, name);
}
Modified: cdl/trunk/runtime/jbossesb/src/main/java/org/jboss/soa/overlord/jbossesb/stateful/actions/PerformAction.java
===================================================================
--- cdl/trunk/runtime/jbossesb/src/main/java/org/jboss/soa/overlord/jbossesb/stateful/actions/PerformAction.java 2009-05-02 05:23:35 UTC (rev 634)
+++ cdl/trunk/runtime/jbossesb/src/main/java/org/jboss/soa/overlord/jbossesb/stateful/actions/PerformAction.java 2009-05-04 16:07:35 UTC (rev 635)
@@ -108,14 +108,14 @@
message.getProperties().setProperty(MessageProperties.SESSION_PROPERTIES, properties);
}
- session.schedule(serviceCategory, serviceName, message);
+ scheduleService(session, serviceCategory, serviceName, message);
addScheduleItemToDeliver(serviceCategory, serviceName);
String returnServiceCategory = getConfig().getAttribute(RETURN_SERVICE_CATEGORY);
String returnServiceName = getConfig().getAttribute(RETURN_SERVICE_NAME);
if (returnServiceCategory != null && returnServiceName != null) {
- session.schedule(returnServiceCategory, returnServiceName, message);
+ scheduleService(session, returnServiceCategory, returnServiceName, message);
}
return message;
Modified: cdl/trunk/runtime/jbossesb/src/main/java/org/jboss/soa/overlord/jbossesb/stateful/actions/ReceiveMessageAction.java
===================================================================
--- cdl/trunk/runtime/jbossesb/src/main/java/org/jboss/soa/overlord/jbossesb/stateful/actions/ReceiveMessageAction.java 2009-05-02 05:23:35 UTC (rev 634)
+++ cdl/trunk/runtime/jbossesb/src/main/java/org/jboss/soa/overlord/jbossesb/stateful/actions/ReceiveMessageAction.java 2009-05-04 16:07:35 UTC (rev 635)
@@ -85,7 +85,7 @@
if (unscheduledServiceItem == false && isFirstOrLastConversationAction(message, true)) {
String category=getConfig().getParent().getAttribute(ActionProperties.SERVICE_CATEGORY);
String name=getConfig().getParent().getAttribute(ActionProperties.SERVICE_NAME);
- session.unschedule(category, name);
+ unscheduleService(session, category, name);
logger.debug("Finished unscheduling of [" + category + "/" + name + "]");
}
Modified: cdl/trunk/runtime/jbossesb/src/main/java/org/jboss/soa/overlord/jbossesb/stateful/actions/RetrieveSessionAction.java
===================================================================
--- cdl/trunk/runtime/jbossesb/src/main/java/org/jboss/soa/overlord/jbossesb/stateful/actions/RetrieveSessionAction.java 2009-05-02 05:23:35 UTC (rev 634)
+++ cdl/trunk/runtime/jbossesb/src/main/java/org/jboss/soa/overlord/jbossesb/stateful/actions/RetrieveSessionAction.java 2009-05-04 16:07:35 UTC (rev 635)
@@ -70,7 +70,7 @@
String serviceName=getConfig().getParent().getAttribute(ActionProperties.SERVICE_NAME);
String serviceCategory=getConfig().getParent().getAttribute(ActionProperties.SERVICE_CATEGORY);
- session.unschedule(serviceCategory, serviceName);
+ unscheduleService(session, serviceCategory, serviceName);
logger.debug("Finished retrieving session action.");
Modified: cdl/trunk/runtime/jbossesb/src/main/java/org/jboss/soa/overlord/jbossesb/stateful/actions/ScheduleStateAction.java
===================================================================
--- cdl/trunk/runtime/jbossesb/src/main/java/org/jboss/soa/overlord/jbossesb/stateful/actions/ScheduleStateAction.java 2009-05-02 05:23:35 UTC (rev 634)
+++ cdl/trunk/runtime/jbossesb/src/main/java/org/jboss/soa/overlord/jbossesb/stateful/actions/ScheduleStateAction.java 2009-05-04 16:07:35 UTC (rev 635)
@@ -63,7 +63,7 @@
String serviceCategory=getConfig().getAttribute(ActionProperties.SERVICE_CATEGORY_PROPERTY);
String immediate=getConfig().getAttribute(IMMEDIATE);
- session.schedule(serviceCategory, serviceName, message);
+ scheduleService(session, serviceCategory, serviceName, message);
if ("true".equalsIgnoreCase(immediate)) {
addScheduleItemToDeliver(serviceCategory, serviceName);
Modified: cdl/trunk/runtime/jbossesb/src/main/java/org/jboss/soa/overlord/jbossesb/stateful/actions/SendMessageAction.java
===================================================================
--- cdl/trunk/runtime/jbossesb/src/main/java/org/jboss/soa/overlord/jbossesb/stateful/actions/SendMessageAction.java 2009-05-02 05:23:35 UTC (rev 634)
+++ cdl/trunk/runtime/jbossesb/src/main/java/org/jboss/soa/overlord/jbossesb/stateful/actions/SendMessageAction.java 2009-05-04 16:07:35 UTC (rev 635)
@@ -150,6 +150,7 @@
// Send message
sendMessage = MessageFactory.getInstance().getMessage(MessageType.JBOSS_XML);
sendMessage.getBody().add(message.getBody().get());
+ sendMessage.getProperties().setProperty("org.jboss.soa.esb.exceptionOnDeliverFailure", "true");
if ((serviceCategory != null && serviceName != null)
|| (categoryExpression != null && nameExpression != null)) {
@@ -160,7 +161,7 @@
sendMessage.getHeader().getCall().setReplyTo(lepr);
// Schedule response action pipeline
- session.schedule(respServiceCategory, respServiceName, message);
+ scheduleService(session, respServiceCategory, respServiceName, message);
}
if (serviceCategory == null && serviceName == null) {
@@ -206,7 +207,7 @@
} else {
throw new Exception ("Neither ServiceInvoker nor Courier can be found to deliver message");
}
- logger.info("Message of '"+ sendMessage+"' has been sent.");
+ logger.info("Message of '"+ sendMessage.getBody().get()+"' has been sent.");
}
}
Modified: cdl/trunk/runtime/jbossesb/src/main/java/org/jboss/soa/overlord/jbossesb/stateful/actions/SwitchAction.java
===================================================================
--- cdl/trunk/runtime/jbossesb/src/main/java/org/jboss/soa/overlord/jbossesb/stateful/actions/SwitchAction.java 2009-05-02 05:23:35 UTC (rev 634)
+++ cdl/trunk/runtime/jbossesb/src/main/java/org/jboss/soa/overlord/jbossesb/stateful/actions/SwitchAction.java 2009-05-04 16:07:35 UTC (rev 635)
@@ -93,7 +93,7 @@
}
if (selected) {
- session.schedule(category, name, message);
+ scheduleService(session, category, name, message);
addScheduleItemToDeliver(category, name);
logger.info("Scheduled service of [" + category + "/" + name + "] immediately");
break;
Modified: cdl/trunk/runtime/jbossesb/src/main/java/org/jboss/soa/overlord/jbossesb/stateful/actions/WhenAction.java
===================================================================
--- cdl/trunk/runtime/jbossesb/src/main/java/org/jboss/soa/overlord/jbossesb/stateful/actions/WhenAction.java 2009-05-02 05:23:35 UTC (rev 634)
+++ cdl/trunk/runtime/jbossesb/src/main/java/org/jboss/soa/overlord/jbossesb/stateful/actions/WhenAction.java 2009-05-04 16:07:35 UTC (rev 635)
@@ -77,7 +77,7 @@
if (res instanceof Boolean) {
Boolean ret = (Boolean)res;
if (ret.booleanValue()) {
- session.schedule(category, name, message);
+ scheduleService(session, category, name, message);
addScheduleItemToDeliver(category, name);
logger.info("Scheduled item of [" + category + '/' + name + "]");
break;
Modified: cdl/trunk/runtime/jbossesb/src/main/java/org/jboss/soa/overlord/jbossesb/stateful/actions/WhileAction.java
===================================================================
--- cdl/trunk/runtime/jbossesb/src/main/java/org/jboss/soa/overlord/jbossesb/stateful/actions/WhileAction.java 2009-05-02 05:23:35 UTC (rev 634)
+++ cdl/trunk/runtime/jbossesb/src/main/java/org/jboss/soa/overlord/jbossesb/stateful/actions/WhileAction.java 2009-05-04 16:07:35 UTC (rev 635)
@@ -94,13 +94,13 @@
if (flag.booleanValue()) {
String category = whileConfig.getAttribute(ActionProperties.SERVICE_CATEGORY);
String name = whileConfig.getAttribute(ActionProperties.SERVICE_NAME);
- session.schedule(category, name, message);
+ scheduleService(session, category, name, message);
addScheduleItemToDeliver(category, name);
logger.info("Scheduled items of [" + category + "/" + name + "].");
} else {
String category = exitConfig.getAttribute(ActionProperties.SERVICE_CATEGORY);
String name = exitConfig.getAttribute(ActionProperties.SERVICE_NAME);
- session.schedule(category, name, message);
+ scheduleService(session, category, name, message);
addScheduleItemToDeliver(category, name);
logger.info("Scheduled items of [" + category + "/" + name + "].");
}
Added: cdl/trunk/runtime/jbossesb-assembly/src/test/resources/overlord-cdl-jbossesb.mysql.cfg.xml
===================================================================
--- cdl/trunk/runtime/jbossesb-assembly/src/test/resources/overlord-cdl-jbossesb.mysql.cfg.xml (rev 0)
+++ cdl/trunk/runtime/jbossesb-assembly/src/test/resources/overlord-cdl-jbossesb.mysql.cfg.xml 2009-05-04 16:07:35 UTC (rev 635)
@@ -0,0 +1,66 @@
+<!DOCTYPE hibernate-configuration SYSTEM
+"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
+<!--
+ 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,
+ @author JBoss Inc.
+-->
+<hibernate-configuration>
+ <session-factory>
+ <property name="hibernate.connection.driver_class">
+ com.mysql.jdbc.Driver
+ </property>
+ <property name="hibernate.connection.url">
+ jdbc:mysql://localhost:3306/cdlDB
+ </property>
+ <property name="hibernate.connection.username">
+ root
+ </property>
+ <property name="hibernate.connection.password">
+ </property>
+
+ <property name="hibernate.dialect">org.hibernate.dialect.MySQLInnoDBDialect</property>
+
+ <!-- DataSource properties (begin) === -->
+ <!-- property name="hibernate.connection.datasource">java:/cdlDS</property-->
+ <!-- ==== DataSource properties (end) -->
+
+
+ <!-- Use the C3P0 connection pool provider -->
+ <property name="hibernate.c3p0.min_size">5</property>
+ <property name="hibernate.c3p0.max_size">20</property>
+ <property name="hibernate.c3p0.timeout">300</property>
+ <property name="hibernate.c3p0.max_statements">50</property>
+ <property name="hibernate.c3p0.idle_test_period">3000</property>
+
+ <property name="current_session_context_class">thread</property>
+ <property name="hibernate.connection.isolation">4</property>
+
+ <!-- Show and print nice SQL on stdout -->
+ <property name="show_sql">false</property>
+ <property name="format_sql">true</property>
+
+ <!-- List of annotationed classes (Internal conversation class)-->
+ <mapping class="org.jboss.soa.overlord.jbossesb.stateful.Session" />
+ <mapping class="org.jboss.soa.overlord.jbossesb.stateful.ScheduleItem"/>
+ <mapping class="org.jboss.soa.overlord.jbossesb.stateful.JoinState"/>
+ <mapping class="org.jboss.soa.overlord.jbossesb.stateful.Identity"/>
+ <mapping class="org.jboss.soa.overlord.jbossesb.stateful.EPRWrapper"/>
+
+ </session-factory>
+</hibernate-configuration>
Modified: cdl/trunk/samples/jbossesb/brokerage/broker/stateful/src/main/java/org/jboss/soa/overlord/samples/jbossesb/loan/broker/SetRequestQuoteMessageAction.java
===================================================================
--- cdl/trunk/samples/jbossesb/brokerage/broker/stateful/src/main/java/org/jboss/soa/overlord/samples/jbossesb/loan/broker/SetRequestQuoteMessageAction.java 2009-05-02 05:23:35 UTC (rev 634)
+++ cdl/trunk/samples/jbossesb/brokerage/broker/stateful/src/main/java/org/jboss/soa/overlord/samples/jbossesb/loan/broker/SetRequestQuoteMessageAction.java 2009-05-04 16:07:35 UTC (rev 635)
@@ -48,7 +48,7 @@
message.getBody().add("<requestForQuote id=\"" + idValue +"\" supplierDesc=\"" + serviceDescription+ "\" ></requestForQuote>");
- logger.info("Set 'requestForQuote' : "+message);
+ logger.info("Set 'requestForQuote' : "+message.getBody().get());
return message;
}
Modified: cdl/trunk/samples/jbossesb/common/creditAgency/stateful/src/main/java/com/acme/services/creditAgency/SetCreditCheckInvalidMessageAction.java
===================================================================
--- cdl/trunk/samples/jbossesb/common/creditAgency/stateful/src/main/java/com/acme/services/creditAgency/SetCreditCheckInvalidMessageAction.java 2009-05-02 05:23:35 UTC (rev 634)
+++ cdl/trunk/samples/jbossesb/common/creditAgency/stateful/src/main/java/com/acme/services/creditAgency/SetCreditCheckInvalidMessageAction.java 2009-05-04 16:07:35 UTC (rev 635)
@@ -42,7 +42,7 @@
String idValue = node.getAttributes().getNamedItem("id").getNodeValue();
message.getBody().add("<CreditCheckInvalid id=\"" + idValue +"\"></CreditCheckInvalid>");
- logger.info("Updated credit message: "+message);
+ logger.info("Updated credit message: " + message.getBody().get());
return(message);
}
Modified: cdl/trunk/samples/jbossesb/common/creditAgency/stateless/src/main/java/com/acme/services/creditAgency/SetCreditCheckInvalidMessageAction.java
===================================================================
--- cdl/trunk/samples/jbossesb/common/creditAgency/stateless/src/main/java/com/acme/services/creditAgency/SetCreditCheckInvalidMessageAction.java 2009-05-02 05:23:35 UTC (rev 634)
+++ cdl/trunk/samples/jbossesb/common/creditAgency/stateless/src/main/java/com/acme/services/creditAgency/SetCreditCheckInvalidMessageAction.java 2009-05-04 16:07:35 UTC (rev 635)
@@ -42,7 +42,7 @@
String idValue = node.getAttributes().getNamedItem("id").getNodeValue();
message.getBody().add("<CreditCheckInvalid id=\"" + idValue +"\"></CreditCheckInvalid>");
- logger.info("Updated credit message: "+message);
+ logger.info("Updated credit message: " + message.getBody().get());
return(message);
}
Modified: cdl/trunk/samples/jbossesb/purchasing/store/stateful/src/main/java/com/acme/services/broker/SetBuyFailedMessageAction.java
===================================================================
--- cdl/trunk/samples/jbossesb/purchasing/store/stateful/src/main/java/com/acme/services/broker/SetBuyFailedMessageAction.java 2009-05-02 05:23:35 UTC (rev 634)
+++ cdl/trunk/samples/jbossesb/purchasing/store/stateful/src/main/java/com/acme/services/broker/SetBuyFailedMessageAction.java 2009-05-04 16:07:35 UTC (rev 635)
@@ -46,7 +46,7 @@
message.getBody().add("<BuyFailed id=\"" + idValue +"\"></BuyFailed>");
- logger.info("Updated buy message: "+message);
+ logger.info("Updated buy message: "+message.getBody().get());
return(message);
}
Modified: cdl/trunk/samples/jbossesb/purchasing/store/stateful/src/main/java/com/acme/services/broker/SetBuyResponseMessageAction.java
===================================================================
--- cdl/trunk/samples/jbossesb/purchasing/store/stateful/src/main/java/com/acme/services/broker/SetBuyResponseMessageAction.java 2009-05-02 05:23:35 UTC (rev 634)
+++ cdl/trunk/samples/jbossesb/purchasing/store/stateful/src/main/java/com/acme/services/broker/SetBuyResponseMessageAction.java 2009-05-04 16:07:35 UTC (rev 635)
@@ -42,7 +42,7 @@
String idValue = node.getAttributes().getNamedItem("id").getNodeValue();
message.getBody().add("<BuyConfirmed id=\"" + idValue +"\"></BuyConfirmed>");
- logger.info("Updated buy message: "+message);
+ logger.info("Updated buy message: "+message.getBody().get());
return(message);
}
Modified: cdl/trunk/samples/jbossesb/purchasing/store/stateful/src/main/java/com/acme/services/broker/SetCreditCheckRequestMessageAction.java
===================================================================
--- cdl/trunk/samples/jbossesb/purchasing/store/stateful/src/main/java/com/acme/services/broker/SetCreditCheckRequestMessageAction.java 2009-05-02 05:23:35 UTC (rev 634)
+++ cdl/trunk/samples/jbossesb/purchasing/store/stateful/src/main/java/com/acme/services/broker/SetCreditCheckRequestMessageAction.java 2009-05-04 16:07:35 UTC (rev 635)
@@ -42,7 +42,7 @@
String idValue = node.getAttributes().getNamedItem("id").getNodeValue();
message.getBody().add("<CreditCheckRequest id=\"" + idValue +"\"></CreditCheckRequest>");
- logger.info("Updated credit check request message: "+message);
+ logger.info("Updated credit check request message: "+message.getBody().get());
return(message);
}
Modified: cdl/trunk/samples/jbossesb/purchasing/store/stateless/src/main/java/com/acme/services/broker/SetBuyFailedMessageAction.java
===================================================================
--- cdl/trunk/samples/jbossesb/purchasing/store/stateless/src/main/java/com/acme/services/broker/SetBuyFailedMessageAction.java 2009-05-02 05:23:35 UTC (rev 634)
+++ cdl/trunk/samples/jbossesb/purchasing/store/stateless/src/main/java/com/acme/services/broker/SetBuyFailedMessageAction.java 2009-05-04 16:07:35 UTC (rev 635)
@@ -46,7 +46,7 @@
message.getBody().add("<BuyFailed id=\"" + idValue +"\"></BuyFailed>");
- logger.info("Updated buy message: "+message);
+ logger.info("Updated buy message: " + message.getBody().get());
return(message);
}
Modified: cdl/trunk/samples/jbossesb/purchasing/store/stateless/src/main/java/com/acme/services/broker/SetBuyResponseMessageAction.java
===================================================================
--- cdl/trunk/samples/jbossesb/purchasing/store/stateless/src/main/java/com/acme/services/broker/SetBuyResponseMessageAction.java 2009-05-02 05:23:35 UTC (rev 634)
+++ cdl/trunk/samples/jbossesb/purchasing/store/stateless/src/main/java/com/acme/services/broker/SetBuyResponseMessageAction.java 2009-05-04 16:07:35 UTC (rev 635)
@@ -42,7 +42,7 @@
String idValue = node.getAttributes().getNamedItem("id").getNodeValue();
message.getBody().add("<BuyConfirmed id=\"" + idValue +"\"></BuyConfirmed>");
- logger.info("Updated buy message: "+message);
+ logger.info("Updated buy message: " + message.getBody().get());
return(message);
}
Modified: cdl/trunk/samples/jbossesb/purchasing/store/stateless/src/main/java/com/acme/services/broker/SetCreditCheckRequestMessageAction.java
===================================================================
--- cdl/trunk/samples/jbossesb/purchasing/store/stateless/src/main/java/com/acme/services/broker/SetCreditCheckRequestMessageAction.java 2009-05-02 05:23:35 UTC (rev 634)
+++ cdl/trunk/samples/jbossesb/purchasing/store/stateless/src/main/java/com/acme/services/broker/SetCreditCheckRequestMessageAction.java 2009-05-04 16:07:35 UTC (rev 635)
@@ -42,7 +42,7 @@
String idValue = node.getAttributes().getNamedItem("id").getNodeValue();
message.getBody().add("<CreditCheckRequest id=\"" + idValue +"\"></CreditCheckRequest>");
- logger.info("Updated credit check request message: "+message);
+ logger.info("Updated credit check request message: " + message.getBody().get());
return(message);
}
Modified: cdl/trunk/samples/pom.xml
===================================================================
--- cdl/trunk/samples/pom.xml 2009-05-02 05:23:35 UTC (rev 634)
+++ cdl/trunk/samples/pom.xml 2009-05-04 16:07:35 UTC (rev 635)
@@ -16,7 +16,7 @@
<properties>
<deploy.dir>/var/local/jboss-4.2.2.GA/server/default/deploy</deploy.dir>
- <cdl.jbossesb.version>1.0-SNAPSHOT</cdl.jbossesb.version>
+ <cdl.jbossesb.version>1.0-M2</cdl.jbossesb.version>
</properties>
More information about the overlord-commits
mailing list