You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airavata.apache.org by ch...@apache.org on 2015/01/27 16:27:02 UTC

[08/13] airavata git commit: retiring ws-messenger and remove dependency of workflow tracking - AIRAVATA-1556, AIRAVATA-1557

http://git-wip-us.apache.org/repos/asf/airavata/blob/cab15715/modules/ws-messenger/message-monitor/src/main/java/org/apache/airavata/ws/monitor/EventData.java
----------------------------------------------------------------------
diff --git a/modules/ws-messenger/message-monitor/src/main/java/org/apache/airavata/ws/monitor/EventData.java b/modules/ws-messenger/message-monitor/src/main/java/org/apache/airavata/ws/monitor/EventData.java
deleted file mode 100644
index 6afa9af..0000000
--- a/modules/ws-messenger/message-monitor/src/main/java/org/apache/airavata/ws/monitor/EventData.java
+++ /dev/null
@@ -1,174 +0,0 @@
-/*
- *
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- *
- */
-
-package org.apache.airavata.ws.monitor;
-
-import java.net.URI;
-import java.text.SimpleDateFormat;
-import java.util.Date;
-
-import org.apache.airavata.ws.monitor.MonitorUtil.EventType;
-import org.xmlpull.infoset.XmlElement;
-
-public class EventData {
-
-    private String timeText;
-    
-    private Date timestamp;
-
-    private String idText;
-
-    private String statusText;
-
-    private String message;
-
-    private XmlElement event;
-
-    private EventType type;
-
-    private URI workflowID;
-
-    private String nodeID;
-
-    private String experimentID;
-
-    /**
-     * Constructs a MonitorEvent.
-     * 
-     * @param event
-     */
-    public EventData(XmlElement event) {
-        this.event = event;
-        parse();
-    }
-
-    /**
-     * Returns the event.
-     * 
-     * @return The event
-     */
-    public XmlElement getEvent() {
-        return this.event;
-    }
-
-    /**
-     * Returns the idText.
-     * 
-     * @return The idText
-     */
-    public String getIDText() {
-        return this.idText;
-    }
-
-    /**
-     * Returns the message.
-     * 
-     * @return The message
-     */
-    public String getMessage() {
-        return this.message;
-    }
-
-    /**
-     * Returns the statusText.
-     * 
-     * @return The statusText
-     */
-    public String getStatusText() {
-        return this.statusText;
-    }
-
-    /**
-     * Returns the timeText.
-     * 
-     * @return The timeText
-     */
-    public String getTimeText() {
-        return this.timeText;
-    }
-
-    /**
-     * Returns the type.
-     * 
-     * @return The type
-     */
-    public EventType getType() {
-        return this.type;
-    }
-
-    /**
-     * Returns the workflowID.
-     * 
-     * @return The workflowID
-     */
-    public URI getWorkflowID() {
-        return this.workflowID;
-    }
-
-    /**
-     * Returns the nodeID.
-     * 
-     * @return The nodeID
-     */
-    public String getNodeID() {
-        return this.nodeID;
-    }
-
-    private void parse() {
-        this.type = MonitorUtil.getType(this.event);
-        this.workflowID = MonitorUtil.getWorkflowID(this.event);
-        this.nodeID = MonitorUtil.getNodeID(this.event);
-        this.experimentID = MonitorUtil.getExperiementID(this.event);
-        timestamp = MonitorUtil.getTimestamp(this.event);
-
-        if (timestamp != null) {
-            SimpleDateFormat format = new SimpleDateFormat("HH:mm:ss.S MM/dd/yy ");
-            this.timeText = format.format(timestamp);
-        } else {
-            this.timeText = "";
-        }
-
-        this.idText = this.nodeID;
-
-        this.statusText = MonitorUtil.getStatus(this.event);
-
-        this.message = MonitorUtil.getMessage(this.event);
-        if (this.type == MonitorUtil.EventType.PUBLISH_URL) {
-            String location = MonitorUtil.getLocation(this.event);
-            // should be looked into
-            // String url = PREFIX + location + SUFFIX;
-            String url = location;
-            this.message = "<html>" + this.message + ": " + "<a href=\"" + url + "\">" + url + " </a></html>";
-        }
-    }
-
-	public Date getTimestamp() {
-		return timestamp;
-	}
-
-	public void setTimestamp(Date timestamp) {
-		this.timestamp = timestamp;
-	}
-
-    public String getExperimentID() {
-        return experimentID;
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/airavata/blob/cab15715/modules/ws-messenger/message-monitor/src/main/java/org/apache/airavata/ws/monitor/EventDataListener.java
----------------------------------------------------------------------
diff --git a/modules/ws-messenger/message-monitor/src/main/java/org/apache/airavata/ws/monitor/EventDataListener.java b/modules/ws-messenger/message-monitor/src/main/java/org/apache/airavata/ws/monitor/EventDataListener.java
deleted file mode 100644
index ed5875f..0000000
--- a/modules/ws-messenger/message-monitor/src/main/java/org/apache/airavata/ws/monitor/EventDataListener.java
+++ /dev/null
@@ -1,68 +0,0 @@
-/*
- *
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- *
- */
-
-package org.apache.airavata.ws.monitor;
-
-public interface EventDataListener {
-	
-	/**
-	 * Gets triggered when a new message is received relevant for the experiment subscribed to
-	 * @param eventDataRepo - Contains a collection of events up to this point in monitoring
-	 * @param eventData - the new message related to the experiment
-	 */
-	public void notify(EventDataRepository eventDataRepo, EventData eventData);
-	
-	/**
-	 * Set the Monitor object
-	 * @param monitor
-	 */
-	public void setExperimentMonitor(Monitor monitor);
-	
-	/**
-	 * Gets triggered just before the experiment monitoring is started
-	 */
-	public void monitoringPreStart();
-	
-	/**
-	 * Gets triggered just after the experiment monitoring is started
-	 */
-	public void monitoringPostStart();
-	
-	/**
-	 * Gets triggered just before the experiment monitoring is stopped
-	 */
-	public void monitoringPreStop();
-	
-	/**
-	 * Gets triggered just after the experiment monitoring is stopped
-	 */
-	public void monitoringPostStop();
-	
-	/**
-	 * Gets triggered when experiment fails
-	 */
-	public void onFail(EventData failNotification);
-	
-	/**
-	 * Gets triggered when the experiment completes
-	 */
-	public void onCompletion(EventData completionNotification);
-}

http://git-wip-us.apache.org/repos/asf/airavata/blob/cab15715/modules/ws-messenger/message-monitor/src/main/java/org/apache/airavata/ws/monitor/EventDataListenerAdapter.java
----------------------------------------------------------------------
diff --git a/modules/ws-messenger/message-monitor/src/main/java/org/apache/airavata/ws/monitor/EventDataListenerAdapter.java b/modules/ws-messenger/message-monitor/src/main/java/org/apache/airavata/ws/monitor/EventDataListenerAdapter.java
deleted file mode 100644
index 5eeaeaf..0000000
--- a/modules/ws-messenger/message-monitor/src/main/java/org/apache/airavata/ws/monitor/EventDataListenerAdapter.java
+++ /dev/null
@@ -1,70 +0,0 @@
-/*
- *
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- *
- */
-
-package org.apache.airavata.ws.monitor;
-
-public abstract class EventDataListenerAdapter implements EventDataListener {
-	private Monitor monitor;
-	
-	@Override
-	public void setExperimentMonitor(Monitor monitor) {
-		setMonitor(monitor);
-	}
-
-	@Override
-	public void monitoringPreStart() {
-		//Nothing to do
-	}
-
-	@Override
-	public void monitoringPostStart() {
-		//Nothing to do
-	}
-
-	@Override
-	public void monitoringPreStop() {
-		//Nothing to do
-	}
-
-	@Override
-	public void monitoringPostStop() {
-		//Nothing to do
-	}
-	
-	protected Monitor getMonitor() {
-		return monitor;
-	}
-
-	private void setMonitor(Monitor monitor) {
-		this.monitor = monitor;
-	}
-
-	@Override
-	public void onFail(EventData failNotification) {
-		//Nothing to do
-	}
-
-	@Override
-	public void onCompletion(EventData completionNotification) {
-		//Nothing to do
-	}
-
-}

http://git-wip-us.apache.org/repos/asf/airavata/blob/cab15715/modules/ws-messenger/message-monitor/src/main/java/org/apache/airavata/ws/monitor/EventDataRepository.java
----------------------------------------------------------------------
diff --git a/modules/ws-messenger/message-monitor/src/main/java/org/apache/airavata/ws/monitor/EventDataRepository.java b/modules/ws-messenger/message-monitor/src/main/java/org/apache/airavata/ws/monitor/EventDataRepository.java
deleted file mode 100644
index 1c20cf8..0000000
--- a/modules/ws-messenger/message-monitor/src/main/java/org/apache/airavata/ws/monitor/EventDataRepository.java
+++ /dev/null
@@ -1,503 +0,0 @@
-/*
- *
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- *
- */
-
-package org.apache.airavata.ws.monitor;
-
-import java.util.ArrayList;
-import java.util.LinkedList;
-import java.util.List;
-
-import javax.swing.BoundedRangeModel;
-import javax.swing.event.ChangeEvent;
-import javax.swing.event.ChangeListener;
-import javax.swing.event.TableModelEvent;
-import javax.swing.event.TableModelListener;
-import javax.swing.table.TableModel;
-
-import org.apache.airavata.ws.monitor.MonitorUtil.EventType;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.xmlpull.infoset.XmlElement;
-
-public class EventDataRepository implements TableModel, BoundedRangeModel {
-
-    /**
-     * Column
-     */
-    public static enum Column {
-        /**
-         * TIME
-         */
-        TIME("Time"),
-        /**
-         * ID
-         */
-        ID("Component"),
-        /**
-         * STATUS
-         */
-        STATUS("Status"),
-        /**
-         * MESSAGE
-         */
-        MESSAGE("Message");
-
-        private String name;
-
-        private Column(String name) {
-            this.name = name;
-        }
-
-        /**
-         * @return The name.
-         */
-        public String getName() {
-            return this.name;
-        }
-    }
-
-    private static final Logger logger = LoggerFactory.getLogger(EventDataRepository.class);
-
-    private List<TableModelListener> tableModelListeners;
-
-    private List<ChangeListener> sliderModelListeners;
-
-    private List<EventData> events;
-
-    private int sliderValue;
-
-    private boolean sliderAdjusting;
-
-    private ChangeEvent tableModelChangeEvent;
-
-    private EventFilter filter;
-
-    private List<EventDataListener> monitorEventListerners;
-
-    /**
-     * 
-     * Constructs a MonitorEventData.
-     * 
-     */
-    public EventDataRepository() {
-        this(null);
-    }
-
-    /**
-     * Constructs a NotificationTableModel.
-     */
-    public EventDataRepository(EventFilter filter) {
-        this.filter = filter;
-        this.tableModelListeners = new LinkedList<TableModelListener>();
-        this.sliderModelListeners = new LinkedList<ChangeListener>();
-        this.tableModelChangeEvent = new ChangeEvent(this); // We only need one.
-        this.events = new ArrayList<EventData>();
-    }
-    public void addEvent(XmlElement message) throws Exception {
-    	addEvent(new EventData(message));
-    }
-    /**
-     * @param event
-     */
-    public void addEvent(EventData event) throws Exception {
-        // no need the check for not null because second clause is evaluated only if
-        // not null
-        if (this.filter == null || this.filter.isAcceptable(event)) {
-            boolean sliderMax = (this.sliderValue == this.events.size());
-
-            this.events.add(event);
-
-            if (sliderMax) {
-                // Move the slider to the max
-                this.sliderValue = this.events.size();
-
-                // The new event shows up on the table only when the slider is
-                // max.
-                TableModelEvent tableEvent = new TableModelEvent(this, this.sliderValue - 1, this.sliderValue,
-                        TableModelEvent.ALL_COLUMNS, TableModelEvent.INSERT);
-                fireTableChanged(tableEvent);
-            }
-
-            // The muxmum of the slider changed regardless whether we move the
-            // slider or not.
-            fireSliderChanged();
-            triggerListenerForMonitorEvent(event);
-        }
-
-    }
-    public void triggerListenerForPreMonitorStart() throws Exception {
-		for (EventDataListener listener : getMonitorEventListerners()) {
-			try {
-				listener.monitoringPreStart();
-			} catch (Exception e) {
-                logger.error(e.getMessage(), e);
-                throw new Exception(e.getMessage(), e);
-			}
-		}
-	}
-    
-    public void triggerListenerForPostMonitorStart() throws Exception{
-		for (EventDataListener listener : getMonitorEventListerners()) {
-			try {
-				listener.monitoringPostStart();
-			} catch (Exception e) {
-                logger.error(e.getMessage(), e);
-                throw new Exception(e.getMessage(), e);
-			}
-		}
-	}
-    
-    public void triggerListenerForPreMonitorStop() throws Exception {
-		for (EventDataListener listener : getMonitorEventListerners()) {
-			try {
-				listener.monitoringPreStop();
-			} catch (Exception e) {
-                logger.error(e.getMessage(), e);
-                throw new Exception(e.getMessage(), e);
-			}
-		}
-	}
-    
-    public void triggerListenerForPostMonitorStop() throws Exception {
-		for (EventDataListener listener : getMonitorEventListerners()) {
-			try {
-				listener.monitoringPostStop();
-			} catch (Exception e) {
-                logger.error(e.getMessage(), e);
-                throw new Exception(e.getMessage(), e);
-			}
-		}
-	}
-	private void triggerListenerForMonitorEvent(EventData event) throws Exception{
-		for (EventDataListener listener : getMonitorEventListerners()) {
-			try {
-				listener.notify(this, event);
-				if (event.getType()==EventType.WORKFLOW_TERMINATED){
-					listener.onCompletion(event);
-				}else if (event.getType()==EventType.SENDING_FAULT){
-					listener.onFail(event);
-				}
-			} catch (Exception e) {
-				logger.error(e.getMessage(), e);
-                throw new Exception(e.getMessage(), e);
-			}
-		}
-	}
-
-    /**
-     * @return All events.
-     */
-    public List<EventData> getEvents() {
-        return this.events;
-    }
-
-    /**
-     * Returns a notification at a specified row.
-     * 
-     * @param index
-     *            The specified row.
-     * @return The notification at the specified row
-     */
-    public EventData getEvent(int index) {
-        return this.events.get(index);
-    }
-
-    /**
-     * @return The number of events.
-     */
-    public int getEventSize() {
-        return this.events.size();
-    }
-
-    /**
-     * Clears the notifications.
-     */
-    public void removeAllEvents() {
-        int size = this.events.size();
-        this.events.clear();
-
-        this.sliderValue = 0;
-
-        TableModelEvent event = new TableModelEvent(this, 0, Math.max(0, size - 1), TableModelEvent.ALL_COLUMNS,
-                TableModelEvent.DELETE);
-        fireTableChanged(event);
-
-        // The muxmum of the slider changed.
-        fireSliderChanged();
-    }
-
-    // methods implementing TableModel interface.
-
-    /**
-     * @see javax.swing.table.TableModel#getRowCount()
-     */
-    public int getRowCount() {
-        // Only show the events up to the slider value.
-        return this.sliderValue;
-    }
-
-    /**
-     * @see javax.swing.table.TableModel#getColumnCount()
-     */
-    public int getColumnCount() {
-        return Column.values().length;
-    }
-
-    /**
-     * @see javax.swing.table.TableModel#getColumnName(int)
-     */
-    public String getColumnName(int columnIndex) {
-        Column[] columns = Column.values();
-        if (columnIndex < 0 || columnIndex >= columns.length) {
-            // Should not happen.
-            throw new IllegalArgumentException("columnIndex has be be between 0 to " + columns.length);
-        }
-        return columns[columnIndex].getName();
-    }
-
-    /**
-     * @see javax.swing.table.TableModel#getColumnClass(int)
-     */
-    public Class<?> getColumnClass(int columnIndex) {
-        return String.class;
-    }
-
-    /**
-     * @see javax.swing.table.TableModel#isCellEditable(int, int)
-     */
-    public boolean isCellEditable(int rowIndex, int columnIndex) {
-        return false;
-    }
-
-    /**
-     * @see javax.swing.table.TableModel#getValueAt(int, int)
-     */
-    public Object getValueAt(int rowIndex, int columnIndex) {
-        String value;
-        try {
-            EventData event = this.events.get(rowIndex);
-            value = getTextAt(event, columnIndex);
-        } catch (RuntimeException e) {
-            // This should not happen, but if it happens it blocks the UI.
-            // That's why catching it.
-            logger.error(e.getMessage(), e);
-            value = "Error";
-        }
-        return value;
-    }
-
-    /**
-     * @see javax.swing.table.TableModel#setValueAt(java.lang.Object, int, int)
-     */
-    public void setValueAt(Object aValue, int rowIndex, int columnIndex) {
-        throw new UnsupportedOperationException();
-    }
-
-    /**
-     * @see javax.swing.table.TableModel#addTableModelListener(javax.swing.event.TableModelListener)
-     */
-    public void addTableModelListener(TableModelListener listener) {
-        this.tableModelListeners.add(listener);
-    }
-
-    /**
-     * @see javax.swing.table.TableModel#removeTableModelListener(javax.swing.event.TableModelListener)
-     */
-    public void removeTableModelListener(TableModelListener listener) {
-        this.tableModelListeners.remove(listener);
-    }
-
-    // methods implementing BoundedRangeModel interface.
-
-    /**
-     * @see javax.swing.BoundedRangeModel#getExtent()
-     */
-    public int getExtent() {
-        return 0;
-    }
-
-    /**
-     * @see javax.swing.BoundedRangeModel#setExtent(int)
-     */
-    public void setExtent(int newExtent) {
-        throw new UnsupportedOperationException();
-    }
-
-    /**
-     * @see javax.swing.BoundedRangeModel#getMaximum()
-     */
-    public int getMaximum() {
-        return getEventSize();
-    }
-
-    /**
-     * @see javax.swing.BoundedRangeModel#setMaximum(int)
-     */
-    public void setMaximum(int newMaximum) {
-        throw new UnsupportedOperationException();
-    }
-
-    /**
-     * @see javax.swing.BoundedRangeModel#getMinimum()
-     */
-    public int getMinimum() {
-        return 0;
-    }
-
-    /**
-     * @see javax.swing.BoundedRangeModel#setMinimum(int)
-     */
-    public void setMinimum(int newMinimum) {
-        throw new UnsupportedOperationException();
-    }
-
-    /**
-     * @see javax.swing.BoundedRangeModel#getValue()
-     */
-    public int getValue() {
-        return this.sliderValue;
-    }
-
-    /**
-     * @see javax.swing.BoundedRangeModel#setValue(int)
-     */
-    public void setValue(int newValue) {
-        if (this.sliderValue == newValue) {
-            return;
-        }
-
-        // Correct the value to be withing the range.
-        if (newValue < 0) {
-            newValue = 0;
-        }
-        if (newValue > this.events.size()) {
-            newValue = this.events.size();
-        }
-
-        int oldRowCount = this.sliderValue;
-        this.sliderValue = newValue;
-
-        TableModelEvent event;
-        if (oldRowCount < this.sliderValue) {
-            event = new TableModelEvent(this, oldRowCount, this.sliderValue, TableModelEvent.ALL_COLUMNS,
-                    TableModelEvent.INSERT);
-        } else {
-            event = new TableModelEvent(this, this.sliderValue, oldRowCount, TableModelEvent.ALL_COLUMNS,
-                    TableModelEvent.DELETE);
-        }
-        fireTableChanged(event);
-        fireSliderChanged();
-    }
-
-    /**
-     * @see javax.swing.BoundedRangeModel#getValueIsAdjusting()
-     */
-    public boolean getValueIsAdjusting() {
-        return this.sliderAdjusting;
-    }
-
-    /**
-     * @see javax.swing.BoundedRangeModel#setValueIsAdjusting(boolean)
-     */
-    public void setValueIsAdjusting(boolean adjusting) {
-        this.sliderAdjusting = adjusting;
-        fireSliderChanged();
-    }
-
-    /**
-     * @see javax.swing.BoundedRangeModel#setRangeProperties(int, int, int, int, boolean)
-     */
-    public void setRangeProperties(int value, int extent, int min, int max, boolean adjusting) {
-        throw new UnsupportedOperationException();
-    }
-
-    /**
-     * @see javax.swing.BoundedRangeModel#addChangeListener(javax.swing.event.ChangeListener)
-     */
-    public void addChangeListener(ChangeListener listener) {
-        this.sliderModelListeners.add(listener);
-    }
-
-    /**
-     * @see javax.swing.BoundedRangeModel#removeChangeListener(javax.swing.event.ChangeListener)
-     */
-    public void removeChangeListener(ChangeListener listener) {
-        this.sliderModelListeners.remove(listener);
-    }
-
-    private String getTextAt(EventData event, int columnIndex) {
-        Column[] columns = Column.values();
-        if (columnIndex < 0 || columnIndex >= columns.length) {
-            // Should not happen.
-            throw new IllegalArgumentException("columnIndex has be be between 0 to " + columns.length);
-        }
-        Column column = columns[columnIndex];
-        String value;
-        switch (column) {
-        case TIME:
-            value = event.getTimeText();
-            break;
-        case ID:
-            value = event.getIDText();
-            break;
-        case STATUS:
-            value = event.getStatusText();
-            break;
-        case MESSAGE:
-            value = event.getMessage();
-            break;
-        default:
-            // Should not happen.
-            throw new IllegalArgumentException("columnIndex has be be between 0 to " + columns.length);
-        }
-        return value;
-    }
-
-    private void fireTableChanged(TableModelEvent event) {
-        for (TableModelListener listener : this.tableModelListeners) {
-            listener.tableChanged(event);
-        }
-    }
-
-    private void fireSliderChanged() {
-        for (ChangeListener listener : this.sliderModelListeners) {
-            listener.stateChanged(this.tableModelChangeEvent);
-        }
-    }
-	private List<EventDataListener> getMonitorEventListerners() {
-		if (monitorEventListerners==null){
-			monitorEventListerners=new ArrayList<EventDataListener>();
-		}
-		return monitorEventListerners;
-	}
-
-	public void registerEventListener(EventDataListener listener){
-		if (listener!=null) {
-			getMonitorEventListerners().add(listener);
-		}
-	}
-	
-	public void unregisterEventListener(EventDataListener listener){
-		if (getMonitorEventListerners().contains(listener)) {
-			getMonitorEventListerners().remove(listener);
-		}
-	}
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/airavata/blob/cab15715/modules/ws-messenger/message-monitor/src/main/java/org/apache/airavata/ws/monitor/EventFilter.java
----------------------------------------------------------------------
diff --git a/modules/ws-messenger/message-monitor/src/main/java/org/apache/airavata/ws/monitor/EventFilter.java b/modules/ws-messenger/message-monitor/src/main/java/org/apache/airavata/ws/monitor/EventFilter.java
deleted file mode 100644
index 6e8b286..0000000
--- a/modules/ws-messenger/message-monitor/src/main/java/org/apache/airavata/ws/monitor/EventFilter.java
+++ /dev/null
@@ -1,27 +0,0 @@
-/*
- *
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- *
- */
-
-package org.apache.airavata.ws.monitor;
-
-public interface EventFilter {
-
-    public boolean isAcceptable(EventData event);
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/airavata/blob/cab15715/modules/ws-messenger/message-monitor/src/main/java/org/apache/airavata/ws/monitor/Monitor.java
----------------------------------------------------------------------
diff --git a/modules/ws-messenger/message-monitor/src/main/java/org/apache/airavata/ws/monitor/Monitor.java b/modules/ws-messenger/message-monitor/src/main/java/org/apache/airavata/ws/monitor/Monitor.java
deleted file mode 100644
index 0666bd1..0000000
--- a/modules/ws-messenger/message-monitor/src/main/java/org/apache/airavata/ws/monitor/Monitor.java
+++ /dev/null
@@ -1,339 +0,0 @@
-/*
- *
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- *
- */
-
-package org.apache.airavata.ws.monitor;
-
-import java.util.HashMap;
-import java.util.LinkedList;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-
-import org.apache.airavata.common.utils.XMLUtil;
-import org.apache.airavata.workflow.model.exceptions.WorkflowException;
-import org.apache.airavata.ws.monitor.MonitorUtil.EventType;
-import org.apache.airavata.ws.monitor.event.Event;
-import org.apache.airavata.ws.monitor.event.EventProducer;
-import org.apache.airavata.ws.monitor.event.Event.Type;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.xmlpull.infoset.XmlElement;
-
-public class Monitor extends EventProducer {
-
-    protected static final Logger logger = LoggerFactory.getLogger(Monitor.class);
-
-    protected MonitorConfiguration configuration;
-
-    protected static final String DEFAULT_MODEL_KEY = "_DEFAULT_MODEL_KEY";
-
-    protected Map<String, EventDataRepository> eventDataMap = new HashMap<String, EventDataRepository>();
-
-    protected WsmgClient wsmgClient;
-
-    protected boolean printRawMessages;
-
-    protected long messagePullTimeout = 20000L;
-
-    protected boolean monitoring = false;
-    
-    private boolean monitoringCompleted=false;
-    
-    private boolean monitoringFailed=false;
-
-    private String lastTerminatedWorkflowExecutionId=null;
-    
-    public Monitor(MonitorConfiguration configuration) {
-        this.configuration = configuration;
-        // First one keeps all event data & it doesn't have filters
-        this.eventDataMap.put(DEFAULT_MODEL_KEY, new EventDataRepository());
-    }
-
-    /**
-     * @return The configuration for monitoring
-     */
-    public MonitorConfiguration getConfiguration() {
-        return this.configuration;
-    }
-
-    /**
-     * Return the event data repository containing all the notifications
-     * @return 
-     */
-    public EventDataRepository getEventDataRepository() {
-        return this.eventDataMap.get(DEFAULT_MODEL_KEY);
-    }
-
-    /**
-     * Return the event data repository containing all the notifications for the node
-     * @param nodeID
-     * @return
-     */
-    public EventDataRepository getEventDataRepository(String nodeID){
-        return this.eventDataMap.get(nodeID);
-    }
-
-    /**
-     * @throws MonitorException
-     */
-    public synchronized void start() throws Exception {
-    	
-    	//Make sure currently we are not doing any monitoring
-        stop();
-
-        // Reset monitoring variables
-    	monitoringCompleted=false;
-    	monitoringFailed=false;
-
-    	//Notify listeners that the monitoring is about to start
-    	getEventDataRepository().triggerListenerForPreMonitorStart();
-
-        subscribe();
-
-        if (null != this.configuration.getInteractiveNodeIDs()) {
-            List<String> interactiveNodeIDs = this.configuration.getInteractiveNodeIDs();
-            // now add models for this as well
-            for (String string : interactiveNodeIDs) {
-
-                final String nodeID = string;
-                // for each wsnode there is one data model which
-                this.eventDataMap.put(nodeID, new EventDataRepository(new EventFilter() {
-                    public boolean isAcceptable(EventData event) {
-                        return event != null && event.getNodeID() != null && event.getNodeID().equals(nodeID);
-                    }
-                }));
-            }
-
-        }
-        getEventDataRepository().triggerListenerForPostMonitorStart();
-    }
-
-    /**
-     * Stops monitoring without using a thread.
-     * 
-     * @throws MonitorException
-     */
-    public synchronized void stop() throws MonitorException {
-        try {
-			if (this.wsmgClient != null) {
-				getEventDataRepository().triggerListenerForPreMonitorStop();
-			    unsubscribe(this.wsmgClient);
-			    this.wsmgClient = null;
-			    getEventDataRepository().triggerListenerForPostMonitorStop();
-			}
-		} catch (Exception e) {
-            logger.error(e.getMessage(), e);
-            throw new MonitorException(e.getMessage(), e);
-        } finally{
-	        monitoringCompleted=true;
-		}
-    }
-
-    /**
-     * Start monitoring asynchronously
-     */
-    public void startMonitoring(){
-    	new Thread(){
-    		@Override
-    		public void run() {
-    			try {
-    				Monitor.this.start();
-				} catch (Exception e) {
-                    logger.error(e.getMessage(), e);
-				}
-    		}
-    	}.start();
-    }
-    
-    /**
-     * Stop monitoring asynchronously
-     */
-    public void stopMonitoring(){
-    	// Users don't need to know the end of unsubscription.
-        new Thread() {
-            @Override
-            public void run() {
-                try {
-                	Monitor.this.stop();
-                } catch (WorkflowException e) {
-                    // Ignore the error in unsubscription.
-                    logger.error(e.getMessage(), e);
-                }
-            }
-        }.start();
-    }
-
-    /**
-     * Resets the graph and clear the monitoring table. Remove all the extra table models available
-     */
-    public void resetEventData() {
-        Set<String> keys = this.eventDataMap.keySet();
-        LinkedList<String> keysToBeRemoved = new LinkedList<String>();
-        // Remove everthing leaving only the last one
-        for (String key : keys) {
-            EventDataRepository monitorEventData = this.eventDataMap.get(key);
-            monitorEventData.removeAllEvents();
-            if (!key.equals(DEFAULT_MODEL_KEY)) {
-                keysToBeRemoved.add(key);
-            }
-        }
-        for (String key : keysToBeRemoved) {
-            this.eventDataMap.remove(key);
-        }
-
-    }
-
-    /**
-     * @param event
-     */
-    protected synchronized void handleNotification(XmlElement event) {
-    	EventData eventData = new EventData(event);
-    	if (eventData.getType()==EventType.WORKFLOW_TERMINATED){
-    		lastTerminatedWorkflowExecutionId=eventData.getExperimentID();
-    	}
-        Set<String> keys = this.eventDataMap.keySet();
-        // Remove everthing leaving only the last one
-        if(printRawMessages){
-            System.out.println(XMLUtil.xmlElementToString(event));
-        }
-        for (String key : keys) {
-            try {
-                this.eventDataMap.get(key).addEvent(eventData);
-            } catch (Exception e) {
-                logger.error(e.getMessage(), e);
-            }
-        }
-    }
-
-    /**
-     * Subscribe to the WS Messenger client to pull notifications from the message box
-     * @throws MonitorException
-     */
-    private void subscribe() throws MonitorException {
-        this.wsmgClient = new WsmgClient(this);
-        //Users can set the timeout and interval for the subscription using wsmg setter methods, here we use the default values
-        this.wsmgClient.setTimeout(this.getMessagePullTimeout());
-        this.wsmgClient.subscribe();
-        setMonitoring(true);
-
-        // Enable/disable some menu items and show the monitor panel.
-        sendSafeEvent(new Event(Type.MONITOR_STARTED));
-    }
-
-    /**
-     * Unsubcribe from the ws messager client
-     * @param client
-     * @throws MonitorException
-     */
-    private void unsubscribe(WsmgClient client) throws MonitorException {
-        // Enable/disable some menu items.
-        sendSafeEvent(new Event(Type.MONITOR_STOPED));
-        client.unsubscribe();
-        setMonitoring(false);
-    }
-    
-    /**
-     * Wait until the monitoring is completed
-     */
-    public void waitForCompletion() throws Exception {
-    	while(!monitoringCompleted && !monitoringFailed){
-    		try {
-				Thread.sleep(100);
-			} catch (InterruptedException e) {
-                logger.error(e.getMessage(), e);
-                throw new Exception(e.getMessage(), e);
-			}
-    	}
-    }
-    
-    /**
-     * Print the raw notification messages to the console as they arrive
-     * @param print - if <code>true</code> raw notifications are printed
-     */
-    public void printRawMessage(boolean print){
-    	this.printRawMessages = print;
-    }
-    
-    /**
-     * Retrieve the timeout in milliseconds for pulling messages
-     * @return
-     */
-    public long getMessagePullTimeout() {
-        return messagePullTimeout;
-    }
-
-    /**
-     * Set the timeout in milliseconds for pulling messages
-     * @param timeout
-     */
-    public void setMessagePullTimeout(long timeout) {
-        this.messagePullTimeout = timeout;
-    }
-
-    /**
-     * is the monitoring active
-     * @return
-     */
-    public boolean isMonitoring() {
-		return monitoring;
-    }
-
-	public boolean hasCurrentExecutionTerminatedNotificationReceived() {
-		return getConfiguration().getTopic()!=null && getConfiguration().getTopic().equals(lastTerminatedWorkflowExecutionId);
-	}
-
-    private void setMonitoring(boolean monitoring) {
-        this.monitoring = monitoring;
-    }
-    
-    /**
-     * Return the id of the experiment which the monitoring is done 
-     * @return
-     */
-    public String getExperimentId(){
-    	return getConfiguration().getTopic();
-    }
-    
-    /**
-     * @deprecated - Use <code>getEventDataRepository()</code> instead
-     * @return
-     */
-    public EventDataRepository getEventData(){
-    	return getEventDataRepository();
-    }
-    
-    /**
-     * @deprecated - Use <code>getEventDataRepository(...)</code> instead
-     * @param nodeID
-     * @return
-     */
-    public EventDataRepository getEventData(String nodeID) {
-        return getEventDataRepository(nodeID);
-    }
-    
-    /**
-     * @deprecated - Use <code>printRawMessage(...)</code> instead
-     * @param print - if <code>true</code> raw notifications are printed
-     */
-    public void setPrint(boolean print) {
-        this.printRawMessages = print;
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/airavata/blob/cab15715/modules/ws-messenger/message-monitor/src/main/java/org/apache/airavata/ws/monitor/MonitorConfiguration.java
----------------------------------------------------------------------
diff --git a/modules/ws-messenger/message-monitor/src/main/java/org/apache/airavata/ws/monitor/MonitorConfiguration.java b/modules/ws-messenger/message-monitor/src/main/java/org/apache/airavata/ws/monitor/MonitorConfiguration.java
deleted file mode 100644
index 892fa1f..0000000
--- a/modules/ws-messenger/message-monitor/src/main/java/org/apache/airavata/ws/monitor/MonitorConfiguration.java
+++ /dev/null
@@ -1,191 +0,0 @@
-/*
- *
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- *
- */
-
-package org.apache.airavata.ws.monitor;
-
-import java.net.URI;
-import java.util.List;
-
-import org.apache.airavata.ws.monitor.event.Event;
-import org.apache.airavata.ws.monitor.event.EventProducer;
-import org.apache.airavata.ws.monitor.event.Event.Type;
-import org.apache.airavata.common.utils.StringUtil;
-
-public class MonitorConfiguration extends EventProducer implements Cloneable{
-
-    // private static final Logger logger = LoggerFactory.getLogger();
-
-    private URI brokerURL;
-
-    private String topic;
-
-    private boolean pullMode;
-
-    private URI messageBoxURL;
-
-    private List<String> interactiveNodeIDs = null;
-
-    /**
-     * Constructs a NotificationConfiguration.
-     * 
-     * @param brokerURL
-     * @param topic
-     * @param pullMode
-     * @param messageBoxURL
-     */
-    public MonitorConfiguration(URI brokerURL, String topic, boolean pullMode, URI messageBoxURL) {
-        set(brokerURL, topic, pullMode, messageBoxURL);
-    }
-
-    /**
-     * @param brokerURL
-     * @param topic
-     * @param pullMode
-     * @param messageBoxURL
-     */
-    public void set(URI brokerURL, String topic, boolean pullMode, URI messageBoxURL) {
-        this.brokerURL = brokerURL;
-        this.topic = topic;
-        this.pullMode = pullMode;
-        this.messageBoxURL = messageBoxURL;
-        sendSafeEvent(new Event(Type.MONITOR_CONFIGURATION_CHANGED));
-    }
-
-    /**
-     * @param brokerURL
-     *            The brokerLocation to set.
-     */
-    public void setBrokerURL(URI brokerURL) {
-        this.brokerURL = brokerURL;
-        sendSafeEvent(new Event(Type.MONITOR_CONFIGURATION_CHANGED));
-    }
-
-    /**
-     * Returns the URL of the notification broker.
-     * 
-     * @return The URL of the notification broker
-     */
-    public URI getBrokerURL() {
-        return this.brokerURL;
-    }
-
-    /**
-     * @param topic
-     *            The topic to set
-     */
-    public void setTopic(String topic) {
-        this.topic = StringUtil.trimAndNullify(topic);
-        sendSafeEvent(new Event(Type.MONITOR_CONFIGURATION_CHANGED));
-    }
-
-    /**
-     * @return The userId.
-     */
-    public String getTopic() {
-        return this.topic;
-    }
-
-    /**
-     * Returns the messageBoxUrl.
-     * 
-     * @return The messageBoxUrl
-     */
-    public URI getMessageBoxURL() {
-        return this.messageBoxURL;
-    }
-
-    /**
-     * Sets messageBoxUrl.
-     * 
-     * @param messageBoxURL
-     *            The messageBoxUrl to set.
-     */
-    public void setMessageBoxURL(URI messageBoxURL) {
-        this.messageBoxURL = messageBoxURL;
-        sendSafeEvent(new Event(Type.MONITOR_CONFIGURATION_CHANGED));
-    }
-
-    /**
-     * Returns the pullMode.
-     * 
-     * @return The pullMode
-     */
-    public boolean isPullMode() {
-        return this.pullMode;
-    }
-
-    /**
-     * Sets pullMode.
-     * 
-     * @param pullMode
-     *            The pullMode to set.
-     */
-    public void setPullMode(boolean pullMode) {
-        this.pullMode = pullMode;
-        sendSafeEvent(new Event(Type.MONITOR_CONFIGURATION_CHANGED));
-    }
-
-    /**
-     * @return true if the configuration is valid; false otherwise.
-     */
-    public boolean isValid() {
-        if (this.brokerURL == null) {
-            return false;
-        }
-        if (this.topic == null || this.topic.length() == 0) {
-            return false;
-        }
-        if (this.pullMode == true) {
-            if (this.messageBoxURL == null) {
-                return false;
-            }
-        }
-        return true;
-    }
-
-    /**
-     * @see java.lang.Object#clone()
-     */
-    @Override
-    public MonitorConfiguration clone() {
-        return new MonitorConfiguration(this.brokerURL, this.topic, this.pullMode, this.messageBoxURL);
-    }
-
-    /**
-     * Returns the interactiveNodeIDs.
-     * 
-     * @return The interactiveNodeIDs
-     */
-    public List<String> getInteractiveNodeIDs() {
-        return this.interactiveNodeIDs;
-    }
-
-    /**
-     * Sets interactiveNodeIDs.
-     * 
-     * @param interactiveNodeIDs
-     *            The interactiveNodeIDs to set.
-     */
-    public void setInteractiveNodeIDs(List<String> interactiveNodeIDs) {
-        this.interactiveNodeIDs = interactiveNodeIDs;
-    }
-
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/airavata/blob/cab15715/modules/ws-messenger/message-monitor/src/main/java/org/apache/airavata/ws/monitor/MonitorEvent.java
----------------------------------------------------------------------
diff --git a/modules/ws-messenger/message-monitor/src/main/java/org/apache/airavata/ws/monitor/MonitorEvent.java b/modules/ws-messenger/message-monitor/src/main/java/org/apache/airavata/ws/monitor/MonitorEvent.java
deleted file mode 100644
index 95f9fc5..0000000
--- a/modules/ws-messenger/message-monitor/src/main/java/org/apache/airavata/ws/monitor/MonitorEvent.java
+++ /dev/null
@@ -1,33 +0,0 @@
-/*
- *
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- *
- */
-
-package org.apache.airavata.ws.monitor;
-
-import org.xmlpull.infoset.XmlElement;
-
-@Deprecated
-public class MonitorEvent extends EventData {
-
-	public MonitorEvent(XmlElement event) {
-		super(event);
-	}
-
-}

http://git-wip-us.apache.org/repos/asf/airavata/blob/cab15715/modules/ws-messenger/message-monitor/src/main/java/org/apache/airavata/ws/monitor/MonitorEventData.java
----------------------------------------------------------------------
diff --git a/modules/ws-messenger/message-monitor/src/main/java/org/apache/airavata/ws/monitor/MonitorEventData.java b/modules/ws-messenger/message-monitor/src/main/java/org/apache/airavata/ws/monitor/MonitorEventData.java
deleted file mode 100644
index df93144..0000000
--- a/modules/ws-messenger/message-monitor/src/main/java/org/apache/airavata/ws/monitor/MonitorEventData.java
+++ /dev/null
@@ -1,27 +0,0 @@
-/*
- *
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- *
- */
-
-package org.apache.airavata.ws.monitor;
-
-@Deprecated
-public class MonitorEventData extends EventDataRepository {
-
-}

http://git-wip-us.apache.org/repos/asf/airavata/blob/cab15715/modules/ws-messenger/message-monitor/src/main/java/org/apache/airavata/ws/monitor/MonitorEventListener.java
----------------------------------------------------------------------
diff --git a/modules/ws-messenger/message-monitor/src/main/java/org/apache/airavata/ws/monitor/MonitorEventListener.java b/modules/ws-messenger/message-monitor/src/main/java/org/apache/airavata/ws/monitor/MonitorEventListener.java
deleted file mode 100644
index 06d1897..0000000
--- a/modules/ws-messenger/message-monitor/src/main/java/org/apache/airavata/ws/monitor/MonitorEventListener.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- *
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- *
- */
-
-package org.apache.airavata.ws.monitor;
-
-/**
- * @deprecated - Use <code>EventDataListener</code> instead
- * @author samindaw
- *
- */
-public interface MonitorEventListener extends EventDataListener {
-
-}

http://git-wip-us.apache.org/repos/asf/airavata/blob/cab15715/modules/ws-messenger/message-monitor/src/main/java/org/apache/airavata/ws/monitor/MonitorException.java
----------------------------------------------------------------------
diff --git a/modules/ws-messenger/message-monitor/src/main/java/org/apache/airavata/ws/monitor/MonitorException.java b/modules/ws-messenger/message-monitor/src/main/java/org/apache/airavata/ws/monitor/MonitorException.java
deleted file mode 100644
index 6993227..0000000
--- a/modules/ws-messenger/message-monitor/src/main/java/org/apache/airavata/ws/monitor/MonitorException.java
+++ /dev/null
@@ -1,62 +0,0 @@
-/*
- *
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- *
- */
-
-package org.apache.airavata.ws.monitor;
-
-import org.apache.airavata.workflow.model.exceptions.WorkflowException;
-
-public class MonitorException extends WorkflowException {
-
-    /**
-     * Constructs a MonitorException.
-     */
-    public MonitorException() {
-        super();
-    }
-
-    /**
-     * Constructs a MonitorException.
-     * 
-     * @param message
-     */
-    public MonitorException(String message) {
-        super(message);
-    }
-
-    /**
-     * Constructs a MonitorException.
-     * 
-     * @param cause
-     */
-    public MonitorException(Throwable cause) {
-        super(cause);
-    }
-
-    /**
-     * Constructs a MonitorException.
-     * 
-     * @param message
-     * @param cause
-     */
-    public MonitorException(String message, Throwable cause) {
-        super(message, cause);
-    }
-}

http://git-wip-us.apache.org/repos/asf/airavata/blob/cab15715/modules/ws-messenger/message-monitor/src/main/java/org/apache/airavata/ws/monitor/MonitorUtil.java
----------------------------------------------------------------------
diff --git a/modules/ws-messenger/message-monitor/src/main/java/org/apache/airavata/ws/monitor/MonitorUtil.java b/modules/ws-messenger/message-monitor/src/main/java/org/apache/airavata/ws/monitor/MonitorUtil.java
deleted file mode 100644
index 71ec411..0000000
--- a/modules/ws-messenger/message-monitor/src/main/java/org/apache/airavata/ws/monitor/MonitorUtil.java
+++ /dev/null
@@ -1,627 +0,0 @@
-/*
- *
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- *
- */
-
-package org.apache.airavata.ws.monitor;
-
-import java.net.URI;
-import java.net.URISyntaxException;
-import java.util.Date;
-
-import org.apache.airavata.common.utils.XMLUtil;
-import org.apache.airavata.workflow.model.exceptions.WorkflowRuntimeException;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.xmlpull.infoset.XmlElement;
-import org.xmlpull.infoset.XmlNamespace;
-
-import atomixmiser.DcDate;
-
-/**
- * Manipulate XML Events
- */
-public class MonitorUtil {
-
-    private static final Logger logger = LoggerFactory.getLogger(MonitorUtil.class);
-
-    /**
-     * Workflow tracking namespace
-     */
-    public static final XmlNamespace WOR_NS = XMLUtil.BUILDER.newNamespace("wor",
-            "http://airavata.apache.org/schemas/wft/2011/08");
-
-    /**
-     * XBaya events namespace
-     */
-    public static final XmlNamespace XBAYA_EVENTS_NS = XMLUtil.BUILDER.newNamespace("xbaya",
-            "http://www.extreme.indiana.edu/xgws/xbaya/ns/2006/");
-
-    /**
-     * gotResult
-     */
-    public static final String GOT_RESULT_EVENT_TAG = "receivedResult";
-
-    /**
-     * description
-     */
-    public static final String DESCRIPTION_TAG = "description";
-
-    /**
-     * timestamp
-     */
-    public static final String TIMESTAMP_TAG = "timestamp";
-
-    /**
-     * request
-     * 
-     * In invokingService
-     */
-    public static final String REQUEST = "request";
-
-    /**
-     * result
-     * 
-     * In sendingResult
-     */
-    public static final String RESULT = "result";
-
-    /**
-     * body
-     * 
-     * In sendingResult
-     */
-    public static final String BODY = "body";
-
-    /**
-     * experimentID
-     * In Notification Message
-     */
-    public static final String WORKFLOW_EXPERIMENT_ID = "experimentID";
-    /**
-     * workflowID
-     * 
-     * workflow instance ID.
-     */
-    private static final String WORKFLOW_ID_ATTRIBUTE = "workflowID";
-
-    /**
-     * serviceID
-     * 
-     * In workflowInitialized notification, this is the worklfow instance ID.
-     */
-    private static final String SERVICE_ID_ATTRIBUTE = "serviceID";
-
-    /**
-     * workflowNodeID
-     * 
-     * Node ID.
-     */
-    private static final String WORKFLOW_NODE_ID_ATTRIBUTE = "workflowNodeID";
-
-    /**
-     * receiver
-     * 
-     * Extract a node ID from here when a notification is sent by a workflow when the workflow is sending a message to a
-     * service.
-     */
-    private static final String RECEIVER_TAG = "receiver";
-
-    /**
-     * responder
-     * 
-     * Extract a node ID from here when a notification is sent by a workflow when the workflow is receiving a message
-     * from a service.
-     */
-    private static final String RESPONDER_TAG = "responder";
-
-    /**
-     * notificationSource
-     * 
-     * Extract a node ID from here when a service sends notification.
-     */
-    private static final String NOTIFICATION_SOURCE_TAG = "notificationSource";
-
-    // Followings are specific to some event types.
-
-    /**
-     * location
-     * 
-     * In publishURL
-     */
-    private static final String LOCATION_TAG = "location";
-
-    /**
-     * retryStatusCount
-     * 
-     * In computationDuration
-     */
-    private static final String RETRY_STATUS_COUNT_TAG = "retryStatusCount";
-
-    /**
-     * mappedResource
-     * 
-     * In resourceMapping
-     */
-    private static final String MAPPED_RESOURCE_TAG = "mappedResource";
-
-    /**
-     * dataProduct
-     * 
-     * In a couple of data-related notifications.
-     */
-    private static final String DATA_PRODUCT_TAG = "dataProduct";
-
-    /**
-     * durationInMillis
-     * 
-     * In computationDuration
-     */
-    @SuppressWarnings("unused")
-    private static final String DURATION_IN_MILLS_TAG = "durationInMillis";
-
-    /**
-     * Type of the notification event.
-     */
-    public enum EventType {
-        /**
-         * unknown
-         */
-        UNKNOWN("unknown"),
-
-        // Notification from a workflow
-
-        /**
-         * workflowInitialized
-         */
-        WORKFLOW_INITIALIZED("workflowInitialized"),
-
-        /**
-         * workflowInvoked
-         */
-        WORKFLOW_INVOKED("workflowInvoked"),
-
-        /**
-         * workflowTerminated
-         */
-        WORKFLOW_TERMINATED("workflowTerminated"),
-
-        /**
-         * invokingService
-         */
-        INVOKING_SERVICE("invokingService"),
-
-        /**
-         * invokingServiceSucceeded
-         */
-        INVOKING_SERVICE_SUCCEEDED("invokingServiceSucceeded"),
-
-        /**
-         * invokingServiceFailed
-         */
-        INVOKING_SERVICE_FAILED("invokingServiceFailed"),
-
-        /**
-         * receivedResult
-         */
-        RECEIVED_RESULT("receivedResult"),
-
-        /**
-         * receivedFault
-         */
-        RECEIVED_FAULT("receivedFault"),
-
-        // Notification from a service
-
-        /**
-         * serviceInvoked
-         */
-        SERVICE_INVOKED("serviceInvoked"),
-
-        /**
-         * sendingResult
-         */
-        SENDING_RESULT("sendingResult"),
-
-        /**
-         * sendingResponseFailed
-         */
-        SENDING_RESPONSE_FAILED("sendingResponseFailed"),
-
-        /**
-         * sendingFault
-         */
-        SENDING_FAULT("sendingFault"),
-
-        // Other types of notification from a service.
-        /**
-         * logInfo
-         */
-        LOG_INFO("logInfo"),
-
-        /**
-         * logException
-         */
-        LOG_EXCEPTION("logException"),
-
-        /**
-         * logWarning
-         */
-        LOG_WARNING("logWarning"),
-
-        /**
-         * logDebug
-         */
-        LOG_DEBUG("logDebug"),
-
-        /**
-         * dataConsumed
-         */
-        DATA_CONSUMED("dataConsumed"),
-
-        /**
-         * dataProduced
-         */
-        DATA_PRODUCED("dataProduced"),
-
-        /**
-         * dataReceiveDuration
-         */
-        DATA_RECEIVE_DURATION("dataReceiveDuration"),
-
-        /**
-         * applicationAudit
-         */
-        APPLICATION_AUDIT("applicationAudit"),
-
-        /**
-         * computationDuration
-         */
-        COMPUTATION_DURATION("computationDuration"),
-
-        /**
-         * publishURL
-         */
-        PUBLISH_URL("publishURL"),
-
-        /**
-         * resourceMapping
-         */
-        RESOURCE_MAPPING("resourceMapping");
-
-        String name;
-
-        EventType(String name) {
-            this.name = name;
-        }
-    }
-
-    /**
-     * @param event
-     * @return The type of the event.
-     */
-    public static EventType getType(XmlElement event) {
-        if (event == null) {
-            throw new IllegalArgumentException("null");
-        }
-        XmlNamespace ns = event.getNamespace();
-        String name = event.getName();
-        if (XBAYA_EVENTS_NS.equals(ns)) {
-            if (GOT_RESULT_EVENT_TAG.equals(name)) {
-                return EventType.WORKFLOW_TERMINATED;
-            } else {
-                return EventType.UNKNOWN;
-            }
-        } else if (WOR_NS.equals(ns)) {
-            for (EventType type : EventType.values()) {
-                if (type.name.equals(name)) {
-                    return type;
-                }
-            }
-        }
-        return EventType.UNKNOWN;
-    }
-
-    /**
-     * @param event
-     * @return The timestamp.
-     */
-    public static Date getTimestamp(XmlElement event) {
-        if (event == null) {
-            throw new IllegalArgumentException("null");
-        }
-        XmlElement timestampEl = event.element(WOR_NS, TIMESTAMP_TAG);
-        if (timestampEl == null)
-            return null;
-        String timestamp = timestampEl.requiredText();
-        DcDate date = DcDate.create(timestamp);
-        return new Date(date.getTimeInMillis());
-    }
-
-    /**
-     * @param event
-     * @return The node ID if the message contains it; "", otherwise
-     */
-    public static String getNodeID(XmlElement event) {
-        if (event == null) {
-            throw new IllegalArgumentException("null");
-        }
-        XmlElement idElement = getIDElement(event);
-        String nodeID = null;
-        if (idElement != null) {
-            nodeID = idElement.attributeValue(WOR_NS, WORKFLOW_NODE_ID_ATTRIBUTE);
-        }
-        if(nodeID == null){
-           nodeID = event.element(NOTIFICATION_SOURCE_TAG).attributeValue(WOR_NS, WORKFLOW_NODE_ID_ATTRIBUTE);
-        }
-        if (nodeID == null) {
-            nodeID = "";
-        }
-        return nodeID;
-    }
-
-    /**
-     * @param event
-     * @return The node ID if the message contains it; "", otherwise
-     */
-    public static String getExperiementID(XmlElement event) {
-        if (event == null) {
-            throw new IllegalArgumentException("null");
-        }
-        XmlElement idElement = event.element(WOR_NS,NOTIFICATION_SOURCE_TAG);
-        String nodeID = null;
-        if (idElement != null) {
-            nodeID = idElement.attributeValue(WOR_NS, WORKFLOW_EXPERIMENT_ID);
-        }if(nodeID == null){
-           nodeID = event.element(NOTIFICATION_SOURCE_TAG).attributeValue(WOR_NS, WORKFLOW_EXPERIMENT_ID);
-        }
-        if (nodeID == null) {
-            nodeID = "";
-        }
-        return nodeID;
-    }
-
-    /**
-     * @param event
-     * @return The workflow instance ID. null if there is no workflow instance ID.
-     */
-    public static URI getWorkflowID(XmlElement event) {
-        if (event == null) {
-            throw new IllegalArgumentException("null");
-        }
-        EventType type = getType(event);
-        XmlElement idElement = getIDElement(event);
-        if (idElement == null) {
-            return null;
-        }
-
-        String workflowID;
-        switch (type) {
-        case WORKFLOW_INITIALIZED:
-        case WORKFLOW_TERMINATED:
-            // Special cases
-            workflowID = idElement.attributeValue(WOR_NS, SERVICE_ID_ATTRIBUTE);
-            break;
-        default:
-            // Default
-            workflowID = idElement.attributeValue(WOR_NS, WORKFLOW_ID_ATTRIBUTE);
-            break;
-        }
-        if (workflowID == null || workflowID.length() == 0) {
-            return null;
-        }
-        try {
-            return new URI(workflowID);
-        } catch (URISyntaxException e) {
-            logger.error(e.getMessage(), e);
-            return null;
-        }
-    }
-
-    /**
-     * @param event
-     * @return The type of the event to display
-     */
-    public static String getStatus(XmlElement event) {
-        if (event == null) {
-            throw new IllegalArgumentException("null");
-        }
-        EventType type = getType(event);
-        String status;
-        switch (type) {
-        case LOG_INFO:
-            status = "INFO";
-            break;
-        case LOG_EXCEPTION:
-            status = "EXCEPTION";
-            break;
-        case LOG_WARNING:
-            status = "WARNING";
-            break;
-        case LOG_DEBUG:
-            status = "DEBUG";
-            break;
-        default:
-            status = event.getName();
-        }
-        return status;
-    }
-
-    /**
-     * @param event
-     * @return The message to display.
-     */
-    public static String getMessage(XmlElement event) {
-        if (event == null) {
-            throw new IllegalArgumentException("null");
-        }
-        String description = null;
-        XmlElement descElement = event.element(WOR_NS, DESCRIPTION_TAG);
-        if (descElement != null) {
-            description = descElement.requiredText();
-        }
-
-        if (description == null || description.length() == 0) {
-            // It might be a data-related notification
-            XmlElement dataProduct = event.element(WOR_NS, DATA_PRODUCT_TAG);
-            if (dataProduct != null) {
-                descElement = dataProduct.element(WOR_NS, DESCRIPTION_TAG);
-                if (descElement != null) {
-                    description = descElement.requiredText();
-                }
-            }
-        }
-
-        if (description == null) {
-            description = "";
-        }
-        return description;
-    }
-
-    /**
-     * @param event
-     * @return The location.
-     */
-    public static String getLocation(XmlElement event) {
-        if (event == null) {
-            throw new IllegalArgumentException("null");
-        }
-        XmlElement locationEl = event.element(WOR_NS, LOCATION_TAG);
-        if (locationEl != null) {
-            String location = locationEl.requiredText();
-            return location;
-        } else {
-            return null;
-        }
-    }
-
-    /**
-     * Gets the mapped resource from the event.
-     * 
-     * @param event
-     *            The event, the type of which has to be resourceMapping.
-     * @return The resource
-     */
-    public static String getMappedResource(XmlElement event) {
-        if (event == null) {
-            throw new IllegalArgumentException("null");
-        }
-        EventType type = getType(event);
-        if (type != EventType.RESOURCE_MAPPING) {
-            throw new IllegalArgumentException("Event must have resourceMapping type instead of " + type);
-        }
-        XmlElement mappedResource = event.element(MAPPED_RESOURCE_TAG);
-        String resource = mappedResource.requiredText();
-        return resource;
-    }
-
-    /**
-     * Gets the retry count from the event.
-     * 
-     * @param event
-     *            The event, the type of which has to be resourceMapping.
-     * @return The resource
-     */
-    public static String getRetryCount(XmlElement event) {
-        if (event == null) {
-            throw new IllegalArgumentException("null");
-        }
-        EventType type = getType(event);
-        if (type != EventType.RESOURCE_MAPPING) {
-            throw new IllegalArgumentException("Event must have resourceMapping type instead of " + type);
-        }
-        XmlElement retryCountElement = event.element(RETRY_STATUS_COUNT_TAG);
-        String retryCount = retryCountElement.requiredText();
-        return retryCount;
-    }
-
-    /**
-     * Gets the workflow instance ID.
-     * 
-     * @param event
-     *            The event, the type of which has to be workflowInitialized.
-     * @return The workflowInstanceID
-     */
-    public static URI getWorkflowInstanceID(XmlElement event) {
-        EventType type = getType(event);
-        if (!(type == EventType.WORKFLOW_INITIALIZED || type == EventType.WORKFLOW_TERMINATED)) {
-            throw new IllegalArgumentException(
-                    "Event must be an workflowInitialized type or an workflowTerminated type instead of " + type);
-        }
-        XmlElement notificationSource = event.element(WOR_NS, NOTIFICATION_SOURCE_TAG);
-        if (notificationSource == null) {
-            throw new WorkflowRuntimeException("The notification should have " + NOTIFICATION_SOURCE_TAG + " element.");
-        }
-        String workflowInstanceID = notificationSource.attributeValue(WOR_NS, SERVICE_ID_ATTRIBUTE);
-        if (workflowInstanceID == null) {
-            throw new WorkflowRuntimeException("The notification should have " + SERVICE_ID_ATTRIBUTE + " attribute.");
-        }
-        try {
-            return new URI(workflowInstanceID);
-        } catch (URISyntaxException e) {
-            throw new WorkflowRuntimeException(e);
-        }
-    }
-
-    /**
-     * @param event
-     * @return The element that has workflow ID, node ID, etc.
-     */
-    private static XmlElement getIDElement(XmlElement event) {
-        EventType type = getType(event);
-        switch (type) {
-        // The following three don't include node ID, but includes workflow ID.
-        case WORKFLOW_INITIALIZED:
-        case WORKFLOW_INVOKED:
-        case WORKFLOW_TERMINATED:
-            // The followings include both workflow ID and node ID.
-            // TODO they might be used by a workflow too.
-        case SERVICE_INVOKED:
-        case SENDING_RESULT:
-        case SENDING_FAULT:
-        case SENDING_RESPONSE_FAILED: // TODO make sure
-            // The followings are used only in services.
-        case LOG_INFO:
-        case LOG_WARNING:
-        case LOG_EXCEPTION:
-        case LOG_DEBUG:
-        case DATA_CONSUMED:
-        case DATA_PRODUCED:
-        case DATA_RECEIVE_DURATION:
-        case APPLICATION_AUDIT:
-        case COMPUTATION_DURATION:
-        case RESOURCE_MAPPING:
-        case PUBLISH_URL:
-        case INVOKING_SERVICE:
-                return event.element(RECEIVER_TAG);
-        case INVOKING_SERVICE_SUCCEEDED: // TODO make sure
-        case INVOKING_SERVICE_FAILED: // TODO make sure
-            return event.element(RECEIVER_TAG);
-        case RECEIVED_RESULT:
-        case RECEIVED_FAULT:
-            return event.element(RESPONDER_TAG);
-        case UNKNOWN:
-            // Most of unknown types are from service.
-            return event.element(NOTIFICATION_SOURCE_TAG);
-        default:
-            // Most of unknown types are from service.
-            return event.element(NOTIFICATION_SOURCE_TAG);
-        }
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/airavata/blob/cab15715/modules/ws-messenger/message-monitor/src/main/java/org/apache/airavata/ws/monitor/WsmgClient.java
----------------------------------------------------------------------
diff --git a/modules/ws-messenger/message-monitor/src/main/java/org/apache/airavata/ws/monitor/WsmgClient.java b/modules/ws-messenger/message-monitor/src/main/java/org/apache/airavata/ws/monitor/WsmgClient.java
deleted file mode 100644
index b2e8437..0000000
--- a/modules/ws-messenger/message-monitor/src/main/java/org/apache/airavata/ws/monitor/WsmgClient.java
+++ /dev/null
@@ -1,165 +0,0 @@
-/*
- *
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- *
- */
-
-package org.apache.airavata.ws.monitor;
-
-import java.io.IOException;
-import java.net.URI;
-
-import org.apache.airavata.common.utils.XMLUtil;
-import org.apache.airavata.wsmg.client.ConsumerNotificationHandler;
-import org.apache.airavata.wsmg.client.MsgBrokerClientException;
-import org.apache.airavata.wsmg.client.NotificationHandler;
-import org.apache.airavata.wsmg.client.WseMsgBrokerClient;
-import org.apache.airavata.wsmg.client.msgbox.MessagePuller;
-import org.apache.axiom.soap.SOAPEnvelope;
-import org.apache.axis2.addressing.EndpointReference;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.xmlpull.infoset.XmlElement;
-
-public class WsmgClient implements ConsumerNotificationHandler, NotificationHandler {
-
-    private static final Logger logger = LoggerFactory.getLogger(WsmgClient.class);
-
-    private Monitor monitor;
-
-    private URI brokerURL;
-
-    private String topic;
-
-    private boolean pullMode;
-
-    private URI messageBoxURL;
-
-    private WseMsgBrokerClient wseClient;
-
-    private String subscriptionID;
-
-    private MessagePuller messagePuller;
-
-    private long timeout = 20000L;
-
-    private long interval = 1000L;
-    /**
-     * Constructs a WsmgClient.
-     * 
-     * @param monitor
-     */
-    public WsmgClient(Monitor monitor) {
-        this.monitor = monitor;
-
-        MonitorConfiguration configuration = monitor.getConfiguration();
-        // We need to copy these because the configuration might change.
-        this.brokerURL = configuration.getBrokerURL();
-        this.topic = configuration.getTopic();
-        this.pullMode = configuration.isPullMode();
-        this.messageBoxURL = configuration.getMessageBoxURL();
-
-        this.wseClient = new WseMsgBrokerClient();
-        this.wseClient.init(this.brokerURL.toString());
-    }
-
-    /**
-     * Subscribes to the notification.
-     * 
-     * @throws MonitorException
-     */
-    public synchronized void subscribe() throws MonitorException {
-        try {
-            if (this.pullMode) {
-                EndpointReference messageBoxEPR = this.wseClient.createPullMsgBox(this.messageBoxURL.toString(),getTimeout());
-                this.subscriptionID = this.wseClient.subscribe(messageBoxEPR.getAddress(), this.topic, null);
-                this.messagePuller = this.wseClient.startPullingEventsFromMsgBox(messageBoxEPR, this, getInterval(), getTimeout());
-            } else {
-                String[] endpoints = this.wseClient.startConsumerService(2222, this);
-                this.subscriptionID = this.wseClient.subscribe(endpoints[0], this.topic, null);
-            }
-        } catch (IOException e) {
-            throw new MonitorException("Failed to subscribe.", e);
-        } catch (RuntimeException e) {
-            throw new MonitorException("Failed to subscribe.", e);
-        }
-    }
-
-    /**
-     * Unsubscribes from the notification.
-     * 
-     * @throws MonitorException
-     */
-    public synchronized void unsubscribe() throws MonitorException {
-        // This method needs to be synchronized along with subscribe() because
-        // unsubscribe() might be called while subscribe() is being executed.
-        if (this.subscriptionID == null) {
-            throw new IllegalStateException();
-        }
-        try {
-            if (this.pullMode) {
-                this.messagePuller.stopPulling();
-            } else {
-                this.wseClient.shutdownConsumerService();
-            }
-            this.wseClient.unSubscribe(this.subscriptionID);
-        } catch (MsgBrokerClientException e) {
-            throw new MonitorException("Failed to unsubscribe.", e);
-        }
-
-    }
-
-    /**
-     * @see org.apache.airavata.wsmg.client.NotificationHandler#handleNotification(java.lang.String)
-     */
-    public void handleNotification(SOAPEnvelope message) {
-        String soapBody = message.getBody().toString();
-        this.handleNotification(soapBody);
-    }
-
-    /**
-     * 
-     * @param message
-     */
-    public void handleNotification(String message) {
-        try {
-            XmlElement event = XMLUtil.stringToXmlElement(message);
-            this.monitor.handleNotification(event);
-        } catch (Exception e) {
-            // Just log them because they can be unrelated messages sent to
-            // this topic by accident.
-            logger.warn("Could not parse received notification: " + message, e);
-        }
-    }
-
-    public long getTimeout() {
-        return timeout;
-    }
-
-    public void setTimeout(long timeout) {
-        this.timeout = timeout;
-    }
-
-    public long getInterval() {
-        return interval;
-    }
-
-    public void setInterval(long interval) {
-        this.interval = interval;
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/airavata/blob/cab15715/modules/ws-messenger/message-monitor/src/main/java/org/apache/airavata/ws/monitor/event/Event.java
----------------------------------------------------------------------
diff --git a/modules/ws-messenger/message-monitor/src/main/java/org/apache/airavata/ws/monitor/event/Event.java b/modules/ws-messenger/message-monitor/src/main/java/org/apache/airavata/ws/monitor/event/Event.java
deleted file mode 100644
index 7f4e87f..0000000
--- a/modules/ws-messenger/message-monitor/src/main/java/org/apache/airavata/ws/monitor/event/Event.java
+++ /dev/null
@@ -1,84 +0,0 @@
-/*
- *
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- *
- */
-
-package org.apache.airavata.ws.monitor.event;
-
-public class Event {
-
-    /**
-     */
-    public enum Type {
-        /**
-         * GPEL_CONFIGURATION_CHANGED
-         */
-        GPEL_CONFIGURATION_CHANGED,
-        /**
-         * GPEL_CONNECTED
-         */
-        GPEL_ENGINE_CONNECTED,
-        /**
-         * GPEL_ENGINE_DISCONNECTED
-         */
-        GPEL_ENGINE_DISCONNECTED,
-
-        /**
-         * MONITOR_CONFIGURATION_CHANGED
-         */
-        MONITOR_CONFIGURATION_CHANGED,
-        /**
-         * MONITOR_STARTED
-         */
-        MONITOR_STARTED,
-        /**
-         * MONITOR_STOPED
-         */
-        MONITOR_STOPED,
-
-        /**
-         * KARMA_STARTED
-         */
-        KARMA_STARTED,
-
-        /**
-         * MYLEAD_CONFIGURATION_CHANGED
-         */
-        MYLEAD_CONFIGURATION_CHANGED,
-    }
-
-    private Type type;
-
-    /**
-     * Constructs a Event.
-     * 
-     * @param type
-     */
-    public Event(Type type) {
-        this.type = type;
-    }
-
-    /**
-     * @return The type of the event
-     */
-    public Type getType() {
-        return this.type;
-    }
-
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/airavata/blob/cab15715/modules/ws-messenger/message-monitor/src/main/java/org/apache/airavata/ws/monitor/event/EventListener.java
----------------------------------------------------------------------
diff --git a/modules/ws-messenger/message-monitor/src/main/java/org/apache/airavata/ws/monitor/event/EventListener.java b/modules/ws-messenger/message-monitor/src/main/java/org/apache/airavata/ws/monitor/event/EventListener.java
deleted file mode 100644
index 16473a8..0000000
--- a/modules/ws-messenger/message-monitor/src/main/java/org/apache/airavata/ws/monitor/event/EventListener.java
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
- *
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- *
- */
-
-package org.apache.airavata.ws.monitor.event;
-
-import org.apache.airavata.workflow.model.exceptions.WorkflowException;
-
-public interface EventListener {
-
-    /**
-     * Called when an event is received.
-     * 
-     * @param event
-     * @throws WorkflowException
-     */
-    public void eventReceived(Event event) throws WorkflowException;
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/airavata/blob/cab15715/modules/ws-messenger/message-monitor/src/main/java/org/apache/airavata/ws/monitor/event/EventProducer.java
----------------------------------------------------------------------
diff --git a/modules/ws-messenger/message-monitor/src/main/java/org/apache/airavata/ws/monitor/event/EventProducer.java b/modules/ws-messenger/message-monitor/src/main/java/org/apache/airavata/ws/monitor/event/EventProducer.java
deleted file mode 100644
index 9f33d53..0000000
--- a/modules/ws-messenger/message-monitor/src/main/java/org/apache/airavata/ws/monitor/event/EventProducer.java
+++ /dev/null
@@ -1,105 +0,0 @@
-/*
- *
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- *
- */
-
-package org.apache.airavata.ws.monitor.event;
-
-import java.util.LinkedList;
-import java.util.List;
-
-import org.apache.airavata.workflow.model.exceptions.WorkflowException;
-import org.apache.airavata.workflow.model.exceptions.WorkflowRuntimeException;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-public abstract class EventProducer {
-
-    private static final Logger logger = LoggerFactory.getLogger(EventProducer.class);
-
-    private List<EventListener> listeners = new LinkedList<EventListener>();
-
-    /**
-     * @param listener
-     */
-    public void addEventListener(EventListener listener) {
-        this.listeners.add(listener);
-    }
-
-    /**
-     * @param listener
-     */
-    public void removeEventListener(EventListener listener) {
-        this.listeners.remove(listener);
-    }
-
-    /**
-     * @param event
-     */
-    public void sendSafeEvent(Event event) {
-        Throwable exception = null;
-        for (EventListener listener : this.listeners) {
-            try {
-                listener.eventReceived(event);
-            } catch (Throwable e) {
-                logger.error(e.getMessage(), e);
-                // Just remember the first one.
-                if (exception == null) {
-                    exception = e;
-                }
-            }
-        }
-        if (exception != null) {
-            if (exception instanceof RuntimeException) {
-                throw (RuntimeException) exception;
-            } else {
-                throw new WorkflowRuntimeException(exception);
-            }
-        }
-    }
-
-    /**
-     * Sends an event.
-     * 
-     * @param event
-     * @throws WorkflowException
-     */
-    public void sendEvent(Event event) throws WorkflowException {
-        Throwable exception = null;
-        for (EventListener listener : this.listeners) {
-            try {
-                listener.eventReceived(event);
-            } catch (Throwable e) {
-                logger.error(e.getMessage(), e);
-                // Just remember the first one.
-                if (exception == null) {
-                    exception = e;
-                }
-            }
-        }
-        if (exception != null) {
-            if (exception instanceof WorkflowException) {
-                throw (WorkflowException) exception;
-            } else {
-                throw new WorkflowException(exception);
-            }
-        }
-    }
-
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/airavata/blob/cab15715/modules/ws-messenger/messagebox/maven-eclipse.xml
----------------------------------------------------------------------
diff --git a/modules/ws-messenger/messagebox/maven-eclipse.xml b/modules/ws-messenger/messagebox/maven-eclipse.xml
deleted file mode 100644
index 3f67e06..0000000
--- a/modules/ws-messenger/messagebox/maven-eclipse.xml
+++ /dev/null
@@ -1,16 +0,0 @@
-<!--Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file 
-	distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to you under 
-	the Apache License, Version 2.0 (theƏ "License"); you may not use this file except in compliance with the License. You may 
-	obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to 
-	in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF 
-	ANY ~ KIND, either express or implied. See the License for the specific language governing permissions and limitations under 
-	the License. -->
-
-<project default="copy-resources">
-  <target name="init"/>
-  <target name="copy-resources" depends="init">
-    <copy todir="target/classes/META-INF" filtering="false">
-      <fileset dir="resources" includes="**/*.wsdl|**/*.xml" excludes="**/*.java"/>
-    </copy>
-  </target>
-</project>
\ No newline at end of file