Overlord SVN: r125 - cdl/trunk/tools.
by overlord-commits@lists.jboss.org
Author: objectiser
Date: 2008-07-07 07:29:02 -0400 (Mon, 07 Jul 2008)
New Revision: 125
Added:
cdl/trunk/tools/features/
Log:
Initial import.
15 years, 11 months
Overlord SVN: r124 - in cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src: java/org/jboss/tools/overlord/jbossesb/model/actions and 2 other directories.
by overlord-commits@lists.jboss.org
Author: objectiser
Date: 2008-07-07 06:53:57 -0400 (Mon, 07 Jul 2008)
New Revision: 124
Added:
cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/DefaultConversionContextTest.java
Modified:
cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/DefaultConversionContext.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/CreateSessionAction.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/Messages.properties
cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/CreateSessionActionTest.java
Log:
Conversion context unit tests.
Modified: cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/DefaultConversionContext.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/DefaultConversionContext.java 2008-07-07 10:13:28 UTC (rev 123)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/DefaultConversionContext.java 2008-07-07 10:53:57 UTC (rev 124)
@@ -114,7 +114,7 @@
* This method determines whether the ESB service is a join
* state.
*
- * @param service The serviice
+ * @param service The service
* @return Whether the service is a join state
*/
public boolean isJoin(ESBService service) {
Modified: cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/CreateSessionAction.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/CreateSessionAction.java 2008-07-07 10:13:28 UTC (rev 123)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/CreateSessionAction.java 2008-07-07 10:53:57 UTC (rev 124)
@@ -76,13 +76,25 @@
}
// If service is root, then need to defined conversation type
- if (getService().isRoot() &&
- getService().getConversationType() == null) {
- l.error(this, org.scribble.util.MessageUtil.format(
+ if (getService().isRoot()) {
+ if (getService().getConversationType() == null) {
+ l.error(this, org.scribble.util.MessageUtil.format(
java.util.PropertyResourceBundle.getBundle(
"org.jboss.tools.overlord.jbossesb.model.actions.Messages"),
"_NOT_SPECIFIED_CONVERSATION_TYPE",
new String[]{}), null);
+ } else {
+ int index=getService().getConversationType().indexOf('@');
+ String convType=getService().getConversationType().trim();
+
+ if (index == -1 || index == convType.length()-1) {
+ l.error(this, org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.jbossesb.model.actions.Messages"),
+ "_NOT_SPECIFIED_CONVERSATION_TYPE_ROLE",
+ new String[]{convType}), null);
+ }
+ }
}
}
Modified: cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/Messages.properties
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/Messages.properties 2008-07-07 10:13:28 UTC (rev 123)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/Messages.properties 2008-07-07 10:53:57 UTC (rev 124)
@@ -27,6 +27,7 @@
_NOT_FOUND_VARIABLE=Variable '{0}' could not be found on session type '{1}'
_NOT_FOUND_PERFORM_CREATE_SESSION=Perform action can only invoke a service descriptor that starts with a CreateSessionAction
_NOT_SPECIFIED_CONVERSATION_TYPE=Conversation type must be specified on root service descriptor
+_NOT_SPECIFIED_CONVERSATION_TYPE_ROLE=Conversation type '{0}' must specify a role name following the '@' symbol
_NOT_SPECIFIED_REQ_RESP_EPR=Send does not contain request service category/name or response client EPR
_MUST_BE_FIRST_ACTION='{0}' action must be first in the service descriptor
_MUST_SPECIFY_STATE_OR_MESSAGE_EXPRESSION=Must specify either a State OR Message based expression
Added: cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/DefaultConversionContextTest.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/DefaultConversionContextTest.java (rev 0)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/DefaultConversionContextTest.java 2008-07-07 10:53:57 UTC (rev 124)
@@ -0,0 +1,113 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2008, Red Hat Middleware LLC, and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+ * PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
+ * You should have received a copy of the GNU Lesser General Public License,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA 02110-1301, USA.
+ */
+package org.jboss.tools.overlord.jbossesb.model;
+
+import junit.framework.TestCase;
+
+public class DefaultConversionContextTest extends TestCase {
+
+ public void testIsJoin() {
+ DefaultESBService service=new DefaultESBService(null, null);
+
+ DefaultConversionContext context=new DefaultConversionContext(null);
+ context.markJoin(service);
+
+ if (context.isJoin(service) == false) {
+ fail("Service should be join");
+ }
+ }
+
+ public void testIsJoinFalse() {
+ DefaultESBService service=new DefaultESBService(null, null);
+
+ DefaultConversionContext context=new DefaultConversionContext(null);
+
+ if (context.isJoin(service)) {
+ fail("Service should not be join");
+ }
+ }
+
+ public void testJoinProcessing() {
+ DefaultESBService service=new DefaultESBService(null, null);
+
+ DefaultConversionContext context=new DefaultConversionContext(null);
+ context.markJoin(service);
+
+ if (context.isJoin(service) == false) {
+ fail("Service should be join");
+ }
+
+ context.processing(service);
+
+ if (context.isJoin(service)) {
+ fail("Service should no longer be marked as join");
+ }
+ }
+
+ public void testIsOnStack() {
+ DefaultESBService service=new DefaultESBService(null, null);
+
+ DefaultConversionContext context=new DefaultConversionContext(null);
+ context.push(service);
+
+ if (context.isOnStack(service) == false) {
+ fail("Service should be on stack");
+ }
+ }
+
+ public void testIsOnStackFalse() {
+ DefaultESBService service=new DefaultESBService(null, null);
+
+ DefaultConversionContext context=new DefaultConversionContext(null);
+
+ if (context.isOnStack(service)) {
+ fail("Service should not be on stack");
+ }
+ }
+
+ public void testStackPushPop() {
+ DefaultESBService service=new DefaultESBService(null, null);
+
+ DefaultConversionContext context=new DefaultConversionContext(null);
+ context.push(service);
+
+ if (context.isOnStack(service) == false) {
+ fail("Service should be on stack");
+ }
+
+ context.pop(service);
+
+ if (context.isOnStack(service)) {
+ fail("Service should no longer be on stack after pop");
+ }
+ }
+
+ public void testGetRole() {
+ String role="myRole";
+
+ DefaultConversionContext context=new DefaultConversionContext(role);
+
+ if (context.getRole() == null) {
+ fail("Role is null");
+ }
+
+ if (context.getRole().equals(role) == false) {
+ fail("Role should be '"+role+"', but got: "+context.getRole());
+ }
+ }
+}
Modified: cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/CreateSessionActionTest.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/CreateSessionActionTest.java 2008-07-07 10:13:28 UTC (rev 123)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/CreateSessionActionTest.java 2008-07-07 10:53:57 UTC (rev 124)
@@ -95,6 +95,8 @@
}
public void testValidateRootWithConversationType() {
+ String convType="test.Type@MyRole";
+
TestESBService service=new TestESBService();
service.setRoot(true);
@@ -102,9 +104,9 @@
model.addService(service);
java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put("conversationType", "test.Type");
+ props.put("conversationType", convType);
- service.setConversationType("test.Type");
+ service.setConversationType(convType);
org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
@@ -123,6 +125,44 @@
}
}
+
+ public void testValidateRootWithConversationTypeNoRole() {
+ String convType="test.Type";
+
+ TestESBService service=new TestESBService();
+ service.setRoot(true);
+
+ TestESBLanguageModel model=new TestESBLanguageModel();
+ model.addService(service);
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put("conversationType", convType);
+
+ service.setConversationType(convType);
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
+
+ CreateSessionAction action=new CreateSessionAction(service, elem);
+
+ service.getActions().add(action);
+
+ service.setModel(model);
+
+ TestModelListener l=new TestModelListener();
+
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.jbossesb.model.actions.Messages"),
+ "_NOT_SPECIFIED_CONVERSATION_TYPE_ROLE",
+ new String[]{convType}));
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
public void testIsCreateSession() {
TestESBService service=new TestESBService();
15 years, 11 months
Overlord SVN: r123 - in cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src: java/org/jboss/tools/overlord/jbossesb/model/actions and 2 other directories.
by overlord-commits@lists.jboss.org
Author: objectiser
Date: 2008-07-07 06:13:28 -0400 (Mon, 07 Jul 2008)
New Revision: 123
Added:
cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/DefaultESBServiceTest.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/TestESBAction.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/TestModelListener.java
Removed:
cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/TestModelListener.java
Modified:
cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/DefaultESBService.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/ESBAction.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/AbstractESBAction.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/CreateSessionAction.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/CreateSessionActionTest.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/IfActionTest.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/MessageRouterActionTest.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/ParallelActionTest.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/PerformActionTest.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/ReceiveMessageActionTest.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/RetrieveSessionActionTest.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/ScheduleStateActionTest.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/SendMessageActionTest.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/SetMessageActionTest.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/SetStateActionTest.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/SwitchActionTest.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/WhenActionTest.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/WhileActionTest.java
Log:
Added unit tests related to ESBService plus some additional tests for each of the actions.
Modified: cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/DefaultESBService.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/DefaultESBService.java 2008-07-04 14:48:55 UTC (rev 122)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/DefaultESBService.java 2008-07-07 10:13:28 UTC (rev 123)
@@ -35,13 +35,12 @@
*/
public class DefaultESBService extends ModelObject implements ESBService {
+ protected static final String ROOT_PROPERTY = "root";
+ protected static final String BUSINESS_OBJECT_TYPE_PROPERTY = "session";
+ protected static final String CONVERSATION_TYPE_PROPERTY = "conversationType";
+ protected static final String SERVICE_NAME_PROPERTY = "serviceName";
+ private static final String SERVICE_ANNOTATION = "org.jboss.soa.overlord.jbossesb.actions.Service";
private static final String SERVICE_ELEMENT = "service";
- private static final String SERVICE_NAME_PROPERTY = "serviceName";
- private static final String ROOT_PROPERTY = "root";
- private static final String BUSINESS_OBJECT_TYPE_PROPERTY = "session";
- private static final String CONVERSATION_TYPE_PROPERTY = "conversationType";
- private static final String ACTION_PACKAGE = "org.jboss.soa.overlord.jbossesb.actions.";
- private static final String CREATE_SESSION_ACTION_CLASS = "org.jboss.soa.overlord.jbossesb.actions.CreateSessionAction";
private static final String RETRIEVE_SESSION_ACTION_CLASS = "org.jboss.soa.overlord.jbossesb.actions.RetrieveSessionAction";
private static final String ACTION_ELEMENT = "action";
private static final String ACTIONS_ELEMENT = "actions";
@@ -206,13 +205,13 @@
i < annotations.length; i++) {
try {
if (annotations[i].annotationType().getName().equals(
- "org.jboss.soa.overlord.jbossesb.actions.Service")) {
+ SERVICE_ANNOTATION)) {
ret = annotations[i];
}
} catch(Throwable ex) {
- // Ignore
- System.err.println("ANNOTATION: "+annotations[i].annotationType());
- ex.printStackTrace();
+ logger.log(java.util.logging.Level.SEVERE,
+ "ANNOTATION: "+
+ annotations[i].annotationType(), ex);
}
}
@@ -251,8 +250,8 @@
boolean ret=false;
ESBAction action=getFirstSessionBasedAction();
- if (action != null && action.getActionClass() != null) {
- if (action.getActionClass().equals(CREATE_SESSION_ACTION_CLASS)) {
+ if (action != null) {
+ if (action.isCreateSession()) {
String bool=action.getPropertyValue(ROOT_PROPERTY);
if (bool != null) {
ret = bool.equalsIgnoreCase("true");
@@ -265,7 +264,8 @@
if (annotation != null) {
try {
java.lang.reflect.Method method=
- annotation.getClass().getMethod("root", (Class<?>[])null);
+ annotation.getClass().getMethod(ROOT_PROPERTY,
+ (Class<?>[])null);
Object val=method.invoke(annotation, (Object[])null);
@@ -294,10 +294,8 @@
boolean ret=false;
ESBAction action=getFirstSessionBasedAction();
- if (action != null && action.getActionClass() != null) {
- if (action.getActionClass().equals(CREATE_SESSION_ACTION_CLASS)) {
- ret = true;
- }
+ if (action != null) {
+ ret = action.isCreateSession();
}
return(ret);
@@ -334,8 +332,8 @@
ESBAction action=getFirstSessionBasedAction();
if (action != null) {
- if (action.getActionClass().equals(CREATE_SESSION_ACTION_CLASS) ||
- action.getActionClass().equals(RETRIEVE_SESSION_ACTION_CLASS)) {
+ if (action.isCreateSession() || (action.getActionClass() != null &&
+ action.getActionClass().equals(RETRIEVE_SESSION_ACTION_CLASS))) {
ret = action.getPropertyValue(SERVICE_NAME_PROPERTY);
if (ret == null) {
@@ -377,7 +375,7 @@
ESBAction action=getFirstSessionBasedAction();
if (action != null) {
- if (action.getActionClass().equals(CREATE_SESSION_ACTION_CLASS)) {
+ if (action.isCreateSession()) {
ret = action.getPropertyValue(CONVERSATION_TYPE_PROPERTY);
if (ret == null) {
@@ -389,7 +387,8 @@
if (annotation != null) {
try {
java.lang.reflect.Method method=
- annotation.getClass().getMethod("conversationType", (Class<?>[])null);
+ annotation.getClass().getMethod(CONVERSATION_TYPE_PROPERTY,
+ (Class<?>[])null);
Object val=method.invoke(annotation, (Object[])null);
@@ -418,8 +417,7 @@
String ret=null;
ESBAction action=getFirstSessionBasedAction();
- if (action != null &&
- action.getActionClass().startsWith(ACTION_PACKAGE)) {
+ if (action != null) {
ret = action.getPropertyValue(BUSINESS_OBJECT_TYPE_PROPERTY);
}
Modified: cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/ESBAction.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/ESBAction.java 2008-07-04 14:48:55 UTC (rev 122)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/ESBAction.java 2008-07-07 10:13:28 UTC (rev 123)
@@ -56,6 +56,14 @@
public boolean isSessionBased();
/**
+ * This method determines whether the ESB action represents
+ * a CreateSessionAction.
+ *
+ * @return Whether the action is a CreateSessionAction
+ */
+ public boolean isCreateSession();
+
+ /**
* This method indicates whether this action performs another
* sub-conversation.
*
Modified: cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/AbstractESBAction.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/AbstractESBAction.java 2008-07-04 14:48:55 UTC (rev 122)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/AbstractESBAction.java 2008-07-07 10:13:28 UTC (rev 123)
@@ -201,6 +201,16 @@
}
/**
+ * This method determines whether the ESB action represents
+ * a CreateSessionAction.
+ *
+ * @return Whether the action is a CreateSessionAction
+ */
+ public boolean isCreateSession() {
+ return(false);
+ }
+
+ /**
* This method indicates whether this action performs another
* sub-conversation.
*
Modified: cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/CreateSessionAction.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/CreateSessionAction.java 2008-07-04 14:48:55 UTC (rev 122)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/CreateSessionAction.java 2008-07-07 10:13:28 UTC (rev 123)
@@ -29,8 +29,6 @@
*/
public class CreateSessionAction extends AbstractESBAction {
- private static final String CONVERSATION_TYPE = "conversationType";
-
/**
* The constructor for the action.
*
@@ -44,6 +42,16 @@
}
/**
+ * This method determines whether the ESB action represents
+ * a CreateSessionAction.
+ *
+ * @return Whether the action is a CreateSessionAction
+ */
+ public boolean isCreateSession() {
+ return(true);
+ }
+
+ /**
* This method validates the ESB action and reports warnings or
* errors to the supplied model listener.
*
Added: cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/DefaultESBServiceTest.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/DefaultESBServiceTest.java (rev 0)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/DefaultESBServiceTest.java 2008-07-07 10:13:28 UTC (rev 123)
@@ -0,0 +1,219 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2008, Red Hat Middleware LLC, and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+ * PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
+ * You should have received a copy of the GNU Lesser General Public License,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA 02110-1301, USA.
+ */
+package org.jboss.tools.overlord.jbossesb.model;
+
+import junit.framework.TestCase;
+
+public class DefaultESBServiceTest extends TestCase {
+
+ public void testValidateSessionClassRequired() {
+ DefaultESBService service=new DefaultESBService(null, null);
+
+ TestESBAction act1=new TestESBAction();
+ act1.setSessionBased(true);
+
+ service.getActions().add(act1);
+
+ TestModelListener l=new TestModelListener();
+
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.jbossesb.model.Messages"),
+ "_NOT_SPECIFIED_SESSION_CLASS",
+ new String[]{}));
+
+ service.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testValidateSessionClassNotRequired() {
+ DefaultESBService service=new DefaultESBService(null, null);
+
+ TestModelListener l=new TestModelListener();
+
+ service.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testIsLoop() {
+ DefaultESBService service=new DefaultESBService(null, null);
+
+ TestESBAction act1=new TestESBAction();
+ act1.setSessionBased(true);
+ act1.setLoop(true);
+
+ service.getActions().add(act1);
+
+ if (service.isLoop() == false) {
+ fail("Service should be loop");
+ }
+ }
+
+ public void testIsLoopFalse() {
+ DefaultESBService service=new DefaultESBService(null, null);
+
+ TestESBAction act1=new TestESBAction();
+ act1.setSessionBased(true);
+
+ service.getActions().add(act1);
+
+ if (service.isLoop()) {
+ fail("Service is not a loop");
+ }
+ }
+
+ public void testIsRoot() {
+ DefaultESBService service=new DefaultESBService(null, null);
+
+ TestESBAction act1=new TestESBAction();
+ act1.setSessionBased(true);
+ act1.setCreateSession(true);
+ act1.setPropertyValue(DefaultESBService.ROOT_PROPERTY, "true");
+
+ service.getActions().add(act1);
+
+ if (service.isRoot() == false) {
+ fail("Service should be root");
+ }
+ }
+
+ public void testIsRootFalse() {
+ DefaultESBService service=new DefaultESBService(null, null);
+
+ TestESBAction act1=new TestESBAction();
+
+ service.getActions().add(act1);
+
+ if (service.isRoot()) {
+ fail("Service should NOT be root");
+ }
+ }
+
+ public void testIsSessionBased() {
+ DefaultESBService service=new DefaultESBService(null, null);
+
+ TestESBAction act1=new TestESBAction();
+ act1.setSessionBased(true);
+
+ service.getActions().add(act1);
+
+ if (service.isSessionBased() == false) {
+ fail("Service should be SessionBased");
+ }
+ }
+
+ public void testIsSessionBasedFalse() {
+ DefaultESBService service=new DefaultESBService(null, null);
+
+ TestESBAction act1=new TestESBAction();
+
+ service.getActions().add(act1);
+
+ if (service.isSessionBased()) {
+ fail("Service should NOT be SessionBased");
+ }
+ }
+
+ public void testIsCreateSession() {
+ DefaultESBService service=new DefaultESBService(null, null);
+
+ TestESBAction act1=new TestESBAction();
+ act1.setSessionBased(true);
+ act1.setCreateSession(true);
+
+ service.getActions().add(act1);
+
+ if (service.isCreateSession() == false) {
+ fail("Service should be 'create session'");
+ }
+ }
+
+ public void testIsCreateSessionFalse() {
+ DefaultESBService service=new DefaultESBService(null, null);
+
+ TestESBAction act1=new TestESBAction();
+
+ service.getActions().add(act1);
+
+ if (service.isCreateSession()) {
+ fail("Service should NOT be 'create session'");
+ }
+ }
+
+ public void testGetServiceName() {
+ String name="serviceName1";
+
+ DefaultESBService service=new DefaultESBService(null, null);
+
+ TestESBAction act1=new TestESBAction();
+ act1.setSessionBased(true);
+ act1.setCreateSession(true);
+ act1.setPropertyValue(DefaultESBService.SERVICE_NAME_PROPERTY,
+ name);
+
+ service.getActions().add(act1);
+
+ if (service.getServiceName().equals(name) == false) {
+ fail("Service name '"+service.getServiceName()+
+ "' invalid, expecting: "+name);
+ }
+ }
+
+ public void testGetConversationType() {
+ String name="convType1";
+
+ DefaultESBService service=new DefaultESBService(null, null);
+
+ TestESBAction act1=new TestESBAction();
+ act1.setSessionBased(true);
+ act1.setCreateSession(true);
+ act1.setPropertyValue(DefaultESBService.CONVERSATION_TYPE_PROPERTY,
+ name);
+
+ service.getActions().add(act1);
+
+ if (service.getConversationType().equals(name) == false) {
+ fail("Conversation type '"+service.getConversationType()+
+ "' invalid, expecting: "+name);
+ }
+ }
+
+ public void testGetSessionName() {
+ String name="session1";
+
+ DefaultESBService service=new DefaultESBService(null, null);
+
+ TestESBAction act1=new TestESBAction();
+ act1.setSessionBased(true);
+ act1.setPropertyValue(DefaultESBService.BUSINESS_OBJECT_TYPE_PROPERTY,
+ name);
+
+ service.getActions().add(act1);
+
+ if (service.getSessionName().equals(name) == false) {
+ fail("Session name '"+service.getSessionName()+
+ "' invalid, expecting: "+name);
+ }
+ }
+}
Added: cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/TestESBAction.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/TestESBAction.java (rev 0)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/TestESBAction.java 2008-07-07 10:13:28 UTC (rev 123)
@@ -0,0 +1,94 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2008, Red Hat Middleware LLC, and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+ * PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
+ * You should have received a copy of the GNU Lesser General Public License,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA 02110-1301, USA.
+ */
+package org.jboss.tools.overlord.jbossesb.model;
+
+import java.util.List;
+
+import org.scribble.model.Activity;
+import org.scribble.model.ModelListener;
+import org.w3c.dom.Element;
+
+public class TestESBAction implements ESBAction {
+
+ public void convert(List<Activity> activities, ConversionContext context) {
+ // TODO Auto-generated method stub
+
+ }
+
+ public Element getAction() {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+ public String getActionClass() {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+ public String getPropertyValue(String property) {
+ return(m_property.get(property));
+ }
+
+ public void setPropertyValue(String property, String value) {
+ m_property.put(property, value);
+ }
+
+ public void initializeLinks() {
+ // TODO Auto-generated method stub
+
+ }
+
+ public boolean isLoop() {
+ return(m_loop);
+ }
+
+ public void setLoop(boolean bool) {
+ m_loop = bool;
+ }
+
+ public boolean isPerform() {
+ // TODO Auto-generated method stub
+ return false;
+ }
+
+ public boolean isSessionBased() {
+ return(m_sessionBased);
+ }
+
+ public void setSessionBased(boolean bool) {
+ m_sessionBased = bool;
+ }
+
+ public boolean isCreateSession() {
+ return(m_createSession);
+ }
+
+ public void setCreateSession(boolean bool) {
+ m_createSession = bool;
+ }
+
+ public void validate(ModelListener l) {
+ // TODO Auto-generated method stub
+
+ }
+
+ private boolean m_sessionBased=false;
+ private boolean m_loop=false;
+ private boolean m_createSession=false;
+ private java.util.Map<String,String> m_property=new java.util.Hashtable<String, String>();
+}
Copied: cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/TestModelListener.java (from rev 122, cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/TestModelListener.java)
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/TestModelListener.java (rev 0)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/TestModelListener.java 2008-07-07 10:13:28 UTC (rev 123)
@@ -0,0 +1,84 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2008, Red Hat Middleware LLC, and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+ * PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
+ * You should have received a copy of the GNU Lesser General Public License,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA 02110-1301, USA.
+ */
+package org.jboss.tools.overlord.jbossesb.model;
+
+import java.util.Properties;
+
+import org.scribble.model.ModelObject;
+
+public class TestModelListener implements org.scribble.model.ModelListener {
+
+ public void error(ModelObject modelObject, String mesg, Properties props) {
+ reported(mesg);
+ }
+
+ public void warning(ModelObject modelObject, String mesg, Properties props) {
+ reported(mesg);
+ }
+
+ protected void reported(String mesg) {
+ if (mesg != null) {
+
+ // Check if in the list of messages to be
+ // detected
+ if (m_errorsToDetect.contains(mesg)) {
+ m_errorsToDetect.remove(mesg);
+ } else {
+ m_unexpectedErrors.add(mesg);
+ }
+ }
+ }
+
+ public void addExpectedError(String mesg) {
+ m_errorsToDetect.add(mesg);
+ }
+
+ public boolean isValid() {
+ // If there are no more errors to detect, and no
+ // unexpected errors have been reported, then
+ // the expression has been validated as expected
+ return(m_errorsToDetect.size() == 0 &&
+ m_unexpectedErrors.size() == 0);
+ }
+
+ public String invalidMessage() {
+ String ret="\r\n";
+
+ if (m_errorsToDetect.size() > 0) {
+ ret += "Errors not detected:\r\n";
+
+ for (int i=0; i < m_errorsToDetect.size(); i++) {
+ ret += m_errorsToDetect.get(i)+"\r\n";
+ }
+ }
+
+ if (m_unexpectedErrors.size() > 0) {
+ ret += "Unexpected Errors:\r\n";
+
+ for (int i=0; i < m_unexpectedErrors.size(); i++) {
+ ret += m_unexpectedErrors.get(i)+"\r\n";
+ }
+ }
+
+ return(ret);
+ }
+
+ private java.util.List<String> m_errorsToDetect=new java.util.Vector<String>();
+ private java.util.List<String> m_unexpectedErrors=new java.util.Vector<String>();
+ private java.util.List<String> m_messages=new java.util.Vector<String>();
+}
Modified: cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/CreateSessionActionTest.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/CreateSessionActionTest.java 2008-07-04 14:48:55 UTC (rev 122)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/CreateSessionActionTest.java 2008-07-07 10:13:28 UTC (rev 123)
@@ -17,6 +17,8 @@
*/
package org.jboss.tools.overlord.jbossesb.model.actions;
+import org.jboss.tools.overlord.jbossesb.model.TestModelListener;
+
import junit.framework.TestCase;
public class CreateSessionActionTest extends TestCase {
@@ -120,4 +122,24 @@
fail(l.invalidMessage());
}
}
+
+ public void testIsCreateSession() {
+ TestESBService service=new TestESBService();
+
+ CreateSessionAction action=new CreateSessionAction(service, null);
+
+ if (action.isCreateSession() == false) {
+ fail("Action is not flagged as a 'CreateSession'");
+ }
+ }
+
+ public void testIsSessionBased() {
+ TestESBService service=new TestESBService();
+
+ CreateSessionAction action=new CreateSessionAction(service, null);
+
+ if (action.isSessionBased() == false) {
+ fail("Action is not flagged as a 'SessionBased'");
+ }
+ }
}
Modified: cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/IfActionTest.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/IfActionTest.java 2008-07-04 14:48:55 UTC (rev 122)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/IfActionTest.java 2008-07-07 10:13:28 UTC (rev 123)
@@ -18,6 +18,8 @@
package org.jboss.tools.overlord.jbossesb.model.actions;
import junit.framework.TestCase;
+
+import org.jboss.tools.overlord.jbossesb.model.TestModelListener;
import org.scribble.model.*;
import org.scribble.conversation.model.*;
@@ -449,4 +451,24 @@
fail("Else block should have be empty");
}
}
+
+ public void testIsCreateSession() {
+ TestESBService service=new TestESBService();
+
+ IfAction action=new IfAction(service, null);
+
+ if (action.isCreateSession() == true) {
+ fail("Action is flagged as a 'CreateSession'");
+ }
+ }
+
+ public void testIsSessionBased() {
+ TestESBService service=new TestESBService();
+
+ IfAction action=new IfAction(service, null);
+
+ if (action.isSessionBased() == false) {
+ fail("Action is not flagged as a 'SessionBased'");
+ }
+ }
}
Modified: cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/MessageRouterActionTest.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/MessageRouterActionTest.java 2008-07-04 14:48:55 UTC (rev 122)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/MessageRouterActionTest.java 2008-07-07 10:13:28 UTC (rev 123)
@@ -17,6 +17,8 @@
*/
package org.jboss.tools.overlord.jbossesb.model.actions;
+import org.jboss.tools.overlord.jbossesb.model.TestModelListener;
+
import junit.framework.TestCase;
public class MessageRouterActionTest extends TestCase {
@@ -244,4 +246,24 @@
fail(l.invalidMessage());
}
}
+
+ public void testIsCreateSession() {
+ TestESBService service=new TestESBService();
+
+ MessageRouterAction action=new MessageRouterAction(service, null);
+
+ if (action.isCreateSession() == true) {
+ fail("Action is flagged as a 'CreateSession'");
+ }
+ }
+
+ public void testIsSessionBased() {
+ TestESBService service=new TestESBService();
+
+ MessageRouterAction action=new MessageRouterAction(service, null);
+
+ if (action.isSessionBased() == true) {
+ fail("Action is flagged as a 'SessionBased'");
+ }
+ }
}
Modified: cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/ParallelActionTest.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/ParallelActionTest.java 2008-07-04 14:48:55 UTC (rev 122)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/ParallelActionTest.java 2008-07-07 10:13:28 UTC (rev 123)
@@ -451,4 +451,24 @@
fail("Activity after parallel should be act3");
}
}
+
+ public void testIsCreateSession() {
+ TestESBService service=new TestESBService();
+
+ ParallelAction action=new ParallelAction(service, null);
+
+ if (action.isCreateSession() == true) {
+ fail("Action is flagged as a 'CreateSession'");
+ }
+ }
+
+ public void testIsSessionBased() {
+ TestESBService service=new TestESBService();
+
+ ParallelAction action=new ParallelAction(service, null);
+
+ if (action.isSessionBased() == false) {
+ fail("Action is not flagged as a 'SessionBased'");
+ }
+ }
}
Modified: cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/PerformActionTest.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/PerformActionTest.java 2008-07-04 14:48:55 UTC (rev 122)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/PerformActionTest.java 2008-07-07 10:13:28 UTC (rev 123)
@@ -17,6 +17,7 @@
*/
package org.jboss.tools.overlord.jbossesb.model.actions;
+import org.jboss.tools.overlord.jbossesb.model.TestModelListener;
import org.scribble.conversation.model.*;
import org.scribble.model.Activity;
@@ -338,4 +339,24 @@
fail("Subsequent activity after run was not act2");
}
}
+
+ public void testIsCreateSession() {
+ TestESBService service=new TestESBService();
+
+ PerformAction action=new PerformAction(service, null);
+
+ if (action.isCreateSession() == true) {
+ fail("Action is flagged as a 'CreateSession'");
+ }
+ }
+
+ public void testIsSessionBased() {
+ TestESBService service=new TestESBService();
+
+ PerformAction action=new PerformAction(service, null);
+
+ if (action.isSessionBased() == false) {
+ fail("Action is not flagged as a 'SessionBased'");
+ }
+ }
}
Modified: cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/ReceiveMessageActionTest.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/ReceiveMessageActionTest.java 2008-07-04 14:48:55 UTC (rev 122)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/ReceiveMessageActionTest.java 2008-07-07 10:13:28 UTC (rev 123)
@@ -263,4 +263,24 @@
fail("Local type should be '"+lp+"', but found: "+ref.getLocalpart());
}
}
+
+ public void testIsCreateSession() {
+ TestESBService service=new TestESBService();
+
+ ReceiveMessageAction action=new ReceiveMessageAction(service, null);
+
+ if (action.isCreateSession() == true) {
+ fail("Action is flagged as a 'CreateSession'");
+ }
+ }
+
+ public void testIsSessionBased() {
+ TestESBService service=new TestESBService();
+
+ ReceiveMessageAction action=new ReceiveMessageAction(service, null);
+
+ if (action.isSessionBased() == false) {
+ fail("Action is not flagged as a 'SessionBased'");
+ }
+ }
}
Modified: cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/RetrieveSessionActionTest.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/RetrieveSessionActionTest.java 2008-07-04 14:48:55 UTC (rev 122)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/RetrieveSessionActionTest.java 2008-07-07 10:13:28 UTC (rev 123)
@@ -17,6 +17,8 @@
*/
package org.jboss.tools.overlord.jbossesb.model.actions;
+import org.jboss.tools.overlord.jbossesb.model.TestModelListener;
+
import junit.framework.TestCase;
public class RetrieveSessionActionTest extends TestCase {
@@ -100,4 +102,24 @@
fail(l.invalidMessage());
}
}
+
+ public void testIsCreateSession() {
+ TestESBService service=new TestESBService();
+
+ RetrieveSessionAction action=new RetrieveSessionAction(service, null);
+
+ if (action.isCreateSession() == true) {
+ fail("Action is flagged as a 'CreateSession'");
+ }
+ }
+
+ public void testIsSessionBased() {
+ TestESBService service=new TestESBService();
+
+ RetrieveSessionAction action=new RetrieveSessionAction(service, null);
+
+ if (action.isSessionBased() == false) {
+ fail("Action is not flagged as a 'SessionBased'");
+ }
+ }
}
Modified: cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/ScheduleStateActionTest.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/ScheduleStateActionTest.java 2008-07-04 14:48:55 UTC (rev 122)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/ScheduleStateActionTest.java 2008-07-07 10:13:28 UTC (rev 123)
@@ -233,4 +233,24 @@
fail("Should be no activities, but found: "+activities.size());
}
}
+
+ public void testIsCreateSession() {
+ TestESBService service=new TestESBService();
+
+ ScheduleStateAction action=new ScheduleStateAction(service, null);
+
+ if (action.isCreateSession() == true) {
+ fail("Action is flagged as a 'CreateSession'");
+ }
+ }
+
+ public void testIsSessionBased() {
+ TestESBService service=new TestESBService();
+
+ ScheduleStateAction action=new ScheduleStateAction(service, null);
+
+ if (action.isSessionBased() == false) {
+ fail("Action is not flagged as a 'SessionBased'");
+ }
+ }
}
Modified: cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/SendMessageActionTest.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/SendMessageActionTest.java 2008-07-04 14:48:55 UTC (rev 122)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/SendMessageActionTest.java 2008-07-07 10:13:28 UTC (rev 123)
@@ -18,6 +18,7 @@
package org.jboss.tools.overlord.jbossesb.model.actions;
import org.jboss.tools.overlord.jbossesb.model.DefaultConversionContext;
+import org.jboss.tools.overlord.jbossesb.model.TestModelListener;
import org.scribble.model.Activity;
import org.scribble.model.Interaction;
import org.scribble.model.TypeReference;
@@ -336,4 +337,24 @@
fail("Local type should be '"+lp+"', but found: "+ref.getLocalpart());
}
}
+
+ public void testIsCreateSession() {
+ TestESBService service=new TestESBService();
+
+ SendMessageAction action=new SendMessageAction(service, null);
+
+ if (action.isCreateSession() == true) {
+ fail("Action is flagged as a 'CreateSession'");
+ }
+ }
+
+ public void testIsSessionBased() {
+ TestESBService service=new TestESBService();
+
+ SendMessageAction action=new SendMessageAction(service, null);
+
+ if (action.isSessionBased() == false) {
+ fail("Action is not flagged as a 'SessionBased'");
+ }
+ }
}
Modified: cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/SetMessageActionTest.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/SetMessageActionTest.java 2008-07-04 14:48:55 UTC (rev 122)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/SetMessageActionTest.java 2008-07-07 10:13:28 UTC (rev 123)
@@ -17,6 +17,8 @@
*/
package org.jboss.tools.overlord.jbossesb.model.actions;
+import org.jboss.tools.overlord.jbossesb.model.TestModelListener;
+
import junit.framework.TestCase;
public class SetMessageActionTest extends TestCase {
@@ -47,4 +49,24 @@
fail(l.invalidMessage());
}
}
+
+ public void testIsCreateSession() {
+ TestESBService service=new TestESBService();
+
+ SetMessageAction action=new SetMessageAction(service, null);
+
+ if (action.isCreateSession() == true) {
+ fail("Action is flagged as a 'CreateSession'");
+ }
+ }
+
+ public void testIsSessionBased() {
+ TestESBService service=new TestESBService();
+
+ SetMessageAction action=new SetMessageAction(service, null);
+
+ if (action.isSessionBased() == false) {
+ fail("Action is not flagged as a 'SessionBased'");
+ }
+ }
}
Modified: cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/SetStateActionTest.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/SetStateActionTest.java 2008-07-04 14:48:55 UTC (rev 122)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/SetStateActionTest.java 2008-07-07 10:13:28 UTC (rev 123)
@@ -17,6 +17,8 @@
*/
package org.jboss.tools.overlord.jbossesb.model.actions;
+import org.jboss.tools.overlord.jbossesb.model.TestModelListener;
+
import junit.framework.TestCase;
public class SetStateActionTest extends TestCase {
@@ -206,4 +208,24 @@
fail(l.invalidMessage());
}
}
+
+ public void testIsCreateSession() {
+ TestESBService service=new TestESBService();
+
+ SetStateAction action=new SetStateAction(service, null);
+
+ if (action.isCreateSession() == true) {
+ fail("Action is flagged as a 'CreateSession'");
+ }
+ }
+
+ public void testIsSessionBased() {
+ TestESBService service=new TestESBService();
+
+ SetStateAction action=new SetStateAction(service, null);
+
+ if (action.isSessionBased() == false) {
+ fail("Action is not flagged as a 'SessionBased'");
+ }
+ }
}
Modified: cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/SwitchActionTest.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/SwitchActionTest.java 2008-07-04 14:48:55 UTC (rev 122)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/SwitchActionTest.java 2008-07-07 10:13:28 UTC (rev 123)
@@ -17,6 +17,7 @@
*/
package org.jboss.tools.overlord.jbossesb.model.actions;
+import org.jboss.tools.overlord.jbossesb.model.TestModelListener;
import org.scribble.conversation.model.If;
import org.scribble.model.Activity;
@@ -355,4 +356,24 @@
fail("Else block should not be defined");
}
}
+
+ public void testIsCreateSession() {
+ TestESBService service=new TestESBService();
+
+ SwitchAction action=new SwitchAction(service, null);
+
+ if (action.isCreateSession() == true) {
+ fail("Action is flagged as a 'CreateSession'");
+ }
+ }
+
+ public void testIsSessionBased() {
+ TestESBService service=new TestESBService();
+
+ SwitchAction action=new SwitchAction(service, null);
+
+ if (action.isSessionBased() == false) {
+ fail("Action is not flagged as a 'SessionBased'");
+ }
+ }
}
Deleted: cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/TestModelListener.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/TestModelListener.java 2008-07-04 14:48:55 UTC (rev 122)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/TestModelListener.java 2008-07-07 10:13:28 UTC (rev 123)
@@ -1,84 +0,0 @@
-/*
- * 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 java.util.Properties;
-
-import org.scribble.model.ModelObject;
-
-public class TestModelListener implements org.scribble.model.ModelListener {
-
- public void error(ModelObject modelObject, String mesg, Properties props) {
- reported(mesg);
- }
-
- public void warning(ModelObject modelObject, String mesg, Properties props) {
- reported(mesg);
- }
-
- protected void reported(String mesg) {
- if (mesg != null) {
-
- // Check if in the list of messages to be
- // detected
- if (m_errorsToDetect.contains(mesg)) {
- m_errorsToDetect.remove(mesg);
- } else {
- m_unexpectedErrors.add(mesg);
- }
- }
- }
-
- public void addExpectedError(String mesg) {
- m_errorsToDetect.add(mesg);
- }
-
- public boolean isValid() {
- // If there are no more errors to detect, and no
- // unexpected errors have been reported, then
- // the expression has been validated as expected
- return(m_errorsToDetect.size() == 0 &&
- m_unexpectedErrors.size() == 0);
- }
-
- public String invalidMessage() {
- String ret="\r\n";
-
- if (m_errorsToDetect.size() > 0) {
- ret += "Errors not detected:\r\n";
-
- for (int i=0; i < m_errorsToDetect.size(); i++) {
- ret += m_errorsToDetect.get(i)+"\r\n";
- }
- }
-
- if (m_unexpectedErrors.size() > 0) {
- ret += "Unexpected Errors:\r\n";
-
- for (int i=0; i < m_unexpectedErrors.size(); i++) {
- ret += m_unexpectedErrors.get(i)+"\r\n";
- }
- }
-
- return(ret);
- }
-
- private java.util.List<String> m_errorsToDetect=new java.util.Vector<String>();
- private java.util.List<String> m_unexpectedErrors=new java.util.Vector<String>();
- private java.util.List<String> m_messages=new java.util.Vector<String>();
-}
Modified: cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/WhenActionTest.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/WhenActionTest.java 2008-07-04 14:48:55 UTC (rev 122)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/WhenActionTest.java 2008-07-07 10:13:28 UTC (rev 123)
@@ -17,6 +17,7 @@
*/
package org.jboss.tools.overlord.jbossesb.model.actions;
+import org.jboss.tools.overlord.jbossesb.model.TestModelListener;
import org.scribble.conversation.model.*;
import org.scribble.model.*;
@@ -450,4 +451,24 @@
fail("Third conditional block should have 1 activity = act3");
}
}
+
+ public void testIsCreateSession() {
+ TestESBService service=new TestESBService();
+
+ WhenAction action=new WhenAction(service, null);
+
+ if (action.isCreateSession() == true) {
+ fail("Action is flagged as a 'CreateSession'");
+ }
+ }
+
+ public void testIsSessionBased() {
+ TestESBService service=new TestESBService();
+
+ WhenAction action=new WhenAction(service, null);
+
+ if (action.isSessionBased() == false) {
+ fail("Action is not flagged as a 'SessionBased'");
+ }
+ }
}
Modified: cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/WhileActionTest.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/WhileActionTest.java 2008-07-04 14:48:55 UTC (rev 122)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/WhileActionTest.java 2008-07-07 10:13:28 UTC (rev 123)
@@ -451,4 +451,24 @@
fail("Activity following while should be act2");
}
}
+
+ public void testIsCreateSession() {
+ TestESBService service=new TestESBService();
+
+ WhileAction action=new WhileAction(service, null);
+
+ if (action.isCreateSession() == true) {
+ fail("Action is flagged as a 'CreateSession'");
+ }
+ }
+
+ public void testIsSessionBased() {
+ TestESBService service=new TestESBService();
+
+ WhileAction action=new WhileAction(service, null);
+
+ if (action.isSessionBased() == false) {
+ fail("Action is not flagged as a 'SessionBased'");
+ }
+ }
}
15 years, 11 months
Overlord SVN: r122 - in cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src: java/org/jboss/tools/overlord/jbossesb/model/actions and 1 other directories.
by overlord-commits@lists.jboss.org
Author: objectiser
Date: 2008-07-04 10:48:55 -0400 (Fri, 04 Jul 2008)
New Revision: 122
Modified:
cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/ConversionContext.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/DefaultConversionContext.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/DefaultESBLanguageModel.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/ReceiveMessageAction.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/SendMessageAction.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/ParallelActionTest.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/PerformActionTest.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/ReceiveMessageActionTest.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/ScheduleStateActionTest.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/SendMessageActionTest.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/TestESBService.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/WhileActionTest.java
Log:
Added the remaining unit tests for the conversion of the non-grouping constructs.
Modified: cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/ConversionContext.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/ConversionContext.java 2008-07-04 13:40:31 UTC (rev 121)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/ConversionContext.java 2008-07-04 14:48:55 UTC (rev 122)
@@ -22,6 +22,14 @@
public interface ConversionContext {
/**
+ * This method returns the role associated with the
+ * endpoint being converted.
+ *
+ *@return The role
+ */
+ public String getRole();
+
+ /**
* This method is invoked when an ESB service is being processed.
*
* @param service The service
Modified: cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/DefaultConversionContext.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/DefaultConversionContext.java 2008-07-04 13:40:31 UTC (rev 121)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/DefaultConversionContext.java 2008-07-04 14:48:55 UTC (rev 122)
@@ -24,6 +24,26 @@
public class DefaultConversionContext implements ConversionContext {
/**
+ * This constructor initializes the role associated with
+ * the conversion.
+ *
+ * @param role The role
+ */
+ public DefaultConversionContext(String role) {
+ m_role = role;
+ }
+
+ /**
+ * This method returns the role associated with the
+ * endpoint being converted.
+ *
+ *@return The role
+ */
+ public String getRole() {
+ return(m_role);
+ }
+
+ /**
* This method is invoked when an ESB service is being processed.
*
* @param service The service
@@ -105,4 +125,5 @@
private java.util.List<ESBService> m_serviceStack=new java.util.Vector<ESBService>();
private java.util.List<ESBService> m_joins=new java.util.Vector<ESBService>();
+ private String m_role=null;
}
Modified: cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/DefaultESBLanguageModel.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/DefaultESBLanguageModel.java 2008-07-04 13:40:31 UTC (rev 121)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/DefaultESBLanguageModel.java 2008-07-04 14:48:55 UTC (rev 122)
@@ -115,6 +115,8 @@
conv.setModelName(modelName);
String convType=service.getConversationType();
+ String role=null;
+
if (convType != null) {
int index=convType.indexOf('@');
@@ -128,8 +130,10 @@
//ConformanceReference iref=
// new ConformanceReference(ConversationModel.CONVERSATION);
- iref.setLocatedRole(convType.substring(index+1));
+ role = convType.substring(index+1);
+ iref.setLocatedRole(role);
+
// Need to locate the model name
modelName.setLocatedRole(new Role(iref.getLocatedRole()));
@@ -171,7 +175,7 @@
conv.setBlock(new Block());
service.convert(conv.getBlock().getContents(),
- new DefaultConversionContext());
+ new DefaultConversionContext(role));
getConversations().add(conv);
}
Modified: cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/ReceiveMessageAction.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/ReceiveMessageAction.java 2008-07-04 13:40:31 UTC (rev 121)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/ReceiveMessageAction.java 2008-07-04 14:48:55 UTC (rev 122)
@@ -99,6 +99,9 @@
ms.getTypes().add(ref);
}
- // TODO: Initialize the 'to' role to be this participant
+ // Initialize the 'to' role to be this participant
+ if (context.getRole() != null) {
+ recv.setToRole(new Role(context.getRole()));
+ }
}
}
Modified: cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/SendMessageAction.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/SendMessageAction.java 2008-07-04 13:40:31 UTC (rev 121)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/SendMessageAction.java 2008-07-04 14:48:55 UTC (rev 122)
@@ -165,6 +165,12 @@
ms.getTypes().add(ref);
}
+ // Initialize the 'from' role to be this participant
+ // (for now until 'to' role can be set)
+ if (context.getRole() != null) {
+ send.setFromRole(new Role(context.getRole()));
+ }
+
// TODO: Initialize the 'to' role (possibly to a
// namespace=service category and localpart=service
// name. This would need to be mapped when doing
Modified: cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/ParallelActionTest.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/ParallelActionTest.java 2008-07-04 13:40:31 UTC (rev 121)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/ParallelActionTest.java 2008-07-04 14:48:55 UTC (rev 122)
@@ -343,7 +343,7 @@
java.util.List<Activity> activities=new java.util.Vector<Activity>();
- action.convert(activities, new DefaultConversionContext());
+ action.convert(activities, new DefaultConversionContext(null));
if (activities.size() != 2) {
fail("Expecting two activities, but got: "+activities.size());
@@ -376,9 +376,6 @@
}
}
- /* Miss out test for now, until conformance checking fixed
- * so that it ignores 'invisible' activities
- *
public void testConvertNotExcludingEmptyPaths() {
TestESBService service=new TestESBService();
@@ -423,7 +420,7 @@
java.util.List<Activity> activities=new java.util.Vector<Activity>();
- action.convert(activities, new DefaultConversionContext());
+ action.convert(activities, new DefaultConversionContext(null));
if (activities.size() != 2) {
fail("Expecting two activities, but got: "+activities.size());
@@ -454,5 +451,4 @@
fail("Activity after parallel should be act3");
}
}
- */
}
Modified: cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/PerformActionTest.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/PerformActionTest.java 2008-07-04 13:40:31 UTC (rev 121)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/PerformActionTest.java 2008-07-04 14:48:55 UTC (rev 122)
@@ -17,6 +17,9 @@
*/
package org.jboss.tools.overlord.jbossesb.model.actions;
+import org.scribble.conversation.model.*;
+import org.scribble.model.Activity;
+
import junit.framework.TestCase;
public class PerformActionTest extends TestCase {
@@ -202,4 +205,137 @@
fail(l.invalidMessage());
}
}
+
+ public void testConvert() {
+ TestESBService service=new TestESBService();
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put("serviceCategory", "cat1");
+ props.put("serviceName", "name1");
+ props.put("joinServiceCategory", "cat2");
+ props.put("joinServiceName", "name2");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
+
+ TestESBService other1=new TestESBService();
+ other1.setCategory("cat1");
+ other1.setName("name1");
+
+ TestActivity act1=new TestActivity();
+ other1.getContents().add(act1);
+
+ TestESBService other2=new TestESBService();
+ other2.setCategory("cat2");
+ other2.setName("name2");
+
+ TestActivity act2=new TestActivity();
+ other2.getContents().add(act2);
+
+ TestESBLanguageModel model=new TestESBLanguageModel();
+ model.addService(other1);
+ model.addService(other2);
+ model.addService(service);
+
+ service.setModel(model);
+
+ PerformAction action=new PerformAction(service, elem);
+ action.initializeLinks();
+
+ service.getActions().add(action);
+
+ java.util.List<Activity> activities=new java.util.Vector<Activity>();
+
+ action.convert(activities, null);
+
+ if (activities.size() != 2) {
+ fail("Expecting two activities, but got: "+activities.size());
+ }
+
+ Activity act=activities.get(0);
+
+ if ((act instanceof Run) == false) {
+ fail("Expecting an 'Run' activity");
+ }
+
+ Run runAction=(Run)act;
+
+ if (runAction.getDefinition() == null) {
+ fail("Run definition was null");
+ }
+
+ if (runAction.getDefinition().getBlock().getContents().size() != 1) {
+ fail("Expecting one ran block activity: "+runAction.getDefinition().getBlock().getContents().size());
+ }
+
+ if (runAction.getDefinition().getBlock().getContents().get(0) != act1) {
+ fail("Run model block should have 1 activity = act1");
+ }
+
+ if (activities.get(1) != act2) {
+ fail("Subsequent activity after run was not act2");
+ }
+ }
+
+ public void testConvertNotExcludingEmptyPath() {
+ TestESBService service=new TestESBService();
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put("serviceCategory", "cat1");
+ props.put("serviceName", "name1");
+ props.put("joinServiceCategory", "cat2");
+ props.put("joinServiceName", "name2");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
+
+ TestESBService other1=new TestESBService();
+ other1.setCategory("cat1");
+ other1.setName("name1");
+
+ TestESBService other2=new TestESBService();
+ other2.setCategory("cat2");
+ other2.setName("name2");
+
+ TestActivity act2=new TestActivity();
+ other2.getContents().add(act2);
+
+ TestESBLanguageModel model=new TestESBLanguageModel();
+ model.addService(other1);
+ model.addService(other2);
+ model.addService(service);
+
+ service.setModel(model);
+
+ PerformAction action=new PerformAction(service, elem);
+ action.initializeLinks();
+
+ service.getActions().add(action);
+
+ java.util.List<Activity> activities=new java.util.Vector<Activity>();
+
+ action.convert(activities, null);
+
+ if (activities.size() != 2) {
+ fail("Expecting two activities, but got: "+activities.size());
+ }
+
+ Activity act=activities.get(0);
+
+ if ((act instanceof Run) == false) {
+ fail("Expecting an 'Run' activity");
+ }
+
+ Run runAction=(Run)act;
+
+ if (runAction.getDefinition() == null) {
+ fail("Run definition was null");
+ }
+
+ if (runAction.getDefinition().getBlock().getContents().size() != 0) {
+ fail("Expecting zero ran block activities: "+runAction.getDefinition().getBlock().getContents().size());
+ }
+
+ if (activities.get(1) != act2) {
+ fail("Subsequent activity after run was not act2");
+ }
+ }
}
Modified: cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/ReceiveMessageActionTest.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/ReceiveMessageActionTest.java 2008-07-04 13:40:31 UTC (rev 121)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/ReceiveMessageActionTest.java 2008-07-04 14:48:55 UTC (rev 122)
@@ -17,6 +17,9 @@
*/
package org.jboss.tools.overlord.jbossesb.model.actions;
+import org.scribble.model.*;
+import org.jboss.tools.overlord.jbossesb.model.*;
+
import junit.framework.TestCase;
public class ReceiveMessageActionTest extends TestCase {
@@ -76,4 +79,188 @@
fail(l.invalidMessage());
}
}
+
+ public void testConvertRoles() {
+ TestESBService service=new TestESBService();
+
+ String ns="MessageTypeNS";
+ String lp="MessageType";
+ String role="Buyer";
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put("messageType", "{"+ns+"}"+lp);
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
+
+ TestESBLanguageModel model=new TestESBLanguageModel();
+ model.addService(service);
+
+ service.setModel(model);
+
+ ReceiveMessageAction action=new ReceiveMessageAction(service, elem);
+ action.initializeLinks();
+
+ service.getActions().add(action);
+
+ java.util.List<Activity> activities=new java.util.Vector<Activity>();
+
+ action.convert(activities, new DefaultConversionContext(role));
+
+ if (activities.size() != 1) {
+ fail("Expecting one activity, but got: "+activities.size());
+ }
+
+ Activity act=activities.get(0);
+
+ if ((act instanceof Interaction) == false) {
+ fail("Expecting an 'Interaction' activity");
+ }
+
+ Interaction interaction=(Interaction)act;
+
+ if (interaction.getToRole() == null) {
+ fail("'To' role is null");
+ }
+
+ if (interaction.getToRole().getName().equals(role) == false) {
+ fail("'To' role should be '"+role+"', but found: "+interaction.getToRole().getName());
+ }
+
+ if (interaction.getFromRole() != null) {
+ fail("'From' role should be null");
+ }
+ }
+
+ public void testConvertMessageBased() {
+ TestESBService service=new TestESBService();
+
+ String ns="MessageTypeNS";
+ String lp="MessageType";
+ String role="Buyer";
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put("messageType", "{"+ns+"}"+lp);
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
+
+ TestESBLanguageModel model=new TestESBLanguageModel();
+ model.addService(service);
+
+ service.setModel(model);
+
+ ReceiveMessageAction action=new ReceiveMessageAction(service, elem);
+ action.initializeLinks();
+
+ service.getActions().add(action);
+
+ java.util.List<Activity> activities=new java.util.Vector<Activity>();
+
+ action.convert(activities, new DefaultConversionContext(role));
+
+ if (activities.size() != 1) {
+ fail("Expecting one activity, but got: "+activities.size());
+ }
+
+ Activity act=activities.get(0);
+
+ if ((act instanceof Interaction) == false) {
+ fail("Expecting an 'Interaction' activity");
+ }
+
+ Interaction interaction=(Interaction)act;
+
+ if (interaction.getMessageSignature() == null) {
+ fail("Message signature is null");
+ }
+
+ if (interaction.getMessageSignature().getOperation() != null) {
+ fail("Operation should be null");
+ }
+
+ if (interaction.getMessageSignature().getTypes().size() != 1) {
+ fail("Only one type expected, but got: "+interaction.getMessageSignature().getTypes().size());
+ }
+
+ TypeReference ref=interaction.getMessageSignature().getTypes().get(0);
+
+ if (ref.getNamespace() == null ||
+ ref.getNamespace().equals(ns) == false) {
+ fail("Namespace should be '"+ns+"', but found: "+ref.getNamespace());
+ }
+
+ if (ref.getLocalpart() == null ||
+ ref.getLocalpart().equals(lp) == false) {
+ fail("Local type should be '"+lp+"', but found: "+ref.getLocalpart());
+ }
+ }
+
+ public void testConvertRPCBased() {
+ TestESBService service=new TestESBService();
+
+ String ns="MessageTypeNS";
+ String lp="MessageType";
+ String opname="op";
+ String role="Buyer";
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put("operation", opname);
+ props.put("messageType", "{"+ns+"}"+lp);
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
+
+ TestESBLanguageModel model=new TestESBLanguageModel();
+ model.addService(service);
+
+ service.setModel(model);
+
+ ReceiveMessageAction action=new ReceiveMessageAction(service, elem);
+ action.initializeLinks();
+
+ service.getActions().add(action);
+
+ java.util.List<Activity> activities=new java.util.Vector<Activity>();
+
+ action.convert(activities, new DefaultConversionContext(role));
+
+ if (activities.size() != 1) {
+ fail("Expecting one activity, but got: "+activities.size());
+ }
+
+ Activity act=activities.get(0);
+
+ if ((act instanceof Interaction) == false) {
+ fail("Expecting an 'Interaction' activity");
+ }
+
+ Interaction interaction=(Interaction)act;
+
+ if (interaction.getMessageSignature() == null) {
+ fail("Message signature is null");
+ }
+
+ if (interaction.getMessageSignature().getOperation() == null) {
+ fail("Operation should not be null");
+ }
+
+ if (interaction.getMessageSignature().getOperation().equals(opname) == false) {
+ fail("Operation expected '"+opname+"', but got: "+
+ interaction.getMessageSignature().getOperation());
+ }
+
+ if (interaction.getMessageSignature().getTypes().size() != 1) {
+ fail("Only one type expected, but got: "+interaction.getMessageSignature().getTypes().size());
+ }
+
+ TypeReference ref=interaction.getMessageSignature().getTypes().get(0);
+
+ if (ref.getNamespace() == null ||
+ ref.getNamespace().equals(ns) == false) {
+ fail("Namespace should be '"+ns+"', but found: "+ref.getNamespace());
+ }
+
+ if (ref.getLocalpart() == null ||
+ ref.getLocalpart().equals(lp) == false) {
+ fail("Local type should be '"+lp+"', but found: "+ref.getLocalpart());
+ }
+ }
}
Modified: cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/ScheduleStateActionTest.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/ScheduleStateActionTest.java 2008-07-04 13:40:31 UTC (rev 121)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/ScheduleStateActionTest.java 2008-07-04 14:48:55 UTC (rev 122)
@@ -17,6 +17,9 @@
*/
package org.jboss.tools.overlord.jbossesb.model.actions;
+import org.scribble.model.Activity;
+import org.jboss.tools.overlord.jbossesb.model.*;
+
import junit.framework.TestCase;
public class ScheduleStateActionTest extends TestCase {
@@ -111,4 +114,123 @@
fail(l.invalidMessage());
}
}
+
+ public void testConvert() {
+ TestESBService service=new TestESBService();
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put("serviceCategory", "cat1");
+ props.put("serviceName", "name1");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
+
+ TestESBService other1=new TestESBService();
+ other1.setCategory("cat1");
+ other1.setName("name1");
+
+ TestActivity act1=new TestActivity();
+ other1.getContents().add(act1);
+
+ TestESBLanguageModel model=new TestESBLanguageModel();
+ model.addService(other1);
+ model.addService(service);
+
+ service.setModel(model);
+
+ ScheduleStateAction action=new ScheduleStateAction(service, elem);
+ action.initializeLinks();
+
+ service.getActions().add(action);
+
+ java.util.List<Activity> activities=new java.util.Vector<Activity>();
+
+ action.convert(activities, new DefaultConversionContext(null));
+
+ if (activities.size() != 1) {
+ fail("Expecting one activity, but got: "+activities.size());
+ }
+
+ if (activities.get(0) != act1) {
+ fail("Activity was not act1");
+ }
+ }
+
+ public void testConvertBackToWhileLoop() {
+ TestESBService service=new TestESBService();
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put("serviceCategory", "cat1");
+ props.put("serviceName", "name1");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
+
+ TestESBService other1=new TestESBService();
+ other1.setCategory("cat1");
+ other1.setName("name1");
+ other1.setLoop(true);
+
+ TestActivity act1=new TestActivity();
+ other1.getContents().add(act1);
+
+ TestESBLanguageModel model=new TestESBLanguageModel();
+ model.addService(other1);
+ model.addService(service);
+
+ service.setModel(model);
+
+ ScheduleStateAction action=new ScheduleStateAction(service, elem);
+ action.initializeLinks();
+
+ service.getActions().add(action);
+
+ java.util.List<Activity> activities=new java.util.Vector<Activity>();
+
+ DefaultConversionContext context=new DefaultConversionContext(null);
+ context.push(other1);
+
+ action.convert(activities, context);
+
+ if (activities.size() != 0) {
+ fail("Should be no activities, but found: "+activities.size());
+ }
+ }
+
+ public void testConvertBackToJoinState() {
+ TestESBService service=new TestESBService();
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put("serviceCategory", "cat1");
+ props.put("serviceName", "name1");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
+
+ TestESBService other1=new TestESBService();
+ other1.setCategory("cat1");
+ other1.setName("name1");
+
+ TestActivity act1=new TestActivity();
+ other1.getContents().add(act1);
+
+ TestESBLanguageModel model=new TestESBLanguageModel();
+ model.addService(other1);
+ model.addService(service);
+
+ service.setModel(model);
+
+ ScheduleStateAction action=new ScheduleStateAction(service, elem);
+ action.initializeLinks();
+
+ service.getActions().add(action);
+
+ java.util.List<Activity> activities=new java.util.Vector<Activity>();
+
+ DefaultConversionContext context=new DefaultConversionContext(null);
+ context.markJoin(other1);
+
+ action.convert(activities, context);
+
+ if (activities.size() != 0) {
+ fail("Should be no activities, but found: "+activities.size());
+ }
+ }
}
Modified: cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/SendMessageActionTest.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/SendMessageActionTest.java 2008-07-04 13:40:31 UTC (rev 121)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/SendMessageActionTest.java 2008-07-04 14:48:55 UTC (rev 122)
@@ -17,6 +17,11 @@
*/
package org.jboss.tools.overlord.jbossesb.model.actions;
+import org.jboss.tools.overlord.jbossesb.model.DefaultConversionContext;
+import org.scribble.model.Activity;
+import org.scribble.model.Interaction;
+import org.scribble.model.TypeReference;
+
import junit.framework.TestCase;
public class SendMessageActionTest extends TestCase {
@@ -147,4 +152,188 @@
fail(l.invalidMessage());
}
}
+
+ public void testConvertRoles() {
+ TestESBService service=new TestESBService();
+
+ String ns="MessageTypeNS";
+ String lp="MessageType";
+ String role="Buyer";
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put("messageType", "{"+ns+"}"+lp);
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
+
+ TestESBLanguageModel model=new TestESBLanguageModel();
+ model.addService(service);
+
+ service.setModel(model);
+
+ SendMessageAction action=new SendMessageAction(service, elem);
+ action.initializeLinks();
+
+ service.getActions().add(action);
+
+ java.util.List<Activity> activities=new java.util.Vector<Activity>();
+
+ action.convert(activities, new DefaultConversionContext(role));
+
+ if (activities.size() != 1) {
+ fail("Expecting one activity, but got: "+activities.size());
+ }
+
+ Activity act=activities.get(0);
+
+ if ((act instanceof Interaction) == false) {
+ fail("Expecting an 'Interaction' activity");
+ }
+
+ Interaction interaction=(Interaction)act;
+
+ if (interaction.getFromRole() == null) {
+ fail("'From' role is null");
+ }
+
+ if (interaction.getFromRole().getName().equals(role) == false) {
+ fail("'From' role should be '"+role+"', but found: "+interaction.getFromRole().getName());
+ }
+
+ if (interaction.getToRole() != null) {
+ fail("'To' role should be null");
+ }
+ }
+
+ public void testConvertMessageBased() {
+ TestESBService service=new TestESBService();
+
+ String ns="MessageTypeNS";
+ String lp="MessageType";
+ String role="Buyer";
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put("messageType", "{"+ns+"}"+lp);
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
+
+ TestESBLanguageModel model=new TestESBLanguageModel();
+ model.addService(service);
+
+ service.setModel(model);
+
+ SendMessageAction action=new SendMessageAction(service, elem);
+ action.initializeLinks();
+
+ service.getActions().add(action);
+
+ java.util.List<Activity> activities=new java.util.Vector<Activity>();
+
+ action.convert(activities, new DefaultConversionContext(role));
+
+ if (activities.size() != 1) {
+ fail("Expecting one activity, but got: "+activities.size());
+ }
+
+ Activity act=activities.get(0);
+
+ if ((act instanceof Interaction) == false) {
+ fail("Expecting an 'Interaction' activity");
+ }
+
+ Interaction interaction=(Interaction)act;
+
+ if (interaction.getMessageSignature() == null) {
+ fail("Message signature is null");
+ }
+
+ if (interaction.getMessageSignature().getOperation() != null) {
+ fail("Operation should be null");
+ }
+
+ if (interaction.getMessageSignature().getTypes().size() != 1) {
+ fail("Only one type expected, but got: "+interaction.getMessageSignature().getTypes().size());
+ }
+
+ TypeReference ref=interaction.getMessageSignature().getTypes().get(0);
+
+ if (ref.getNamespace() == null ||
+ ref.getNamespace().equals(ns) == false) {
+ fail("Namespace should be '"+ns+"', but found: "+ref.getNamespace());
+ }
+
+ if (ref.getLocalpart() == null ||
+ ref.getLocalpart().equals(lp) == false) {
+ fail("Local type should be '"+lp+"', but found: "+ref.getLocalpart());
+ }
+ }
+
+ public void testConvertRPCBased() {
+ TestESBService service=new TestESBService();
+
+ String ns="MessageTypeNS";
+ String lp="MessageType";
+ String opname="op";
+ String role="Buyer";
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put("operation", opname);
+ props.put("messageType", "{"+ns+"}"+lp);
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
+
+ TestESBLanguageModel model=new TestESBLanguageModel();
+ model.addService(service);
+
+ service.setModel(model);
+
+ SendMessageAction action=new SendMessageAction(service, elem);
+ action.initializeLinks();
+
+ service.getActions().add(action);
+
+ java.util.List<Activity> activities=new java.util.Vector<Activity>();
+
+ action.convert(activities, new DefaultConversionContext(role));
+
+ if (activities.size() != 1) {
+ fail("Expecting one activity, but got: "+activities.size());
+ }
+
+ Activity act=activities.get(0);
+
+ if ((act instanceof Interaction) == false) {
+ fail("Expecting an 'Interaction' activity");
+ }
+
+ Interaction interaction=(Interaction)act;
+
+ if (interaction.getMessageSignature() == null) {
+ fail("Message signature is null");
+ }
+
+ if (interaction.getMessageSignature().getOperation() == null) {
+ fail("Operation should not be null");
+ }
+
+ if (interaction.getMessageSignature().getOperation().equals(opname) == false) {
+ fail("Operation expected '"+opname+"', but got: "+
+ interaction.getMessageSignature().getOperation());
+ }
+
+ if (interaction.getMessageSignature().getTypes().size() != 1) {
+ fail("Only one type expected, but got: "+interaction.getMessageSignature().getTypes().size());
+ }
+
+ TypeReference ref=interaction.getMessageSignature().getTypes().get(0);
+
+ if (ref.getNamespace() == null ||
+ ref.getNamespace().equals(ns) == false) {
+ fail("Namespace should be '"+ns+"', but found: "+ref.getNamespace());
+ }
+
+ if (ref.getLocalpart() == null ||
+ ref.getLocalpart().equals(lp) == false) {
+ fail("Local type should be '"+lp+"', but found: "+ref.getLocalpart());
+ }
+ }
}
Modified: cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/TestESBService.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/TestESBService.java 2008-07-04 13:40:31 UTC (rev 121)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/TestESBService.java 2008-07-04 14:48:55 UTC (rev 122)
@@ -110,9 +110,12 @@
}
+ public void setLoop(boolean bool) {
+ m_loop = bool;
+ }
+
public boolean isLoop() {
- // TODO Auto-generated method stub
- return false;
+ return(m_loop);
}
public void setRoot(boolean bool) {
@@ -149,6 +152,7 @@
private ESBLanguageModel m_model=null;
private List<ESBAction> m_actions=new java.util.Vector<ESBAction>();
private boolean m_root=false;
+ private boolean m_loop=false;
private boolean m_sessionBased=false;
private boolean m_createSession=false;
private Class<?> m_sessionClass=null;
Modified: cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/WhileActionTest.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/WhileActionTest.java 2008-07-04 13:40:31 UTC (rev 121)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/WhileActionTest.java 2008-07-04 14:48:55 UTC (rev 122)
@@ -367,7 +367,7 @@
java.util.List<Activity> activities=new java.util.Vector<Activity>();
- action.convert(activities, new DefaultConversionContext());
+ action.convert(activities, new DefaultConversionContext(null));
if (activities.size() != 2) {
fail("Expecting two activities, but got: "+activities.size());
@@ -429,7 +429,7 @@
java.util.List<Activity> activities=new java.util.Vector<Activity>();
- action.convert(activities, new DefaultConversionContext());
+ action.convert(activities, new DefaultConversionContext(null));
if (activities.size() != 2) {
fail("Expecting two activities, but got: "+activities.size());
15 years, 11 months
Overlord SVN: r121 - in cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src: test/org/jboss/tools/overlord/jbossesb/model/actions and 1 other directory.
by overlord-commits@lists.jboss.org
Author: objectiser
Date: 2008-07-04 09:40:31 -0400 (Fri, 04 Jul 2008)
New Revision: 121
Added:
cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/SetMessageAction.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/SetMessageActionTest.java
Removed:
cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/GetVariableAction.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/GetVariableActionTest.java
Modified:
cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/SetStateAction.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/SetStateActionTest.java
Log:
Changed GetVariableAction to SetMessageAction, as this more accurately reflects the purpose of the action.
Deleted: cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/GetVariableAction.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/GetVariableAction.java 2008-07-04 13:36:08 UTC (rev 120)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/GetVariableAction.java 2008-07-04 13:40:31 UTC (rev 121)
@@ -1,119 +0,0 @@
-/*
- * 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 java.util.logging.Logger;
-
-import org.jboss.tools.overlord.jbossesb.model.*;
-import org.scribble.model.*;
-
-/**
- * The model component for the 'GetVariableAction'.
- *
- * @author gary
- */
-public class GetVariableAction extends AbstractESBAction {
-
- private static final String VARIABLE = "variable";
-
- /**
- * The constructor for the action.
- *
- * @param service The reference to the service in which
- * the action is contained
- * @param action The XML configuration details for the action
- */
- public GetVariableAction(ESBService service,
- org.w3c.dom.Element action) {
- super(service, action);
- }
-
- /**
- * This method returns the mandatory property names.
- *
- * @return The mandatory property names
- */
- @Override
- protected String[] getMandatoryProperties() {
- return(new String[]{VARIABLE});
- }
-
- /**
- * 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);
-
- String variable=getPropertyValue(VARIABLE);
-
- if (variable != null) {
-
- // Check that variable defined on session class
- Class<?> cls=getService().getSessionClass();
-
- if (cls != null) {
- try {
- java.beans.BeanInfo bi=java.beans.Introspector.getBeanInfo(cls);
-
- boolean f_found=false;
-
- java.beans.PropertyDescriptor[] pds=bi.getPropertyDescriptors();
-
- for (int i=0; f_found==false && pds != null &&
- i < pds.length; i++) {
- if (pds[i].getName().equals(variable)) {
- f_found = true;
- }
- }
-
- if (f_found == false) {
- l.error(this, org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.jbossesb.model.actions.Messages"),
- "_NOT_FOUND_VARIABLE",
- new String[]{variable, cls.getName()}), null);
- }
- } catch(Exception e) {
- logger.log(java.util.logging.Level.SEVERE,
- "Failed to check if variable '"+
- variable+"' exists on session class '"+
- cls+"'", e);
- }
- }
- }
- }
-
- /**
- * 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) {
- }
-
- private static Logger logger = Logger.getLogger("org.jboss.tools.overlord.jbossesb.model.actions");
-}
Copied: cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/SetMessageAction.java (from rev 120, cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/GetVariableAction.java)
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/SetMessageAction.java (rev 0)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/SetMessageAction.java 2008-07-04 13:40:31 UTC (rev 121)
@@ -0,0 +1,78 @@
+/*
+ * 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.*;
+import org.scribble.model.*;
+
+/**
+ * The model component for the 'SetMessageAction'.
+ *
+ * @author gary
+ */
+public class SetMessageAction extends AbstractESBAction {
+
+ public static final String EXPRESSION = "expression";
+
+ /**
+ * The constructor for the action.
+ *
+ * @param service The reference to the service in which
+ * the action is contained
+ * @param action The XML configuration details for the action
+ */
+ public SetMessageAction(ESBService service,
+ org.w3c.dom.Element action) {
+ super(service, action);
+ }
+
+ /**
+ * This method returns the mandatory property names.
+ *
+ * @return The mandatory property names
+ */
+ @Override
+ protected String[] getMandatoryProperties() {
+ return(new String[]{EXPRESSION});
+ }
+
+ /**
+ * 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);
+
+ }
+
+ /**
+ * 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) {
+ }
+}
Modified: cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/SetStateAction.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/SetStateAction.java 2008-07-04 13:36:08 UTC (rev 120)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/SetStateAction.java 2008-07-04 13:40:31 UTC (rev 121)
@@ -23,7 +23,7 @@
import org.scribble.model.*;
/**
- * The model component for the 'SetVariableAction'.
+ * The model component for the 'SetStateAction'.
*
* @author gary
*/
Deleted: cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/GetVariableActionTest.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/GetVariableActionTest.java 2008-07-04 13:36:08 UTC (rev 120)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/GetVariableActionTest.java 2008-07-04 13:40:31 UTC (rev 121)
@@ -1,110 +0,0 @@
-/*
- * 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 junit.framework.TestCase;
-
-public class GetVariableActionTest extends TestCase {
-
- public void testValidateNoVariable() {
- TestESBService service=new TestESBService();
- service.setRoot(true);
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
-
- GetVariableAction action=new GetVariableAction(service, elem);
-
- service.getActions().add(action);
-
- TestModelListener l=new TestModelListener();
-
- l.addExpectedError(org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.jbossesb.model.Messages"),
- "_NOT_SPECIFIED_PROPERTY",
- new String[]{"variable"}));
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-
- public void testValidateVariableNotClassProperty() {
- String varName="classX";
- Class<?> cls=java.lang.Object.class;
-
- TestESBService service=new TestESBService();
- service.setRoot(true);
- service.setSessionClass(cls);
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put("variable", varName);
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null,
- props, null);
-
- GetVariableAction action=new GetVariableAction(service, elem);
-
- service.getActions().add(action);
-
- TestModelListener l=new TestModelListener();
-
- l.addExpectedError(org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.jbossesb.model.actions.Messages"),
- "_NOT_FOUND_VARIABLE",
- new String[]{varName, cls.getName()}));
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-
- public void testValidateVariableIsClassProperty() {
- String varName="class";
- Class<?> cls=java.lang.Object.class;
-
- TestESBService service=new TestESBService();
- service.setRoot(true);
- service.setSessionClass(cls);
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put("variable", varName);
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null,
- props, null);
-
- GetVariableAction action=new GetVariableAction(service, elem);
-
- service.getActions().add(action);
-
- TestModelListener l=new TestModelListener();
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-}
Copied: cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/SetMessageActionTest.java (from rev 120, cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/GetVariableActionTest.java)
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/SetMessageActionTest.java (rev 0)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/SetMessageActionTest.java 2008-07-04 13:40:31 UTC (rev 121)
@@ -0,0 +1,50 @@
+/*
+ * 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 junit.framework.TestCase;
+
+public class SetMessageActionTest extends TestCase {
+
+ public void testValidateNoExpression() {
+ TestESBService service=new TestESBService();
+ service.setRoot(true);
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
+
+ SetMessageAction action=new SetMessageAction(service, elem);
+
+ service.getActions().add(action);
+
+ TestModelListener l=new TestModelListener();
+
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.jbossesb.model.Messages"),
+ "_NOT_SPECIFIED_PROPERTY",
+ new String[]{SetMessageAction.EXPRESSION}));
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+}
Modified: cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/SetStateActionTest.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/SetStateActionTest.java 2008-07-04 13:36:08 UTC (rev 120)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/SetStateActionTest.java 2008-07-04 13:40:31 UTC (rev 121)
@@ -40,7 +40,7 @@
java.util.PropertyResourceBundle.getBundle(
"org.jboss.tools.overlord.jbossesb.model.Messages"),
"_NOT_SPECIFIED_PROPERTY",
- new String[]{"variable"}));
+ new String[]{SetStateAction.VARIABLE}));
action.validate(l);
15 years, 11 months
Overlord SVN: r120 - in cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src: test/org/jboss/tools/overlord/jbossesb/model/actions and 1 other directory.
by overlord-commits@lists.jboss.org
Author: objectiser
Date: 2008-07-04 09:36:08 -0400 (Fri, 04 Jul 2008)
New Revision: 120
Added:
cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/SetStateAction.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/SetStateActionTest.java
Removed:
cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/SetVariableAction.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/SetVariableActionTest.java
Modified:
cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/Messages.properties
Log:
Changed SetVariableAction to be SetStateAction, with different expressions depending upon whether the state was being set from information derived from the message or state.
Modified: cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/Messages.properties
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/Messages.properties 2008-07-04 11:58:37 UTC (rev 119)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/Messages.properties 2008-07-04 13:36:08 UTC (rev 120)
@@ -29,6 +29,7 @@
_NOT_SPECIFIED_CONVERSATION_TYPE=Conversation type must be specified on root service descriptor
_NOT_SPECIFIED_REQ_RESP_EPR=Send does not contain request service category/name or response client EPR
_MUST_BE_FIRST_ACTION='{0}' action must be first in the service descriptor
+_MUST_SPECIFY_STATE_OR_MESSAGE_EXPRESSION=Must specify either a State OR Message based expression
_PARALLEL_MORE_THAN_TWO_PATHS=Parallel action must specify two or more paths
_PARALLEL_PATH_AFTER_JOIN=Parallel path must not be defined after a join
_PATH_SERVICE_DETAILS_MISSING=One or more paths are missing the service cateogry and/or name
Copied: cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/SetStateAction.java (from rev 110, cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/SetVariableAction.java)
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/SetStateAction.java (rev 0)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/SetStateAction.java 2008-07-04 13:36:08 UTC (rev 120)
@@ -0,0 +1,134 @@
+/*
+ * 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 java.util.logging.Logger;
+
+import org.jboss.tools.overlord.jbossesb.model.*;
+import org.scribble.model.*;
+
+/**
+ * The model component for the 'SetVariableAction'.
+ *
+ * @author gary
+ */
+public class SetStateAction extends AbstractESBAction {
+
+ public static final String STATE_EXPRESSION = "stateExpression";
+ public static final String MESSAGE_EXPRESSION = "messageExpression";
+ public static final String VARIABLE = "variable";
+
+ /**
+ * The constructor for the action.
+ *
+ * @param service The reference to the service in which
+ * the action is contained
+ * @param action The XML configuration details for the action
+ */
+ public SetStateAction(ESBService service,
+ org.w3c.dom.Element action) {
+ super(service, action);
+ }
+
+ /**
+ * This method returns the mandatory property names.
+ *
+ * @return The mandatory property names
+ */
+ @Override
+ protected String[] getMandatoryProperties() {
+ return(new String[]{VARIABLE});
+ }
+
+ /**
+ * 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);
+
+ String variable=getPropertyValue(VARIABLE);
+
+ if (variable != null) {
+
+ // Check that variable defined on session class
+ Class<?> cls=getService().getSessionClass();
+
+ if (cls != null) {
+ try {
+ java.beans.BeanInfo bi=java.beans.Introspector.getBeanInfo(cls);
+
+ boolean f_found=false;
+
+ java.beans.PropertyDescriptor[] pds=bi.getPropertyDescriptors();
+
+ for (int i=0; f_found==false && pds != null &&
+ i < pds.length; i++) {
+ if (pds[i].getName().equals(variable)) {
+ f_found = true;
+ }
+ }
+
+ if (f_found == false) {
+ l.error(this, org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.jbossesb.model.actions.Messages"),
+ "_NOT_FOUND_VARIABLE",
+ new String[]{variable, cls.getName()}), null);
+ }
+ } catch(Exception e) {
+ logger.log(java.util.logging.Level.SEVERE,
+ "Failed to check if variable '"+
+ variable+"' exists on session class '"+
+ cls+"'", e);
+ }
+ }
+ }
+
+ // Check that state or message expression defined
+ String stateExpression=getPropertyValue(STATE_EXPRESSION);
+ String messageExpression=getPropertyValue(MESSAGE_EXPRESSION);
+
+ if ((stateExpression == null && messageExpression == null) ||
+ (stateExpression != null && messageExpression != null)) {
+ l.error(this, org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.jbossesb.model.actions.Messages"),
+ "_MUST_SPECIFY_STATE_OR_MESSAGE_EXPRESSION",
+ 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) {
+ }
+
+ private static Logger logger = Logger.getLogger("org.jboss.tools.overlord.jbossesb.model.actions");
+}
Deleted: cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/SetVariableAction.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/SetVariableAction.java 2008-07-04 11:58:37 UTC (rev 119)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/SetVariableAction.java 2008-07-04 13:36:08 UTC (rev 120)
@@ -1,119 +0,0 @@
-/*
- * 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 java.util.logging.Logger;
-
-import org.jboss.tools.overlord.jbossesb.model.*;
-import org.scribble.model.*;
-
-/**
- * The model component for the 'SetVariableAction'.
- *
- * @author gary
- */
-public class SetVariableAction extends AbstractESBAction {
-
- private static final String VARIABLE = "variable";
-
- /**
- * The constructor for the action.
- *
- * @param service The reference to the service in which
- * the action is contained
- * @param action The XML configuration details for the action
- */
- public SetVariableAction(ESBService service,
- org.w3c.dom.Element action) {
- super(service, action);
- }
-
- /**
- * This method returns the mandatory property names.
- *
- * @return The mandatory property names
- */
- @Override
- protected String[] getMandatoryProperties() {
- return(new String[]{VARIABLE});
- }
-
- /**
- * 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);
-
- String variable=getPropertyValue(VARIABLE);
-
- if (variable != null) {
-
- // Check that variable defined on session class
- Class<?> cls=getService().getSessionClass();
-
- if (cls != null) {
- try {
- java.beans.BeanInfo bi=java.beans.Introspector.getBeanInfo(cls);
-
- boolean f_found=false;
-
- java.beans.PropertyDescriptor[] pds=bi.getPropertyDescriptors();
-
- for (int i=0; f_found==false && pds != null &&
- i < pds.length; i++) {
- if (pds[i].getName().equals(variable)) {
- f_found = true;
- }
- }
-
- if (f_found == false) {
- l.error(this, org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.jbossesb.model.actions.Messages"),
- "_NOT_FOUND_VARIABLE",
- new String[]{variable, cls.getName()}), null);
- }
- } catch(Exception e) {
- logger.log(java.util.logging.Level.SEVERE,
- "Failed to check if variable '"+
- variable+"' exists on session class '"+
- cls+"'", e);
- }
- }
- }
- }
-
- /**
- * 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) {
- }
-
- private static Logger logger = Logger.getLogger("org.jboss.tools.overlord.jbossesb.model.actions");
-}
Copied: cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/SetStateActionTest.java (from rev 110, cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/SetVariableActionTest.java)
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/SetStateActionTest.java (rev 0)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/SetStateActionTest.java 2008-07-04 13:36:08 UTC (rev 120)
@@ -0,0 +1,209 @@
+/*
+ * 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 junit.framework.TestCase;
+
+public class SetStateActionTest extends TestCase {
+
+ public void testValidateNoVariable() {
+ TestESBService service=new TestESBService();
+ service.setRoot(true);
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put(SetStateAction.STATE_EXPRESSION, "");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
+
+ SetStateAction action=new SetStateAction(service, elem);
+
+ service.getActions().add(action);
+
+ TestModelListener l=new TestModelListener();
+
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.jbossesb.model.Messages"),
+ "_NOT_SPECIFIED_PROPERTY",
+ new String[]{"variable"}));
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testValidateVariableNotClassProperty() {
+ String varName="classX";
+ Class<?> cls=java.lang.Object.class;
+
+ TestESBService service=new TestESBService();
+ service.setRoot(true);
+ service.setSessionClass(cls);
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put(SetStateAction.VARIABLE, varName);
+ props.put(SetStateAction.STATE_EXPRESSION, "");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null,
+ props, null);
+
+ SetStateAction action=new SetStateAction(service, elem);
+
+ service.getActions().add(action);
+
+ TestModelListener l=new TestModelListener();
+
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.jbossesb.model.actions.Messages"),
+ "_NOT_FOUND_VARIABLE",
+ new String[]{varName, cls.getName()}));
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testValidateVariableIsClassProperty() {
+ String varName="class";
+ Class<?> cls=java.lang.Object.class;
+
+ TestESBService service=new TestESBService();
+ service.setRoot(true);
+ service.setSessionClass(cls);
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put(SetStateAction.VARIABLE, varName);
+ props.put(SetStateAction.STATE_EXPRESSION, "");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null,
+ props, null);
+
+ SetStateAction action=new SetStateAction(service, elem);
+
+ service.getActions().add(action);
+
+ TestModelListener l=new TestModelListener();
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testValidateMissingExpression() {
+ String varName="class";
+ Class<?> cls=java.lang.Object.class;
+
+ TestESBService service=new TestESBService();
+ service.setRoot(true);
+ service.setSessionClass(cls);
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put(SetStateAction.VARIABLE, varName);
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null,
+ props, null);
+
+ SetStateAction action=new SetStateAction(service, elem);
+
+ service.getActions().add(action);
+
+ TestModelListener l=new TestModelListener();
+
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.jbossesb.model.actions.Messages"),
+ "_MUST_SPECIFY_STATE_OR_MESSAGE_EXPRESSION",
+ new String[]{}));
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testValidateBothExpressions() {
+ String varName="class";
+ Class<?> cls=java.lang.Object.class;
+
+ TestESBService service=new TestESBService();
+ service.setRoot(true);
+ service.setSessionClass(cls);
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put(SetStateAction.VARIABLE, varName);
+ props.put(SetStateAction.MESSAGE_EXPRESSION, "mesg");
+ props.put(SetStateAction.STATE_EXPRESSION, "state");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null,
+ props, null);
+
+ SetStateAction action=new SetStateAction(service, elem);
+
+ service.getActions().add(action);
+
+ TestModelListener l=new TestModelListener();
+
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.jbossesb.model.actions.Messages"),
+ "_MUST_SPECIFY_STATE_OR_MESSAGE_EXPRESSION",
+ new String[]{}));
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testValidateMessageExpression() {
+ String varName="class";
+ Class<?> cls=java.lang.Object.class;
+
+ TestESBService service=new TestESBService();
+ service.setRoot(true);
+ service.setSessionClass(cls);
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put(SetStateAction.VARIABLE, varName);
+ props.put(SetStateAction.MESSAGE_EXPRESSION, "mesg");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null,
+ props, null);
+
+ SetStateAction action=new SetStateAction(service, elem);
+
+ service.getActions().add(action);
+
+ TestModelListener l=new TestModelListener();
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+}
Deleted: cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/SetVariableActionTest.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/SetVariableActionTest.java 2008-07-04 11:58:37 UTC (rev 119)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/actions/SetVariableActionTest.java 2008-07-04 13:36:08 UTC (rev 120)
@@ -1,110 +0,0 @@
-/*
- * 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 junit.framework.TestCase;
-
-public class SetVariableActionTest extends TestCase {
-
- public void testValidateNoVariable() {
- TestESBService service=new TestESBService();
- service.setRoot(true);
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
-
- SetVariableAction action=new SetVariableAction(service, elem);
-
- service.getActions().add(action);
-
- TestModelListener l=new TestModelListener();
-
- l.addExpectedError(org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.jbossesb.model.Messages"),
- "_NOT_SPECIFIED_PROPERTY",
- new String[]{"variable"}));
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-
- public void testValidateVariableNotClassProperty() {
- String varName="classX";
- Class<?> cls=java.lang.Object.class;
-
- TestESBService service=new TestESBService();
- service.setRoot(true);
- service.setSessionClass(cls);
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put("variable", varName);
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null,
- props, null);
-
- SetVariableAction action=new SetVariableAction(service, elem);
-
- service.getActions().add(action);
-
- TestModelListener l=new TestModelListener();
-
- l.addExpectedError(org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.jbossesb.model.actions.Messages"),
- "_NOT_FOUND_VARIABLE",
- new String[]{varName, cls.getName()}));
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-
- public void testValidateVariableIsClassProperty() {
- String varName="class";
- Class<?> cls=java.lang.Object.class;
-
- TestESBService service=new TestESBService();
- service.setRoot(true);
- service.setSessionClass(cls);
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put("variable", varName);
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null,
- props, null);
-
- SetVariableAction action=new SetVariableAction(service, elem);
-
- service.getActions().add(action);
-
- TestModelListener l=new TestModelListener();
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-}
15 years, 11 months
Overlord SVN: r118 - overlord.
by overlord-commits@lists.jboss.org
Author: mark.little(a)jboss.com
Date: 2008-07-04 07:28:23 -0400 (Fri, 04 Jul 2008)
New Revision: 118
Added:
overlord/branches/
overlord/tags/
overlord/trunk/
Log:
15 years, 11 months
Overlord SVN: r117 - overlord.
by overlord-commits@lists.jboss.org
Author: mark.little(a)jboss.com
Date: 2008-07-04 07:25:57 -0400 (Fri, 04 Jul 2008)
New Revision: 117
Removed:
overlord/example.txt
Log:
deleted
Deleted: overlord/example.txt
===================================================================
15 years, 11 months
Overlord SVN: r116 - /.
by overlord-commits@lists.jboss.org
Author: mark.little(a)jboss.com
Date: 2008-07-04 07:25:33 -0400 (Fri, 04 Jul 2008)
New Revision: 116
Removed:
example.txt
Log:
deleted
Deleted: example.txt
===================================================================
15 years, 11 months
Overlord SVN: r115 - overlord and 1 other directory.
by overlord-commits@lists.jboss.org
Author: mark.little(a)jboss.com
Date: 2008-07-04 07:23:48 -0400 (Fri, 04 Jul 2008)
New Revision: 115
Added:
overlord/
overlord/example.txt
Log:
created
Added: overlord/example.txt
===================================================================
15 years, 11 months