You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airavata.apache.org by la...@apache.org on 2011/08/26 23:51:08 UTC

svn commit: r1162271 - in /incubator/airavata/trunk/modules/xbaya-gui: ./ src/main/java/org/apache/airavata/xbaya/ src/main/java/org/apache/airavata/xbaya/interpretor/ src/main/java/org/apache/airavata/xbaya/jython/lib/ src/main/java/org/apache/airavat...

Author: lahiru
Date: Fri Aug 26 21:51:08 2011
New Revision: 1162271

URL: http://svn.apache.org/viewvc?rev=1162271&view=rev
Log:
removing old workflow-tracking dependency from xbaya-gui.

Modified:
    incubator/airavata/trunk/modules/xbaya-gui/pom.xml
    incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/GpelWorkflowClient.java
    incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/interpretor/WorkflowInterpreter.java
    incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/jython/lib/GenericInvoker.java
    incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/jython/lib/NotificationSender.java
    incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/jython/lib/ServiceNotificationSender.java
    incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/lead/NotificationHandler.java
    incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/test/MonitorTestCase.java
    incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/test/ResourceNotifierTestCase.java
    incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/test/WorkflowModificationTestCase.java
    incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/test/service/ServiceNotificationSender.java

Modified: incubator/airavata/trunk/modules/xbaya-gui/pom.xml
URL: http://svn.apache.org/viewvc/incubator/airavata/trunk/modules/xbaya-gui/pom.xml?rev=1162271&r1=1162270&r2=1162271&view=diff
==============================================================================
--- incubator/airavata/trunk/modules/xbaya-gui/pom.xml (original)
+++ incubator/airavata/trunk/modules/xbaya-gui/pom.xml Fri Aug 26 21:51:08 2011
@@ -269,16 +269,6 @@
 			<version>0.9b4-1</version>
 		</dependency>
 		<dependency>
-			<groupId>workflow-tracking</groupId>
-			<artifactId>workflow_tracking</artifactId>
-			<version>2.7.1</version>
-		</dependency>
-		<dependency>
-			<groupId>workflow-tracking</groupId>
-			<artifactId>workflow_tracking_types</artifactId>
-			<version>2.6</version>
-		</dependency>
-		<dependency>
 			<groupId>xutil</groupId>
 			<artifactId>xutil</artifactId>
 			<version>0.2</version>

Modified: incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/GpelWorkflowClient.java
URL: http://svn.apache.org/viewvc/incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/GpelWorkflowClient.java?rev=1162271&r1=1162270&r2=1162271&view=diff
==============================================================================
--- incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/GpelWorkflowClient.java (original)
+++ incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/GpelWorkflowClient.java Fri Aug 26 21:51:08 2011
@@ -32,6 +32,9 @@ import java.util.List;
 
 import javax.xml.namespace.QName;
 
+import org.apache.airavata.workflow.tracking.client.Callback;
+import org.apache.airavata.workflow.tracking.client.LeadNotificationManager;
+import org.apache.airavata.workflow.tracking.client.NotificationType;
 import org.apache.airavata.wsmg.client.WseMsgBrokerClient;
 import org.apache.airavata.xbaya.component.ComponentException;
 import org.apache.airavata.xbaya.component.ws.WSComponentPort;
@@ -58,9 +61,7 @@ import xsul.invoker.gsi.GsiInvoker;
 import xsul.lead.LeadContextHeader;
 import xsul.ws_addressing.WsaEndpointReference;
 import xsul5.wsdl.WsdlDefinitions;
-import edu.indiana.extreme.lead.workflow_tracking.client.Callback;
-import edu.indiana.extreme.lead.workflow_tracking.client.LeadNotificationManager;
-import edu.indiana.extreme.lead.workflow_tracking.client.NotificationType;
+
 
 public class GpelWorkflowClient implements Callback {
 
@@ -106,7 +107,7 @@ public class GpelWorkflowClient implemen
         invoke(userName, password, topic, workflow, inputs);
 
         LeadNotificationManager.createMessageBoxSubscription("http://127.0.0.1:13333/MsgBox", "127.0.0.1:12346",
-                "topic123", "", new GpelWorkflowClient(), "");
+                "topic123", "", new GpelWorkflowClient(), false);
 
     }
 

Modified: incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/interpretor/WorkflowInterpreter.java
URL: http://svn.apache.org/viewvc/incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/interpretor/WorkflowInterpreter.java?rev=1162271&r1=1162270&r2=1162271&view=diff
==============================================================================
--- incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/interpretor/WorkflowInterpreter.java (original)
+++ incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/interpretor/WorkflowInterpreter.java Fri Aug 26 21:51:08 2011
@@ -459,7 +459,7 @@ public class WorkflowInterpreter {
             Object inputVal = findInputFromPort(node.getInputPort(0));
             String instanceId = inputVal.toString();
 
-            this.notifier.resourceMapping(instanceId, "Terminating EC2 Instance:" + instanceId);
+//            this.notifier.resourceMapping(instanceId, "Terminating EC2 Instance:" + instanceId);
 
             /*
              * Terminate instance
@@ -645,7 +645,7 @@ public class WorkflowInterpreter {
         // find inputs
         List<DataPort> inputPorts = node.getInputPorts();
         ODEClient odeClient = new ODEClient();
-        List<WSComponentPort> inputComponents = odeClient.getInputs(this.workflow);
+            List<WSComponentPort> inputComponents = odeClient.getInputs(this.workflow);
         for (DataPort port : inputPorts) {
             Object inputVal = findInputFromPort(port);
 

Modified: incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/jython/lib/GenericInvoker.java
URL: http://svn.apache.org/viewvc/incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/jython/lib/GenericInvoker.java?rev=1162271&r1=1162270&r2=1162271&view=diff
==============================================================================
--- incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/jython/lib/GenericInvoker.java (original)
+++ incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/jython/lib/GenericInvoker.java Fri Aug 26 21:51:08 2011
@@ -48,6 +48,7 @@ import org.xmlpull.v1.builder.XmlElement
 
 import xsul.invoker.gsi.GsiInvoker;
 import xsul.lead.LeadContextHeader;
+import xsul.ws_addressing.WsaEndpointReference;
 import xsul.wsdl.WsdlDefinitions;
 import xsul.wsdl.WsdlException;
 import xsul.wsdl.WsdlResolver;
@@ -248,12 +249,16 @@ public class GenericInvoker implements W
         // Set LEAD context header.
         LeadContextHeaderHelper leadContextHelper = new LeadContextHeaderHelper();
         LeadContextHeader leadContext = leadContextHelper.getLeadContextHeader();
-        leadContext.setEventSink(this.notifier.getEventSink());
+        try {
+            leadContext.setEventSink(new WsaEndpointReference(new URI(this.notifier.getEventSink().getAddress())));
+            leadContext.setServiceId(this.nodeID);
+            leadContext.setNodeId(this.nodeID);
+            leadContext.setWorkflowId(this.notifier.getWorkflowID());
+            leadContext.setTimeStep("1");
+        } catch (URISyntaxException e) {
+
+        }
         StickySoapHeaderHandler handler = new StickySoapHeaderHandler("use-lead-header", leadContext);
-        leadContext.setServiceId(this.nodeID);
-        leadContext.setNodeId(this.nodeID);
-        leadContext.setWorkflowId(this.notifier.getWorkflowID());
-        leadContext.setTimeStep("1");
         // if(this.configuration != null){
         // leadContext.setMyleadAgentUrl(configuration.getMyLeadAgentURL());
         // leadContext.setXRegistryUrl(configuration.getXRegistryURL());
@@ -348,7 +353,7 @@ public class GenericInvoker implements W
         logger.entering();
 
         try {
-            WSIFMessage inputMessage = this.invoker.getInputs();
+                WSIFMessage inputMessage = this.invoker.getInputs();
             logger.finest("inputMessage: " + XMLUtil.xmlElementToString((XmlElement) inputMessage));
             this.notifier.invokingService(inputMessage);
 

Modified: incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/jython/lib/NotificationSender.java
URL: http://svn.apache.org/viewvc/incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/jython/lib/NotificationSender.java?rev=1162271&r1=1162270&r2=1162271&view=diff
==============================================================================
--- incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/jython/lib/NotificationSender.java (original)
+++ incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/jython/lib/NotificationSender.java Fri Aug 26 21:51:08 2011
@@ -22,29 +22,25 @@
 package org.apache.airavata.xbaya.jython.lib;
 
 import java.net.URI;
+import java.util.Properties;
 
-import org.apache.airavata.wsmg.client.WseMsgBrokerClient;
+import org.apache.airavata.workflow.tracking.NotifierFactory;
+import org.apache.airavata.workflow.tracking.WorkflowNotifier;
+import org.apache.airavata.workflow.tracking.common.*;
 import org.apache.airavata.xbaya.util.StringUtil;
 import org.apache.airavata.xbaya.util.XMLUtil;
+import org.apache.axis2.addressing.EndpointReference;
 import org.python.core.PyObject;
 import org.xmlpull.infoset.XmlElement;
 
-import xsul.XmlConstants;
 import xsul.ws_addressing.WsaEndpointReference;
 import xsul5.MLogger;
-import edu.indiana.extreme.lead.workflow_tracking.Notifier;
-import edu.indiana.extreme.lead.workflow_tracking.NotifierFactory;
-import edu.indiana.extreme.lead.workflow_tracking.common.AnnotationProps;
-import edu.indiana.extreme.lead.workflow_tracking.common.ConstructorConsts;
-import edu.indiana.extreme.lead.workflow_tracking.common.ConstructorProps;
-import edu.indiana.extreme.lead.workflow_tracking.common.InvocationContext;
-import edu.indiana.extreme.lead.workflow_tracking.common.InvocationEntity;
 
 public class NotificationSender {
 
     protected static final MLogger logger = MLogger.getLogger();
 
-    protected Notifier notifier;
+    protected WorkflowNotifier notifier;
 
     protected String brokerURL;
 
@@ -58,7 +54,9 @@ public class NotificationSender {
 
     protected InvocationContext invocationContext;
 
-    protected WsaEndpointReference eventSink;
+    protected EndpointReference eventSink;
+
+    protected WorkflowTrackingContext context;
 
     /**
      * Constructs a NotificationSender.
@@ -84,19 +82,16 @@ public class NotificationSender {
         this.brokerURL = brokerURL;
         this.workflowID = URI.create(StringUtil.convertToJavaIdentifier(this.topic));
         //todo have to remove the xsul dependency completely
-        URI temporaryURI = URI.create(WseMsgBrokerClient.createEndpointReference(this.brokerURL, this.topic).getAddress());
-        this.eventSink = new WsaEndpointReference(temporaryURI);
-        ConstructorProps props = ConstructorProps.newProps();
-        props.set(ConstructorConsts.BROKER_EPR, XmlConstants.BUILDER.serializeToString(this.eventSink));
-        AnnotationProps annotationProps = AnnotationProps.newProps();
-        props.set(ConstructorConsts.ANNOTATIONS, annotationProps);
-
-        this.notifier = NotifierFactory.createNotifier(props);
+        this.eventSink = new EndpointReference(this.brokerURL);
+        Properties props = new Properties();
 
+        this.notifier = NotifierFactory.createNotifier();
         URI initiatorWorkflowID = null;
         URI initiatorServiceID = URI.create("XBaya");
         String initiatorWorkflowNodeID = null;
         Integer initiatorWorkflowTimeStep = null;
+        context = this.notifier.createTrackingContext(props,eventSink,initiatorWorkflowID,
+                initiatorServiceID,initiatorWorkflowNodeID,initiatorWorkflowTimeStep);
         this.initiator = this.notifier.createEntity(initiatorWorkflowID, initiatorServiceID, initiatorWorkflowNodeID,
                 initiatorWorkflowTimeStep);
 
@@ -111,7 +106,7 @@ public class NotificationSender {
     /**
      * @return The event sink EPR.
      */
-    public WsaEndpointReference getEventSink() {
+    public EndpointReference getEventSink() {
         return this.eventSink;
     }
 
@@ -128,7 +123,7 @@ public class NotificationSender {
             }
             message += keywords[i] + "=" + args[i];
         }
-        this.invocationContext = this.notifier.workflowInvoked(this.receiver, this.initiator, message);
+        this.invocationContext = this.notifier.workflowInvoked(this.context,this.initiator, message);
     }
 
     public void workflowStarted(Object[] args, String[] keywords) {
@@ -140,7 +135,7 @@ public class NotificationSender {
             }
             message += keywords[i] + "=" + args[i];
         }
-        this.invocationContext = this.notifier.workflowInvoked(this.receiver, this.initiator, message);
+        this.invocationContext = this.notifier.workflowInvoked(this.context,this.initiator, message);
     }
 
     /**
@@ -156,8 +151,8 @@ public class NotificationSender {
             }
             message += keywords[i] + "=" + args[i];
         }
-        this.notifier.sendingResult(this.invocationContext, message);
-        this.notifier.workflowTerminated(this.workflowID, "Workflow finished successfully.");
+        this.notifier.sendingResult(context,this.invocationContext, message);
+        this.notifier.workflowTerminated(context,this.workflowID, "Workflow finished successfully.");
     }
 
     public void sendingPartialResults(Object[] args, String[] keywords) {
@@ -169,7 +164,7 @@ public class NotificationSender {
             }
             message += keywords[i] + "=" + args[i];
         }
-        this.notifier.sendingResult(this.invocationContext, message);
+        this.notifier.sendingResult(context,this.invocationContext, message);
     }
 
     /**
@@ -185,12 +180,12 @@ public class NotificationSender {
             }
             message += keywords[i] + "=" + args[i];
         }
-        this.notifier.sendingResult(this.invocationContext, message);
-        this.notifier.workflowTerminated(this.workflowID, "Workflow finished successfully.");
+        this.notifier.sendingResult(context,this.invocationContext, message);
+        this.notifier.workflowTerminated(context,this.workflowID, "Workflow finished successfully.");
     }
 
     public void workflowTerminated() {
-        this.notifier.workflowTerminated(this.workflowID, "Workflow finished successfully.");
+        this.notifier.workflowTerminated(context,this.workflowID, "Workflow finished successfully.");
     }
 
     /**
@@ -232,18 +227,14 @@ public class NotificationSender {
             String stackTrace = StringUtil.getStackTraceInString(e);
             XmlElement stackTraceElement = XMLUtil.BUILDER.newFragment("stackTrace");
             stackTraceElement.addChild(stackTrace);
-            this.notifier.sendingFault(this.invocationContext, message, XMLUtil.xmlElementToString(stackTraceElement));
+            this.notifier.sendingFault(context,this.invocationContext, message, XMLUtil.xmlElementToString(stackTraceElement));
         } else {
-            this.notifier.sendingFault(this.invocationContext, message);
+            this.notifier.sendingFault(context,this.invocationContext, message);
         }
     }
 
     public void info(String message) {
-        this.notifier.info(this.invocationContext, message);
-    }
-
-    public void resourceMapping(String host, String... message) {
-        this.notifier.resourceMapping(this.invocationContext, host, 1, message);
+        this.notifier.info(context,message);
     }
 
     /**
@@ -251,6 +242,7 @@ public class NotificationSender {
      * @return The ServiceNoficationSender created.
      */
     public ServiceNotificationSender createServiceNotificationSender(String nodeID) {
-        return new ServiceNotificationSender(this.notifier, this.eventSink, this.initiator, this.workflowID, nodeID);
+        return new ServiceNotificationSender(this.notifier, this.eventSink, this.initiator, this.workflowID, nodeID,
+                this.context);
     }
 }
\ No newline at end of file

Modified: incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/jython/lib/ServiceNotificationSender.java
URL: http://svn.apache.org/viewvc/incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/jython/lib/ServiceNotificationSender.java?rev=1162271&r1=1162270&r2=1162271&view=diff
==============================================================================
--- incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/jython/lib/ServiceNotificationSender.java (original)
+++ incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/jython/lib/ServiceNotificationSender.java Fri Aug 26 21:51:08 2011
@@ -24,8 +24,14 @@ package org.apache.airavata.xbaya.jython
 import java.net.URI;
 import java.util.Iterator;
 
+import org.apache.airavata.workflow.tracking.WorkflowNotifier;
+import org.apache.airavata.workflow.tracking.common.InvocationContext;
+import org.apache.airavata.workflow.tracking.common.InvocationEntity;
+import org.apache.airavata.workflow.tracking.common.WorkflowTrackingContext;
+import org.apache.airavata.workflow.tracking.impl.state.InvocationContextImpl;
 import org.apache.airavata.xbaya.util.StringUtil;
 import org.apache.airavata.xbaya.util.XMLUtil;
+import org.apache.axis2.addressing.EndpointReference;
 import org.apache.xmlbeans.XmlException;
 import org.apache.xmlbeans.XmlObject;
 import org.xmlpull.infoset.XmlElement;
@@ -33,16 +39,12 @@ import org.xmlpull.infoset.XmlElement;
 import xsul.ws_addressing.WsaEndpointReference;
 import xsul.wsif.WSIFMessage;
 import xsul5.MLogger;
-import edu.indiana.extreme.lead.workflow_tracking.Notifier;
-import edu.indiana.extreme.lead.workflow_tracking.common.InvocationContext;
-import edu.indiana.extreme.lead.workflow_tracking.common.InvocationEntity;
-import edu.indiana.extreme.lead.workflow_tracking.impl.state.InvocationContextImpl;
 
 public class ServiceNotificationSender {
 
     private static final MLogger logger = MLogger.getLogger();
 
-    private Notifier notifier;
+    private WorkflowNotifier notifier;
 
     private URI workflowID;
 
@@ -56,7 +58,9 @@ public class ServiceNotificationSender {
 
     private InvocationContext invocationContext;
 
-    private WsaEndpointReference eventSink;
+    private WorkflowTrackingContext context;
+
+    private EndpointReference eventSink;
 
     /**
      * Constructs a ServiceNotificationSender.
@@ -67,13 +71,14 @@ public class ServiceNotificationSender {
      * @param workflowID
      * @param nodeID
      */
-    protected ServiceNotificationSender(Notifier notifier, WsaEndpointReference eventSink, InvocationEntity initiator,
-            URI workflowID, String nodeID) {
+    protected ServiceNotificationSender(WorkflowNotifier notifier, EndpointReference eventSink, InvocationEntity initiator,
+            URI workflowID, String nodeID,WorkflowTrackingContext context) {
         this.notifier = notifier;
         this.eventSink = eventSink;
         this.initiator = initiator;
         this.workflowID = workflowID;
         this.nodeID = nodeID;
+        this.context = context;
         // In case of creating a service on the fly, there is no serviceID at
         // the beginning.
         this.serviceID = "";
@@ -104,7 +109,7 @@ public class ServiceNotificationSender {
     /**
      * @return The event sink.
      */
-    public WsaEndpointReference getEventSink() {
+    public EndpointReference getEventSink() {
         return this.eventSink;
     }
 
@@ -140,7 +145,7 @@ public class ServiceNotificationSender {
             logger.warning("Failed to parse " + inputs.toString(), e);
             body = null; // Send notification anyway.
         }
-        this.invocationContext = this.notifier.invokingService(this.initiator, this.receiver, header, body, message);
+        this.invocationContext = this.notifier.invokingService(this.context,this.initiator, header, body, message);
     }
 
     /**
@@ -168,7 +173,7 @@ public class ServiceNotificationSender {
             logger.warning("Failed to parse " + outputs.toString(), e);
             body = null; // Send notification anyway.
         }
-        this.notifier.receivedResult(this.invocationContext, header, body, message);
+        this.notifier.receivedResult(this.context,this.invocationContext,header, body, message);
     }
 
     /**
@@ -204,9 +209,9 @@ public class ServiceNotificationSender {
             XmlElement stackTraceElement = XMLUtil.BUILDER.newFragment("stackTrace");
             stackTraceElement.addChild(stackTrace);
             String annotation = XMLUtil.xmlElementToString(stackTraceElement);
-            this.notifier.invokingServiceFailed(this.invocationContext, e, message, annotation);
+            this.notifier.invokingServiceFailed(this.context,this.invocationContext, e, message, annotation);
         } else {
-            this.notifier.invokingServiceFailed(this.invocationContext, message);
+            this.notifier.invokingServiceFailed(this.context,this.invocationContext, message);
         }
     }
 
@@ -227,7 +232,7 @@ public class ServiceNotificationSender {
         if (message == null || "".equals(message)) {
             message = "Error";
         }
-        this.notifier.receivedFault(this.invocationContext, message);
+        this.notifier.receivedFault(this.context,this.invocationContext, message);
     }
 
     /**
@@ -251,6 +256,6 @@ public class ServiceNotificationSender {
             logger.warning("Failed to parse " + fault.toString(), e);
             body = null; // Send notification anyway.
         }
-        this.notifier.receivedFault(this.invocationContext, header, body, message);
+        this.notifier.receivedFault(this.context,this.invocationContext, header, body, message);
     }
 }
\ No newline at end of file

Modified: incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/lead/NotificationHandler.java
URL: http://svn.apache.org/viewvc/incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/lead/NotificationHandler.java?rev=1162271&r1=1162270&r2=1162271&view=diff
==============================================================================
--- incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/lead/NotificationHandler.java (original)
+++ incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/lead/NotificationHandler.java Fri Aug 26 21:51:08 2011
@@ -23,9 +23,16 @@ package org.apache.airavata.xbaya.lead;
 
 import java.net.URI;
 import java.net.URISyntaxException;
+import java.util.Properties;
 
+import org.apache.airavata.workflow.tracking.NotifierFactory;
+import org.apache.airavata.workflow.tracking.WorkflowNotifier;
+import org.apache.airavata.workflow.tracking.common.InvocationContext;
+import org.apache.airavata.workflow.tracking.common.InvocationEntity;
+import org.apache.airavata.workflow.tracking.common.WorkflowTrackingContext;
 import org.apache.airavata.xbaya.XBayaConstants;
 import org.apache.airavata.xbaya.util.XMLUtil;
+import org.apache.axis2.addressing.EndpointReference;
 import org.apache.xmlbeans.XmlObject;
 import org.xmlpull.v1.builder.XmlElement;
 
@@ -36,12 +43,7 @@ import xsul.message_router.MessageContex
 import xsul.xbeans_util.XBeansUtil;
 import xsul.xhandler.BaseHandler;
 import xsul5.MLogger;
-import edu.indiana.extreme.lead.workflow_tracking.Notifier;
-import edu.indiana.extreme.lead.workflow_tracking.NotifierFactory;
-import edu.indiana.extreme.lead.workflow_tracking.common.ConstructorProps;
-import edu.indiana.extreme.lead.workflow_tracking.common.InvocationContext;
-import edu.indiana.extreme.lead.workflow_tracking.common.InvocationEntity;
-import edu.indiana.extreme.lead.workflow_tracking.util.MessageUtil;
+
 
 public class NotificationHandler extends BaseHandler {
 
@@ -55,10 +57,14 @@ public class NotificationHandler extends
 
     private LeadContextHeader leadContext;
 
-    private Notifier notifier;
+    private WorkflowNotifier notifier;
+
+    private WorkflowTrackingContext context;
 
     private InvocationContext invocationContext;
 
+    private InvocationEntity invocationEntity;
+
     /**
      * Constructs a NotificationHandler.
      * 
@@ -67,20 +73,8 @@ public class NotificationHandler extends
     public NotificationHandler(LeadContextHeader leadContext) {
         super(NotificationHandler.class.getName());
         this.leadContext = leadContext;
-        ConstructorProps props = MessageUtil.createConstructorPropsFromLeadContext(leadContext);
-        this.notifier = NotifierFactory.createNotifier(props);
-    }
-
-    /**
-     * @see xsul.xhandler.BaseHandler#processOutgoingXml(org.xmlpull.v1.builder.XmlElement,
-     *      xsul.message_router.MessageContext)
-     */
-    @Override
-    public boolean processOutgoingXml(XmlElement soapEnvelope, MessageContext context)
-            throws DynamicInfosetInvokerException {
-        logger.finest("soapEnvelope: " + XMLUtil.xmlElementToString(soapEnvelope));
-
-        URI myWorkflowID = null;
+        this.notifier = NotifierFactory.createNotifier();
+           URI myWorkflowID = null;
         URI myServiceID = URI.create(XBayaConstants.APPLICATION_SHORT_NAME);
         String userDN = this.leadContext.getUserDn();
         if (userDN != null || userDN.trim().length() == 0) {
@@ -93,7 +87,22 @@ public class NotificationHandler extends
         }
         String myNodeID = null;
         Integer myTimestep = null;
-        InvocationEntity myEntity = this.notifier.createEntity(myWorkflowID, myServiceID, myNodeID, myTimestep);
+        EndpointReference epr = new EndpointReference(leadContext.getEventSink().getAddress().toString());
+        this.invocationEntity = this.notifier.createEntity(myWorkflowID, myServiceID, myNodeID, myTimestep);
+        this.context = this.notifier.createTrackingContext(new Properties(),epr,myWorkflowID,
+                myServiceID,myNodeID,myTimestep);
+    }
+
+    /**
+     * @see xsul.xhandler.BaseHandler#processOutgoingXml(org.xmlpull.v1.builder.XmlElement,
+     *      xsul.message_router.MessageContext)
+     */
+    @Override
+    public boolean processOutgoingXml(XmlElement soapEnvelope, MessageContext context)
+            throws DynamicInfosetInvokerException {
+        logger.finest("soapEnvelope: " + XMLUtil.xmlElementToString(soapEnvelope));
+
+
 
         URI serviceWorkflowID = null;
         URI serviceServiceID = this.leadContext.getWorkflowId();
@@ -110,9 +119,6 @@ public class NotificationHandler extends
                 logger.caught(e);
             }
         }
-        InvocationEntity serviceEntity = this.notifier.createEntity(serviceWorkflowID, serviceServiceID, serviceNodeID,
-                serviceTimestep);
-
         XmlElement soapHeader = soapEnvelope.element(null, XmlConstants.S_HEADER);
         XmlElement soapBody = soapEnvelope.element(null, XmlConstants.S_BODY);
         XmlObject headerObject = null;
@@ -121,9 +127,9 @@ public class NotificationHandler extends
         }
         XmlObject bodyObject = XBeansUtil.xmlElementToXmlObject(soapBody);
 
-        this.invocationContext = this.notifier.invokingService(myEntity, serviceEntity, headerObject, bodyObject,
+        this.invocationContext = this.notifier.invokingService(this.context,this.invocationEntity, headerObject, bodyObject,
                 INVOKING_MESSAGE);
-        return super.processOutgoingXml(soapEnvelope, context);
+        return super.processOutgoingXml(soapEnvelope,context);
     }
 
     /**
@@ -145,9 +151,9 @@ public class NotificationHandler extends
         XmlObject bodyObject = XBeansUtil.xmlElementToXmlObject(soapBody);
         XmlElement faultElement = soapBody.element(null, "Fault");
         if (faultElement == null) {
-            this.notifier.receivedResult(this.invocationContext, headerObject, bodyObject, RECEIVE_RESULT_MESSAGE);
+            this.notifier.receivedResult(this.context,this.invocationContext, headerObject, bodyObject, RECEIVE_RESULT_MESSAGE);
         } else {
-            this.notifier.receivedFault(this.invocationContext, headerObject, bodyObject, RECEIVE_FAULT_MESSAGE);
+            this.notifier.receivedFault(this.context,this.invocationContext, headerObject, bodyObject, RECEIVE_FAULT_MESSAGE);
         }
 
         return super.processIncomingXml(soapEnvelope, context);

Modified: incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/test/MonitorTestCase.java
URL: http://svn.apache.org/viewvc/incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/test/MonitorTestCase.java?rev=1162271&r1=1162270&r2=1162271&view=diff
==============================================================================
--- incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/test/MonitorTestCase.java (original)
+++ incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/test/MonitorTestCase.java Fri Aug 26 21:51:08 2011
@@ -23,15 +23,16 @@ package org.apache.airavata.xbaya.test;
 
 import java.net.URI;
 import java.util.ArrayList;
+import java.util.Properties;
 
+import org.apache.airavata.workflow.tracking.Notifier;
+import org.apache.airavata.workflow.tracking.NotifierFactory;
+import org.apache.airavata.workflow.tracking.common.InvocationEntity;
+import org.apache.airavata.workflow.tracking.common.WorkflowTrackingContext;
+import org.apache.airavata.workflow.tracking.impl.state.DataObjImpl;
 import org.apache.airavata.wsmg.client.WseMsgBrokerClient;
 import org.apache.axis2.addressing.EndpointReference;
-import edu.indiana.extreme.lead.workflow_tracking.Notifier;
-import edu.indiana.extreme.lead.workflow_tracking.NotifierFactory;
-import edu.indiana.extreme.lead.workflow_tracking.common.ConstructorConsts;
-import edu.indiana.extreme.lead.workflow_tracking.common.ConstructorProps;
-import edu.indiana.extreme.lead.workflow_tracking.common.InvocationEntity;
-import edu.indiana.extreme.lead.workflow_tracking.impl.state.DataObjImpl;
+
 
 public class MonitorTestCase extends XBayaTestCase {
 
@@ -44,18 +45,16 @@ public class MonitorTestCase extends XBa
         EndpointReference brokerEPR = WseMsgBrokerClient.createEndpointReference(this.configuration.getBrokerURL()
                 .toString(), this.configuration.getTopic());
 
-        ConstructorProps props = ConstructorProps.newProps();
-        props.set(ConstructorConsts.BROKER_EPR, brokerEPR);
-        Notifier notifier = NotifierFactory.createNotifier(props);
-
-        InvocationEntity entity = notifier.createEntity(URI.create("workflowID"), URI.create("serviceID"),
-                "workflowNodeID", new Integer(1) /* step */);
-        notifier.publishURL(entity, "title", "http://www.google.com", "descriptionAndAnnotation");
+        Notifier notifier = NotifierFactory.createNotifier();
+
+        WorkflowTrackingContext context = notifier.createTrackingContext(new Properties(), brokerEPR,
+                URI.create("workflowID"), URI.create("serviceID"), "workflowNodeID", new Integer(1));
+        notifier.publishURL(context, "title", "http://www.google.com", "descriptionAndAnnotation");
 
-        notifier.workflowInitialized(WORKFLOW_INSTANCE_ID);
+        notifier.workflowInitialized(context,WORKFLOW_INSTANCE_ID);
 
         DataObjImpl dataObj = new DataObjImpl(URI.create("test"), new ArrayList<URI>());
-        notifier.dataConsumed(entity, dataObj, "description");
+        notifier.dataConsumed(context, dataObj, "description");
     }
 
     /**

Modified: incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/test/ResourceNotifierTestCase.java
URL: http://svn.apache.org/viewvc/incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/test/ResourceNotifierTestCase.java?rev=1162271&r1=1162270&r2=1162271&view=diff
==============================================================================
--- incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/test/ResourceNotifierTestCase.java (original)
+++ incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/test/ResourceNotifierTestCase.java Fri Aug 26 21:51:08 2011
@@ -22,17 +22,15 @@
 package org.apache.airavata.xbaya.test;
 
 import java.net.URI;
+import java.util.Properties;
 
-import edu.indiana.extreme.lead.workflow_tracking.Notifier;
-import edu.indiana.extreme.lead.workflow_tracking.NotifierFactory;
-import edu.indiana.extreme.lead.workflow_tracking.common.ConstructorConsts;
-import edu.indiana.extreme.lead.workflow_tracking.common.ConstructorProps;
-import edu.indiana.extreme.lead.workflow_tracking.common.InvocationEntity;
+
+import org.apache.airavata.workflow.tracking.Notifier;
+import org.apache.airavata.workflow.tracking.NotifierFactory;
+import org.apache.airavata.workflow.tracking.common.WorkflowTrackingContext;
 import org.apache.airavata.wsmg.client.WseMsgBrokerClient;
-import org.apache.airavata.xbaya.util.XMLUtil;
 
 import org.apache.axis2.addressing.EndpointReference;
-import xsul.ws_addressing.WsaEndpointReference;
 
 public class ResourceNotifierTestCase extends XBayaTestCase {
 
@@ -42,25 +40,21 @@ public class ResourceNotifierTestCase ex
     public void test() {
         EndpointReference brokerEPR = WseMsgBrokerClient.createEndpointReference(this.configuration.getBrokerURL()
                 .toString(), this.configuration.getTopic());
-        //TODO remove the xsul dependency here to WsaEndpointReference object
-        URI temporaryURI = URI.create(brokerEPR.getAddress());
-        ConstructorProps props = ConstructorProps.newProps();
-        props.set(ConstructorConsts.BROKER_EPR, XMLUtil.xmlElementToString(new WsaEndpointReference(temporaryURI)));
-        Notifier notifier = NotifierFactory.createNotifier(props);
+        Notifier notifier = NotifierFactory.createNotifier();
 
         URI initiatorWorkflowID = URI.create("Workflow");
         URI initiatorServiceID = URI.create("Adder_add");
         String initiatorWorkflowNodeID1 = "Adder_add";
         Integer workflowTimeStep = new Integer(0);
-        InvocationEntity entity1 = notifier.createEntity(initiatorWorkflowID, initiatorServiceID,
-                initiatorWorkflowNodeID1, workflowTimeStep);
-        notifier.resourceMapping(entity1, "resource1.example.com", 1);
-        notifier.resourceMapping(entity1, "resource2.example.com", 2);
-        notifier.resourceMapping(entity1, "resource3.example.com", 3);
+        WorkflowTrackingContext context = notifier.createTrackingContext(new Properties(),brokerEPR,
+                initiatorWorkflowID,initiatorServiceID,initiatorWorkflowNodeID1,workflowTimeStep);
+        notifier.resourceMapping(context, "resource1.example.com", 1,null);
+        notifier.resourceMapping(context, "resource2.example.com", 2);
+        notifier.resourceMapping(context, "resource3.example.com", 3);
 
         String initiatorWorkflowNodeID2 = "Adder_add_2";
-        InvocationEntity entity2 = notifier.createEntity(initiatorWorkflowID, initiatorServiceID,
-                initiatorWorkflowNodeID2, workflowTimeStep);
-        notifier.resourceMapping(entity2, "resource.example.com", 0);
+        context = notifier.createTrackingContext(new Properties(),brokerEPR,
+                initiatorWorkflowID,initiatorServiceID,initiatorWorkflowNodeID2,workflowTimeStep);
+        notifier.resourceMapping(context, "resource.example.com", 0);
     }
 }
\ No newline at end of file

Modified: incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/test/WorkflowModificationTestCase.java
URL: http://svn.apache.org/viewvc/incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/test/WorkflowModificationTestCase.java?rev=1162271&r1=1162270&r2=1162271&view=diff
==============================================================================
--- incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/test/WorkflowModificationTestCase.java (original)
+++ incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/test/WorkflowModificationTestCase.java Fri Aug 26 21:51:08 2011
@@ -27,7 +27,16 @@ import java.io.IOException;
 import java.net.URI;
 import java.util.HashMap;
 import java.util.Map;
+import java.util.Properties;
 
+import org.apache.airavata.workflow.tracking.client.Callback;
+import org.apache.airavata.workflow.tracking.client.NotificationType;
+import org.apache.airavata.workflow.tracking.common.InvocationContext;
+import org.apache.airavata.workflow.tracking.common.InvocationEntity;
+import org.apache.airavata.workflow.tracking.common.WorkflowTrackingContext;
+import org.apache.airavata.workflow.tracking.impl.NotifierImpl;
+import org.apache.airavata.workflow.tracking.impl.publish.LoopbackPublisher;
+import org.apache.airavata.workflow.tracking.impl.publish.NotificationPublisher;
 import org.apache.airavata.xbaya.XBayaConstants;
 import org.apache.airavata.xbaya.XBayaEngine;
 import org.apache.airavata.xbaya.component.Component;
@@ -57,6 +66,7 @@ import org.apache.airavata.xbaya.util.WS
 import org.apache.airavata.xbaya.util.XMLUtil;
 import org.apache.airavata.xbaya.wf.Workflow;
 import org.apache.airavata.xbaya.workflow.WorkflowClient;
+import org.apache.axis2.addressing.EndpointReference;
 import org.apache.xmlbeans.XmlObject;
 import org.xmlpull.infoset.view.XmlValidationException;
 import org.xmlpull.v1.builder.XmlElement;
@@ -73,13 +83,8 @@ import xsul.xwsif_runtime.WSIFRuntime;
 import xsul5.MLogger;
 import xsul5.wsdl.WsdlDefinitions;
 import xsul5.wsdl.WsdlResolver;
-import edu.indiana.extreme.lead.workflow_tracking.client.Callback;
-import edu.indiana.extreme.lead.workflow_tracking.client.NotificationType;
-import edu.indiana.extreme.lead.workflow_tracking.common.InvocationContext;
-import edu.indiana.extreme.lead.workflow_tracking.common.InvocationEntity;
-import edu.indiana.extreme.lead.workflow_tracking.impl.NotifierImpl;
-import edu.indiana.extreme.lead.workflow_tracking.impl.publish.LoopbackPublisher;
-import edu.indiana.extreme.lead.workflow_tracking.impl.publish.NotificationPublisher;
+
+
 
 public class WorkflowModificationTestCase extends XBayaTestCase {
 
@@ -289,11 +294,13 @@ public class WorkflowModificationTestCas
         Integer serviceTimestep = null;
         InvocationEntity serviceEntity = notifier.createEntity(serviceWorkflowID, serviceServiceID, serviceNodeID,
                 serviceTimestep);
+        EndpointReference epr = new EndpointReference(this.configuration.getBrokerURL().toASCIIString());
+        WorkflowTrackingContext workflowContext = notifier.createTrackingContext(new Properties(),epr,myWorkflowID,myServiceID,myNodeID,myTimestep);
 
         XmlElement inputBody = (XmlElement) ((XmlElement) inputMessage).getParent();
         XmlObject inputBodyObject = XBeansUtil.xmlElementToXmlObject(inputBody);
 
-        InvocationContext context = notifier.invokingService(myEntity, serviceEntity, null, inputBodyObject);
+        InvocationContext context = notifier.invokingService(workflowContext, serviceEntity, null, inputBodyObject);
 
         if (outputMap != null) {
             WSIFMessage outputMessage = operation.createOutputMessage();
@@ -305,7 +312,7 @@ public class WorkflowModificationTestCas
             XmlElement outputBody = (XmlElement) ((XmlElement) outputMessage).getParent();
             XmlObject outputBodyObject = XBeansUtil.xmlElementToXmlObject(outputBody);
 
-            notifier.receivedResult(context, null, outputBodyObject);
+            notifier.receivedResult(workflowContext,context, null, outputBodyObject);
         }
     }
 
@@ -328,7 +335,7 @@ public class WorkflowModificationTestCas
          * @param publisher
          */
         public MonitorNotifier(NotificationPublisher publisher) {
-            super(publisher, false);
+            super();
         }
     }
 

Modified: incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/test/service/ServiceNotificationSender.java
URL: http://svn.apache.org/viewvc/incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/test/service/ServiceNotificationSender.java?rev=1162271&r1=1162270&r2=1162271&view=diff
==============================================================================
--- incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/test/service/ServiceNotificationSender.java (original)
+++ incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/test/service/ServiceNotificationSender.java Fri Aug 26 21:51:08 2011
@@ -22,8 +22,15 @@
 package org.apache.airavata.xbaya.test.service;
 
 import java.net.URI;
+import java.util.Properties;
 
+import org.apache.airavata.workflow.tracking.Notifier;
+import org.apache.airavata.workflow.tracking.NotifierFactory;
+import org.apache.airavata.workflow.tracking.common.InvocationContext;
+import org.apache.airavata.workflow.tracking.common.InvocationEntity;
+import org.apache.airavata.workflow.tracking.common.WorkflowTrackingContext;
 import org.apache.airavata.xbaya.util.XMLUtil;
+import org.apache.axis2.addressing.EndpointReference;
 import org.apache.xmlbeans.XmlObject;
 import org.xmlpull.v1.builder.XmlDocument;
 import org.xmlpull.v1.builder.XmlElement;
@@ -35,12 +42,8 @@ import xsul.soap11_util.Soap11Util;
 import xsul.soap12_util.Soap12Util;
 import xsul.xbeans_util.XBeansUtil;
 import xsul5.MLogger;
-import edu.indiana.extreme.lead.workflow_tracking.Notifier;
-import edu.indiana.extreme.lead.workflow_tracking.NotifierFactory;
-import edu.indiana.extreme.lead.workflow_tracking.common.ConstructorProps;
-import edu.indiana.extreme.lead.workflow_tracking.common.InvocationContext;
-import edu.indiana.extreme.lead.workflow_tracking.common.InvocationEntity;
-import edu.indiana.extreme.lead.workflow_tracking.util.MessageUtil;
+
+
 
 public class ServiceNotificationSender {
 
@@ -58,6 +61,8 @@ public class ServiceNotificationSender {
 
     private InvocationContext invocationContext;
 
+    private WorkflowTrackingContext context;
+
     private SoapUtil soapFragrance;
 
     /**
@@ -96,9 +101,7 @@ public class ServiceNotificationSender {
      */
     private ServiceNotificationSender(SoapUtil soapFragrance, LeadContextHeader leadContext) {
         this.soapFragrance = soapFragrance;
-
-        ConstructorProps props = MessageUtil.createConstructorPropsFromLeadContext(leadContext);
-        this.notifier = NotifierFactory.createNotifier(props);
+        this.notifier = NotifierFactory.createNotifier();
 
         URI workflowID = leadContext.getWorkflowId();
         String serviceIDString = leadContext.getServiceId();
@@ -118,6 +121,8 @@ public class ServiceNotificationSender {
         }
         this.initiator = this.notifier.createEntity(workflowID, serviceID, nodeID, timeStep);
         this.receiver = this.notifier.createEntity(workflowID, serviceID, nodeID, timeStep);
+        EndpointReference epr = new EndpointReference(leadContext.getEventSink().getAddress().toString());
+        this.context = this.notifier.createTrackingContext(new Properties(),epr,workflowID,serviceID,nodeID,timeStep);
     }
 
     /**
@@ -129,7 +134,7 @@ public class ServiceNotificationSender {
         XmlElement soapHeader = soapEnvelope.element(null, XmlConstants.S_HEADER);
         XmlObject headerObject = XBeansUtil.xmlElementToXmlObject(soapHeader);
         XmlObject bodyObject = XBeansUtil.xmlElementToXmlObject(soapBody);
-        this.invocationContext = this.notifier.serviceInvoked(this.receiver, this.initiator, headerObject, bodyObject,
+        this.invocationContext = this.notifier.serviceInvoked(this.context,this.initiator, headerObject, bodyObject,
                 INVOKED_MESSAGE);
     }
 
@@ -147,7 +152,7 @@ public class ServiceNotificationSender {
                 headerObject = XBeansUtil.xmlElementToXmlObject(soapHeader);
             }
             XmlObject bodyObject = XBeansUtil.xmlElementToXmlObject(soapBody);
-            this.notifier.sendingResult(this.invocationContext, headerObject, bodyObject, SENDING_RESULT_MESSAGE);
+            this.notifier.sendingResult(this.context,this.invocationContext, headerObject, bodyObject, SENDING_RESULT_MESSAGE);
         } catch (RuntimeException e) {
             logger.caught(e);
         }