You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airavata.apache.org by sh...@apache.org on 2015/06/03 20:14:32 UTC

[15/39] airavata git commit: Refactored gfac sub modules, merged gfac-ssh, gfac-gsissh, gfac-local, gfac-monitor and gsissh modules and create gface-impl, removed implementation from gfac-core to gfac-impl

http://git-wip-us.apache.org/repos/asf/airavata/blob/7b809747/modules/gfac/gfac-local/src/main/resources/service.properties
----------------------------------------------------------------------
diff --git a/modules/gfac/gfac-local/src/main/resources/service.properties b/modules/gfac/gfac-local/src/main/resources/service.properties
deleted file mode 100644
index 391bfea..0000000
--- a/modules/gfac/gfac-local/src/main/resources/service.properties
+++ /dev/null
@@ -1,58 +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.
-#
-#
-
-
-#
-# Class which implemented Scheduler interface. It will be used to determine a Provider
-#
-scheduler.class= org.apache.airavata.core.gfac.scheduler.impl.SchedulerImpl
-
-#
-# Data Service Plugins classes
-#
-datachain.classes= org.apache.airavata.core.gfac.extension.data.RegistryDataService
-
-#
-# Pre execution Plugins classes. For example, GridFTP Input Staging
-#
-prechain.classes= org.apache.airavata.core.gfac.extension.pre.GridFtpInputStaging 
-prechain.classes= org.apache.airavata.core.gfac.extension.pre.HttpInputStaging
-
-#
-# Post execution Plugins classes. For example, GridFTP Output Staging
-#
-postchain.classes= org.apache.airavata.core.gfac.extension.post.GridFtpOutputStaging
-postchain.classes= org.apache.airavata.core.gfac.extension.post.OutputRegister
-
-#
-# SSH private key location. It will be used by SSHProvider
-#
-# ssh.key=/home/user/.ssh/id_rsa
-# ssh.keypass=
-# ssh.username=usernameAtHost
-
-#
-# MyProxy credential. It will be used by GridFTP Plugins and GramProvider.
-#
-# myproxy.server=myproxy.teragrid.org
-# myproxy.user=username
-# myproxy.pass=password
-# myproxy.life=3600
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/airavata/blob/7b809747/modules/gfac/gfac-local/src/test/java/org/apache/airavata/core/gfac/services/impl/LocalProviderTest.java
----------------------------------------------------------------------
diff --git a/modules/gfac/gfac-local/src/test/java/org/apache/airavata/core/gfac/services/impl/LocalProviderTest.java b/modules/gfac/gfac-local/src/test/java/org/apache/airavata/core/gfac/services/impl/LocalProviderTest.java
deleted file mode 100644
index aeb8158..0000000
--- a/modules/gfac/gfac-local/src/test/java/org/apache/airavata/core/gfac/services/impl/LocalProviderTest.java
+++ /dev/null
@@ -1,184 +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.core.gfac.services.impl;
-//
-//import java.io.File;
-//import java.net.URL;
-//import java.util.ArrayList;
-//import java.util.List;
-//
-//import org.apache.airavata.common.utils.MonitorPublisher;
-//import org.apache.airavata.commons.gfac.type.ActualParameter;
-//import org.apache.airavata.commons.gfac.type.ApplicationDescription;
-//import org.apache.airavata.commons.gfac.type.HostDescription;
-//import org.apache.airavata.commons.gfac.type.ServiceDescription;
-//import org.apache.airavata.gfac.GFacConfiguration;
-//import org.apache.airavata.gfac.GFacException;
-//import org.apache.airavata.gfac.core.context.ApplicationContext;
-//import org.apache.airavata.gfac.core.context.JobExecutionContext;
-//import org.apache.airavata.gfac.core.context.MessageContext;
-//import org.apache.airavata.gfac.core.provider.GFacProviderException;
-//import org.apache.airavata.gfac.local.handler.LocalDirectorySetupHandler;
-//import org.apache.airavata.gfac.local.provider.impl.LocalProvider;
-//import org.apache.airavata.model.workspace.experiment.ExecutionUnit;
-//import org.apache.airavata.model.workspace.experiment.Experiment;
-//import org.apache.airavata.model.workspace.experiment.TaskDetails;
-//import org.apache.airavata.model.workspace.experiment.WorkflowNodeDetails;
-//import org.apache.airavata.persistance.registry.jpa.impl.LoggingRegistryImpl;
-//import org.apache.airavata.schemas.gfac.ApplicationDeploymentDescriptionType;
-//import org.apache.airavata.schemas.gfac.InputParameterType;
-//import org.apache.airavata.schemas.gfac.OutputParameterType;
-//import org.apache.airavata.schemas.gfac.StringParameterType;
-//import org.apache.commons.lang.SystemUtils;
-//import org.testng.annotations.BeforeTest;
-//import org.testng.annotations.Test;
-//
-//import com.google.common.eventbus.EventBus;
-//
-//public class LocalProviderTest {
-//    private JobExecutionContext jobExecutionContext;
-//    @BeforeTest
-//    public void setUp() throws Exception {
-//
-//        URL resource = this.getClass().getClassLoader().getResource(org.apache.airavata.common.utils.Constants.GFAC_CONFIG_XML);
-//        File configFile = new File(resource.getPath());
-//        GFacConfiguration gFacConfiguration = GFacConfiguration.create(configFile, null);
-//        //have to set InFlwo Handlers and outFlowHandlers
-//        ApplicationContext applicationContext = new ApplicationContext();
-//        HostDescription host = new HostDescription();
-//        host.getType().setHostName("localhost");
-//        host.getType().setHostAddress("localhost");
-//        applicationContext.setHostDescription(host);
-//        /*
-//           * App
-//           */
-//        ApplicationDescription appDesc = new ApplicationDescription();
-//        ApplicationDeploymentDescriptionType app = appDesc.getType();
-//        ApplicationDeploymentDescriptionType.ApplicationName name = ApplicationDeploymentDescriptionType.ApplicationName.Factory.newInstance();
-//        name.setStringValue("EchoLocal");
-//        app.setApplicationName(name);
-//
-//        /*
-//           * Use bat file if it is compiled on Windows
-//           */
-//        if (SystemUtils.IS_OS_WINDOWS) {
-//            URL url = this.getClass().getClassLoader().getResource("echo.bat");
-//            app.setExecutableLocation(url.getFile());
-//        } else {
-//            //for unix and Mac
-//            app.setExecutableLocation("/bin/echo");
-//        }
-//
-//        /*
-//           * Default tmp location
-//           */
-//        String tempDir = System.getProperty("java.io.tmpdir");
-//        if (tempDir == null) {
-//            tempDir = "/tmp";
-//        }
-//
-//        app.setScratchWorkingDirectory(tempDir);
-//        app.setStaticWorkingDirectory(tempDir);
-//        app.setInputDataDirectory(tempDir + File.separator + "input");
-//        app.setOutputDataDirectory(tempDir + File.separator + "output");
-//        app.setStandardOutput(tempDir + File.separator + "echo.stdout");
-//        app.setStandardError(tempDir + File.separator + "echo.stderr");
-//
-//        applicationContext.setApplicationDeploymentDescription(appDesc);
-//
-//        /*
-//           * Service
-//           */
-//        ServiceDescription serv = new ServiceDescription();
-//        serv.getType().setName("SimpleEcho");
-//
-//        List<InputParameterType> inputList = new ArrayList<InputParameterType>();
-//        InputParameterType input = InputParameterType.Factory.newInstance();
-//        input.setParameterName("echo_input");
-//        input.setParameterType(StringParameterType.Factory.newInstance());
-//        inputList.add(input);
-//        InputParameterType[] inputParamList = inputList.toArray(new InputParameterType[inputList
-//                .size()]);
-//
-//        List<OutputParameterType> outputList = new ArrayList<OutputParameterType>();
-//        OutputParameterType output = OutputParameterType.Factory.newInstance();
-//        output.setParameterName("echo_output");
-//        output.setParameterType(StringParameterType.Factory.newInstance());
-//        outputList.add(output);
-//        OutputParameterType[] outputParamList = outputList
-//                .toArray(new OutputParameterType[outputList.size()]);
-//
-//        serv.getType().setInputParametersArray(inputParamList);
-//        serv.getType().setOutputParametersArray(outputParamList);
-//
-//        jobExecutionContext = new JobExecutionContext(gFacConfiguration, serv.getType().getName());
-//        jobExecutionContext.setApplicationContext(applicationContext);
-//        /*
-//        * Host
-//        */
-//        applicationContext.setServiceDescription(serv);
-//
-//        MessageContext inMessage = new MessageContext();
-//        ActualParameter echo_input = new ActualParameter();
-//        ((StringParameterType) echo_input.getType()).setValue("echo_output=hello");
-//        inMessage.addParameter("echo_input", echo_input);
-//
-//        jobExecutionContext.setInMessageContext(inMessage);
-//
-//        MessageContext outMessage = new MessageContext();
-//        ActualParameter echo_out = new ActualParameter();
-//        outMessage.addParameter("echo_output", echo_out);
-//
-//        jobExecutionContext.setOutMessageContext(outMessage);
-//
-//        jobExecutionContext.setExperimentID("test123");
-//        jobExecutionContext.setExperiment(new Experiment("test123","project1","admin","testExp"));
-//        jobExecutionContext.setTaskData(new TaskDetails(jobExecutionContext.getExperimentID()));
-//        jobExecutionContext.setRegistry(new LoggingRegistryImpl());
-//        jobExecutionContext.setWorkflowNodeDetails(new WorkflowNodeDetails(jobExecutionContext.getExperimentID(),"none", ExecutionUnit.APPLICATION));
-//
-//
-//    }
-//
-//    @Test
-//    public void testLocalDirectorySetupHandler() throws GFacException {
-//        LocalDirectorySetupHandler localDirectorySetupHandler = new LocalDirectorySetupHandler();
-//        localDirectorySetupHandler.invoke(jobExecutionContext);
-//
-//        ApplicationDescription applicationDeploymentDescription = jobExecutionContext.getApplicationContext().getApplicationDeploymentDescription();
-//        ApplicationDeploymentDescriptionType app = applicationDeploymentDescription.getType();
-//        junit.framework.Assert.assertTrue(new File(app.getStaticWorkingDirectory()).exists());
-//        junit.framework.Assert.assertTrue(new File(app.getScratchWorkingDirectory()).exists());
-//        junit.framework.Assert.assertTrue(new File(app.getInputDataDirectory()).exists());
-//        junit.framework.Assert.assertTrue(new File(app.getOutputDataDirectory()).exists());
-//    }
-//
-//    @Test
-//    public void testLocalProvider() throws GFacException,GFacProviderException {
-//        LocalDirectorySetupHandler localDirectorySetupHandler = new LocalDirectorySetupHandler();
-//        localDirectorySetupHandler.invoke(jobExecutionContext);
-//        LocalProvider localProvider = new LocalProvider();
-//        localProvider.setMonitorPublisher(new MonitorPublisher(new EventBus()));
-//        localProvider.initialize(jobExecutionContext);
-//        localProvider.execute(jobExecutionContext);
-//        localProvider.dispose(jobExecutionContext);
-//    }
-//}

http://git-wip-us.apache.org/repos/asf/airavata/blob/7b809747/modules/gfac/gfac-local/src/test/resources/PBSTemplate.xslt
----------------------------------------------------------------------
diff --git a/modules/gfac/gfac-local/src/test/resources/PBSTemplate.xslt b/modules/gfac/gfac-local/src/test/resources/PBSTemplate.xslt
deleted file mode 100644
index e749e9c..0000000
--- a/modules/gfac/gfac-local/src/test/resources/PBSTemplate.xslt
+++ /dev/null
@@ -1,73 +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. -->
-<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:ns="http://airavata.apache.org/gsi/ssh/2012/12">
-<xsl:output method="text" />
-<xsl:template match="/ns:JobDescriptor">
-#! /bin/sh
-# PBS batch job script built by Globus job manager
-#   <xsl:choose>
-    <xsl:when test="ns:shellName">
-##PBS -S <xsl:value-of select="ns:shellName"/>
-    </xsl:when></xsl:choose>
-    <xsl:choose>
-    <xsl:when test="ns:queueName">
-#PBS -q <xsl:value-of select="ns:queueName"/>
-    </xsl:when>
-    </xsl:choose>
-    <xsl:choose>
-    <xsl:when test="ns:mailOptions">
-#PBS -m <xsl:value-of select="ns:mailOptions"/>
-    </xsl:when>
-    </xsl:choose>
-    <xsl:choose>
-<xsl:when test="ns:acountString">
-#PBS -A <xsl:value-of select="ns:acountString"/>
-    </xsl:when>
-    </xsl:choose>
-    <xsl:choose>
-    <xsl:when test="ns:maxWallTime">
-#PBS -l walltime=<xsl:value-of select="ns:maxWallTime"/>
-    </xsl:when>
-    </xsl:choose>
-    <xsl:choose>
-    <xsl:when test="ns:standardOutFile">
-#PBS -o <xsl:value-of select="ns:standardOutFile"/>
-    </xsl:when>
-    </xsl:choose>
-    <xsl:choose>
-    <xsl:when test="ns:standardOutFile">
-#PBS -e <xsl:value-of select="ns:standardErrorFile"/>
-    </xsl:when>
-    </xsl:choose>
-    <xsl:choose>
-    <xsl:when test="(ns:nodes) and (ns:processesPerNode)">
-#PBS -l nodes=<xsl:value-of select="ns:nodes"/>:ppn=<xsl:value-of select="ns:processesPerNode"/>
-<xsl:text>&#xa;</xsl:text>
-    </xsl:when>
-    </xsl:choose>
-<xsl:for-each select="ns:exports/ns:name">
-<xsl:value-of select="."/>=<xsl:value-of select="./@value"/><xsl:text>&#xa;</xsl:text>
-export<xsl:text>   </xsl:text><xsl:value-of select="."/>
-<xsl:text>&#xa;</xsl:text>
-</xsl:for-each>
-<xsl:for-each select="ns:preJobCommands/ns:command">
-      <xsl:value-of select="."/><xsl:text>   </xsl:text>
-    </xsl:for-each>
-cd <xsl:text>   </xsl:text><xsl:value-of select="ns:workingDirectory"/><xsl:text>&#xa;</xsl:text>
-    <xsl:choose><xsl:when test="ns:jobSubmitterCommand">
-<xsl:value-of select="ns:jobSubmitterCommand"/><xsl:text>   </xsl:text></xsl:when></xsl:choose><xsl:value-of select="ns:executablePath"/><xsl:text>   </xsl:text>
-<xsl:for-each select="ns:inputs/ns:input">
-      <xsl:value-of select="."/><xsl:text>   </xsl:text>
-    </xsl:for-each>
-<xsl:for-each select="ns:postJobCommands/ns:command">
-      <xsl:value-of select="."/><xsl:text>   </xsl:text>
-</xsl:for-each>
-
-</xsl:template>
-
-</xsl:stylesheet>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/airavata/blob/7b809747/modules/gfac/gfac-local/src/test/resources/logging.properties
----------------------------------------------------------------------
diff --git a/modules/gfac/gfac-local/src/test/resources/logging.properties b/modules/gfac/gfac-local/src/test/resources/logging.properties
deleted file mode 100644
index 0584d38..0000000
--- a/modules/gfac/gfac-local/src/test/resources/logging.properties
+++ /dev/null
@@ -1,42 +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.
-#
-#
-#default/fallback log4j configuration
-#
-
-# Set root logger level to WARN and its only appender to A1.
-log4j.rootLogger=INFO, A1, A2
-
-# A1 is set to be a rolling file appender with default params
-log4j.appender.A1=org.apache.log4j.RollingFileAppender
-log4j.appender.A1.File=target/seclogs.txt
-
-# A1 uses PatternLayout.
-log4j.appender.A1.layout=org.apache.log4j.PatternLayout
-log4j.appender.A1.layout.ConversionPattern=%d [%t] %-5p %c %x - %m%n
-
-# A2 is a console appender
-log4j.appender.A2=org.apache.log4j.ConsoleAppender
-
-# A2 uses PatternLayout.
-log4j.appender.A2.layout=org.apache.log4j.PatternLayout
-log4j.appender.A2.layout.ConversionPattern=%d [%t] %-5p %c{1} %x - %m%n
-
-log4j.logger.unicore.security=INFO
-

http://git-wip-us.apache.org/repos/asf/airavata/blob/7b809747/modules/gfac/gfac-monitor/gfac-email-monitor/pom.xml
----------------------------------------------------------------------
diff --git a/modules/gfac/gfac-monitor/gfac-email-monitor/pom.xml b/modules/gfac/gfac-monitor/gfac-email-monitor/pom.xml
deleted file mode 100644
index 2778f51..0000000
--- a/modules/gfac/gfac-monitor/gfac-email-monitor/pom.xml
+++ /dev/null
@@ -1,35 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
-    <parent>
-        <artifactId>airavata-gfac-monitor</artifactId>
-        <groupId>org.apache.airavata</groupId>
-        <version>0.16-SNAPSHOT</version>
-    </parent>
-    <modelVersion>4.0.0</modelVersion>
-
-    <artifactId>airavata-gfac-email-monitor</artifactId>
-    <dependencies>
-        <dependency>
-            <groupId>javax.mail</groupId>
-            <artifactId>mail</artifactId>
-            <version>1.4.7</version>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.airavata</groupId>
-            <artifactId>airavata-gfac-core</artifactId>
-            <version>${project.version}</version>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.airavata</groupId>
-            <artifactId>airavata-common-utils</artifactId>
-            <version>${project.version}</version>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.airavata</groupId>
-            <artifactId>airavata-data-models</artifactId>
-            <version>${project.version}</version>
-        </dependency>
-    </dependencies>
-
-
-</project>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/airavata/blob/7b809747/modules/gfac/gfac-monitor/gfac-email-monitor/src/main/java/org/apache/airavata/gfac/monitor/email/EmailBasedMonitor.java
----------------------------------------------------------------------
diff --git a/modules/gfac/gfac-monitor/gfac-email-monitor/src/main/java/org/apache/airavata/gfac/monitor/email/EmailBasedMonitor.java b/modules/gfac/gfac-monitor/gfac-email-monitor/src/main/java/org/apache/airavata/gfac/monitor/email/EmailBasedMonitor.java
deleted file mode 100644
index e418774..0000000
--- a/modules/gfac/gfac-monitor/gfac-email-monitor/src/main/java/org/apache/airavata/gfac/monitor/email/EmailBasedMonitor.java
+++ /dev/null
@@ -1,345 +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.gfac.monitor.email;
-
-import org.apache.airavata.common.exception.AiravataException;
-import org.apache.airavata.common.logger.AiravataLogger;
-import org.apache.airavata.common.logger.AiravataLoggerFactory;
-import org.apache.airavata.common.utils.ServerSettings;
-import org.apache.airavata.gfac.core.context.JobExecutionContext;
-import org.apache.airavata.gfac.core.cpi.BetterGfacImpl;
-import org.apache.airavata.gfac.core.utils.GFacThreadPoolExecutor;
-import org.apache.airavata.gfac.core.utils.OutHandlerWorker;
-import org.apache.airavata.gfac.monitor.email.parser.EmailParser;
-import org.apache.airavata.gfac.monitor.email.parser.LSFEmailParser;
-import org.apache.airavata.gfac.monitor.email.parser.PBSEmailParser;
-import org.apache.airavata.gfac.monitor.email.parser.SLURMEmailParser;
-import org.apache.airavata.gfac.monitor.email.parser.UGEEmailParser;
-import org.apache.airavata.model.appcatalog.computeresource.ResourceJobManagerType;
-import org.apache.airavata.model.messaging.event.JobIdentifier;
-import org.apache.airavata.model.messaging.event.JobStatusChangeRequestEvent;
-import org.apache.airavata.model.workspace.experiment.JobState;
-import org.apache.airavata.model.workspace.experiment.JobStatus;
-
-import javax.mail.Address;
-import javax.mail.Flags;
-import javax.mail.Folder;
-import javax.mail.Message;
-import javax.mail.MessagingException;
-import javax.mail.NoSuchProviderException;
-import javax.mail.Session;
-import javax.mail.Store;
-import javax.mail.search.FlagTerm;
-import javax.mail.search.SearchTerm;
-import java.util.ArrayList;
-import java.util.Date;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import java.util.Properties;
-import java.util.concurrent.ConcurrentHashMap;
-
-public class EmailBasedMonitor implements Runnable{
-    private static final AiravataLogger log = AiravataLoggerFactory.getLogger(EmailBasedMonitor.class);
-
-    public static final int COMPARISON = 6; // after and equal
-    public static final String IMAPS = "imaps";
-    public static final String POP3 = "pop3";
-    private boolean stopMonitoring = false;
-
-    private Session session ;
-    private Store store;
-    private Folder emailFolder;
-    private Properties properties;
-    private Map<String, JobExecutionContext> jobMonitorMap = new ConcurrentHashMap<String, JobExecutionContext>();
-    private String host, emailAddress, password, storeProtocol, folderName ;
-    private Date monitorStartDate;
-    private Map<ResourceJobManagerType, EmailParser> emailParserMap = new HashMap<ResourceJobManagerType, EmailParser>();
-
-    public EmailBasedMonitor(ResourceJobManagerType type) throws AiravataException {
-        init();
-    }
-
-    private void init() throws AiravataException {
-        host = ServerSettings.getEmailBasedMonitorHost();
-        emailAddress = ServerSettings.getEmailBasedMonitorAddress();
-        password = ServerSettings.getEmailBasedMonitorPassword();
-        storeProtocol = ServerSettings.getEmailBasedMonitorStoreProtocol();
-        folderName = ServerSettings.getEmailBasedMonitorFolderName();
-        if (!(storeProtocol.equals(IMAPS) || storeProtocol.equals(POP3))) {
-            throw new AiravataException("Unsupported store protocol , expected " +
-                    IMAPS + " or " + POP3 + " but found " + storeProtocol);
-        }
-        properties = new Properties();
-        properties.put("mail.store.protocol", storeProtocol);
-    }
-
-    public void addToJobMonitorMap(JobExecutionContext jobExecutionContext) {
-        String monitorId = jobExecutionContext.getJobDetails().getJobID();
-        if (monitorId == null || monitorId.isEmpty()) {
-            monitorId = jobExecutionContext.getJobDetails().getJobName();
-        }
-        addToJobMonitorMap(monitorId, jobExecutionContext);
-    }
-
-    public void addToJobMonitorMap(String monitorId, JobExecutionContext jobExecutionContext) {
-        log.info("[EJM]: Added monitor Id : " + monitorId + " to email based monitor map");
-        jobMonitorMap.put(monitorId, jobExecutionContext);
-    }
-
-    private JobStatusResult parse(Message message) throws MessagingException, AiravataException {
-        Address fromAddress = message.getFrom()[0];
-        String addressStr = fromAddress.toString();
-        ResourceJobManagerType jobMonitorType = getJobMonitorType(addressStr);
-        EmailParser emailParser = emailParserMap.get(jobMonitorType);
-        if (emailParser == null) {
-            switch (jobMonitorType) {
-                case PBS:
-                    emailParser = new PBSEmailParser();
-                    break;
-                case SLURM:
-                    emailParser = new SLURMEmailParser();
-                    break;
-                case LSF:
-                    emailParser = new LSFEmailParser();
-                    break;
-                case UGE:
-                    emailParser = new UGEEmailParser();
-                    break;
-                default:
-                    throw new AiravataException("[EJM]: Un-handle resource job manager type: " + jobMonitorType.toString() + " for email monitoring -->  " + addressStr);
-            }
-
-            emailParserMap.put(jobMonitorType, emailParser);
-        }
-        return emailParser.parseEmail(message);
-    }
-
-    private ResourceJobManagerType getJobMonitorType(String addressStr) throws AiravataException {
-        System.out.println("*********** address ******** : " + addressStr);
-        switch (addressStr) {
-            case "pbsconsult@sdsc.edu":   // trestles , gordan
-            case "adm@trident.bigred2.uits.iu.edu":  // bigred2
-            case "root <ad...@trident.bigred2.uits.iu.edu>": // bigred2
-            case "root <ad...@scyld.localdomain>": // alamo
-                return ResourceJobManagerType.PBS;
-            case "SDSC Admin <sl...@comet-fe3.sdsc.edu>": // comet
-            case "slurm@batch1.stampede.tacc.utexas.edu": // stampede
-            case "slurm user <sl...@tempest.dsc.soic.indiana.edu>":
-                return ResourceJobManagerType.SLURM;
-//            case "lsf":
-//                return ResourceJobManagerType.LSF;
-            default:
-                if (addressStr.contains("ls4.tacc.utexas.edu>")) { // lonestar
-                    return ResourceJobManagerType.UGE;
-                } else {
-                    throw new AiravataException("[EJM]: Couldn't identify Resource job manager type from address " + addressStr);
-                }
-        }
-
-    }
-
-    @Override
-    public void run() {
-        try {
-            session = Session.getDefaultInstance(properties);
-            store = session.getStore(storeProtocol);
-            store.connect(host, emailAddress, password);
-            emailFolder = store.getFolder(folderName);
-            // first time we search for all unread messages.
-            SearchTerm unseenBefore = new FlagTerm(new Flags(Flags.Flag.SEEN), false);
-            while (!(stopMonitoring || ServerSettings.isStopAllThreads())) {
-                Thread.sleep(ServerSettings.getEmailMonitorPeriod());// sleep a bit - get a rest till job finishes
-                if (jobMonitorMap.isEmpty()) {
-                    log.info("[EJM]: Job Monitor Map is empty, no need to retrieve emails");
-                    continue;
-                } else {
-                    log.info("[EJM]: " + jobMonitorMap.size() + " job/s in job monitor map");
-                }
-                if (!store.isConnected()) {
-                    store.connect();
-                    emailFolder = store.getFolder(folderName);
-                }
-                log.info("[EJM]: Retrieving unseen emails");
-                emailFolder.open(Folder.READ_WRITE);
-                Message[] searchMessages = emailFolder.search(unseenBefore);
-                if (searchMessages == null || searchMessages.length == 0) {
-                    log.info("[EJM]: No new email messages");
-                } else {
-                    log.info("[EJM]: "+searchMessages.length + " new email/s received");
-                }
-                processMessages(searchMessages);
-                emailFolder.close(false);
-            }
-        } catch (MessagingException e) {
-            log.error("[EJM]: Couldn't connect to the store ", e);
-        } catch (InterruptedException e) {
-            log.error("[EJM]: Interrupt exception while sleep ", e);
-        } catch (AiravataException e) {
-            log.error("[EJM]: UnHandled arguments ", e);
-        } finally {
-            try {
-                emailFolder.close(false);
-                store.close();
-            } catch (MessagingException e) {
-                log.error("[EJM]: Store close operation failed, couldn't close store", e);
-            }
-        }
-    }
-
-    private void processMessages(Message[] searchMessages) throws MessagingException {
-        List<Message> processedMessages = new ArrayList<>();
-        List<Message> unreadMessages = new ArrayList<>();
-        for (Message message : searchMessages) {
-            try {
-                JobStatusResult jobStatusResult = parse(message);
-                JobExecutionContext jEC = jobMonitorMap.get(jobStatusResult.getJobId());
-                if (jEC == null) {
-                    jEC = jobMonitorMap.get(jobStatusResult.getJobName());
-                }
-                if (jEC != null) {
-                    process(jobStatusResult, jEC);
-                    processedMessages.add(message);
-                } else {
-                    // we can get JobExecutionContext null in multiple Gfac instances environment,
-                    // where this job is not submitted by this Gfac instance hence we ignore this message.
-                    unreadMessages.add(message);
-//                  log.info("JobExecutionContext is not found for job Id " + jobStatusResult.getJobId());
-                }
-            } catch (AiravataException e) {
-                log.error("[EJM]: Error parsing email message =====================================>", e);
-                try {
-                    writeEnvelopeOnError(message);
-                } catch (MessagingException e1) {
-                    log.error("[EJM]: Error printing envelop of the email");
-                }
-                unreadMessages.add(message);
-            } catch (MessagingException e) {
-                log.error("[EJM]: Error while retrieving sender address from message : " + message.toString());
-                unreadMessages.add(message);
-            }
-        }
-        if (!processedMessages.isEmpty()) {
-            Message[] seenMessages = new Message[processedMessages.size()];
-            processedMessages.toArray(seenMessages);
-            try {
-                emailFolder.setFlags(seenMessages, new Flags(Flags.Flag.SEEN), true);
-            } catch (MessagingException e) {
-                if (!store.isConnected()) {
-                    store.connect();
-                    emailFolder.setFlags(seenMessages, new Flags(Flags.Flag.SEEN), true);
-                }
-            }
-
-        }
-        if (!unreadMessages.isEmpty()) {
-            Message[] unseenMessages = new Message[unreadMessages.size()];
-            unreadMessages.toArray(unseenMessages);
-            try {
-                emailFolder.setFlags(unseenMessages, new Flags(Flags.Flag.SEEN), false);
-            } catch (MessagingException e) {
-                if (!store.isConnected()) {
-                    store.connect();
-                    emailFolder.setFlags(unseenMessages, new Flags(Flags.Flag.SEEN), false);
-
-                }
-            }
-        }
-    }
-
-    private void process(JobStatusResult jobStatusResult, JobExecutionContext jEC){
-        JobState resultState = jobStatusResult.getState();
-        jEC.getJobDetails().setJobStatus(new JobStatus(resultState));
-        boolean runOutHandlers = false;
-        String jobDetails = "JobName : " + jobStatusResult.getJobName() + ", JobId : " + jobStatusResult.getJobId();
-        // TODO - Handle all other valid JobStates
-        if (resultState == JobState.COMPLETE) {
-            jobMonitorMap.remove(jobStatusResult.getJobId());
-            runOutHandlers = true;
-            log.info("[EJM]: Job Complete email received , removed job from job monitoring. " + jobDetails);
-        }else if (resultState == JobState.QUEUED) {
-            // nothing special thing to do, update the status change to rabbit mq at the end of this method.
-            log.info("[EJM]: Job Queued email received, " + jobDetails);
-        }else if (resultState == JobState.ACTIVE) {
-            // nothing special thing to do, update the status change to rabbit mq at the end of this method.
-            log.info("[EJM]: Job Active email received, " + jobDetails);
-        }else if (resultState == JobState.FAILED) {
-            jobMonitorMap.remove(jobStatusResult.getJobId());
-            runOutHandlers = true;
-            log.info("[EJM]: Job failed email received , removed job from job monitoring. " + jobDetails);
-        }else if (resultState == JobState.CANCELED) {
-            jobMonitorMap.remove(jobStatusResult.getJobId());
-            runOutHandlers = false; // Do we need to run out handlers in canceled case?
-            log.info("[EJM]: Job canceled mail received, removed job from job monitoring. " + jobDetails);
-
-        }
-        log.info("[EJM]: Publishing status changes to amqp. " + jobDetails);
-        publishJobStatusChange(jEC);
-
-        if (runOutHandlers) {
-            log.info("[EJM]: Calling Out Handler chain of " + jobDetails);
-            GFacThreadPoolExecutor.getCachedThreadPool().execute(new OutHandlerWorker(jEC));
-        }
-    }
-
-    private void publishJobStatusChange(JobExecutionContext jobExecutionContext) {
-        JobStatusChangeRequestEvent jobStatus = new JobStatusChangeRequestEvent();
-        JobIdentifier jobIdentity = new JobIdentifier(jobExecutionContext.getJobDetails().getJobID(),
-                jobExecutionContext.getTaskData().getTaskID(),
-                jobExecutionContext.getWorkflowNodeDetails().getNodeInstanceId(),
-                jobExecutionContext.getExperimentID(),
-                jobExecutionContext.getGatewayID());
-        jobStatus.setJobIdentity(jobIdentity);
-        jobStatus.setState(jobExecutionContext.getJobDetails().getJobStatus().getJobState());
-        // we have this JobStatus class to handle amqp monitoring
-        log.debugId(jobStatus.getJobIdentity().getJobId(), "[EJM]: Published job status(" +
-                        jobExecutionContext.getJobDetails().getJobStatus().getJobState().toString() + ") change request, " +
-                        "experiment {} , task {}", jobStatus.getJobIdentity().getExperimentId(),
-                jobStatus.getJobIdentity().getTaskId());
-
-        jobExecutionContext.getMonitorPublisher().publish(jobStatus);
-    }
-
-    private void writeEnvelopeOnError(Message m) throws MessagingException {
-        Address[] a;
-        // FROM
-        if ((a = m.getFrom()) != null) {
-            for (int j = 0; j < a.length; j++)
-                log.error("FROM: " + a[j].toString());
-        }
-        // TO
-        if ((a = m.getRecipients(Message.RecipientType.TO)) != null) {
-            for (int j = 0; j < a.length; j++)
-                log.error("TO: " + a[j].toString());
-        }
-        // SUBJECT
-        if (m.getSubject() != null)
-            log.error("SUBJECT: " + m.getSubject());
-    }
-
-    public void stopMonitoring() {
-        stopMonitoring = true;
-    }
-
-    public void setDate(Date date) {
-        this.monitorStartDate = date;
-    }
-}

http://git-wip-us.apache.org/repos/asf/airavata/blob/7b809747/modules/gfac/gfac-monitor/gfac-email-monitor/src/main/java/org/apache/airavata/gfac/monitor/email/EmailMonitorFactory.java
----------------------------------------------------------------------
diff --git a/modules/gfac/gfac-monitor/gfac-email-monitor/src/main/java/org/apache/airavata/gfac/monitor/email/EmailMonitorFactory.java b/modules/gfac/gfac-monitor/gfac-email-monitor/src/main/java/org/apache/airavata/gfac/monitor/email/EmailMonitorFactory.java
deleted file mode 100644
index 3a75331..0000000
--- a/modules/gfac/gfac-monitor/gfac-email-monitor/src/main/java/org/apache/airavata/gfac/monitor/email/EmailMonitorFactory.java
+++ /dev/null
@@ -1,49 +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.gfac.monitor.email;
-
-import org.apache.airavata.common.exception.AiravataException;
-import org.apache.airavata.model.appcatalog.computeresource.ResourceJobManagerType;
-
-import java.util.Calendar;
-import java.util.Date;
-import java.util.HashMap;
-import java.util.Map;
-
-public class EmailMonitorFactory {
-
-    private static EmailBasedMonitor emailBasedMonitor;
-    private static Date startMonitorDate = Calendar.getInstance().getTime();
-
-    public static EmailBasedMonitor getEmailBasedMonitor(ResourceJobManagerType resourceJobManagerType) throws AiravataException {
-        if (emailBasedMonitor == null) {
-            synchronized (EmailMonitorFactory.class){
-                if (emailBasedMonitor == null) {
-                    emailBasedMonitor = new EmailBasedMonitor(resourceJobManagerType);
-                    emailBasedMonitor.setDate(startMonitorDate);
-                    new Thread(emailBasedMonitor).start();
-                }
-            }
-        }
-        return emailBasedMonitor;
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/airavata/blob/7b809747/modules/gfac/gfac-monitor/gfac-email-monitor/src/main/java/org/apache/airavata/gfac/monitor/email/JobStatusResult.java
----------------------------------------------------------------------
diff --git a/modules/gfac/gfac-monitor/gfac-email-monitor/src/main/java/org/apache/airavata/gfac/monitor/email/JobStatusResult.java b/modules/gfac/gfac-monitor/gfac-email-monitor/src/main/java/org/apache/airavata/gfac/monitor/email/JobStatusResult.java
deleted file mode 100644
index 321b9cc..0000000
--- a/modules/gfac/gfac-monitor/gfac-email-monitor/src/main/java/org/apache/airavata/gfac/monitor/email/JobStatusResult.java
+++ /dev/null
@@ -1,55 +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.gfac.monitor.email;
-
-import org.apache.airavata.model.workspace.experiment.JobState;
-
-public class JobStatusResult {
-    private JobState state;
-    private String jobId;
-
-    public String getJobName() {
-        return jobName;
-    }
-
-    public void setJobName(String jobName) {
-        this.jobName = jobName;
-    }
-
-    private String jobName;
-
-    public JobState getState() {
-        return state;
-    }
-
-    public void setState(JobState state) {
-        this.state = state;
-    }
-
-    public String getJobId() {
-        return jobId;
-    }
-
-    public void setJobId(String jobId) {
-        this.jobId = jobId;
-    }
-}
-

http://git-wip-us.apache.org/repos/asf/airavata/blob/7b809747/modules/gfac/gfac-monitor/gfac-email-monitor/src/main/java/org/apache/airavata/gfac/monitor/email/parser/EmailParser.java
----------------------------------------------------------------------
diff --git a/modules/gfac/gfac-monitor/gfac-email-monitor/src/main/java/org/apache/airavata/gfac/monitor/email/parser/EmailParser.java b/modules/gfac/gfac-monitor/gfac-email-monitor/src/main/java/org/apache/airavata/gfac/monitor/email/parser/EmailParser.java
deleted file mode 100644
index d82ce50..0000000
--- a/modules/gfac/gfac-monitor/gfac-email-monitor/src/main/java/org/apache/airavata/gfac/monitor/email/parser/EmailParser.java
+++ /dev/null
@@ -1,36 +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.gfac.monitor.email.parser;
-
-import org.apache.airavata.common.exception.AiravataException;
-import org.apache.airavata.gfac.monitor.email.JobStatusResult;
-
-import javax.mail.Message;
-import javax.mail.MessagingException;
-
-public interface EmailParser {
-    static final String STATUS = "status";
-    static final String JOBID = "jobId";
-    static final String JOBNAME = "jobName";
-    static final String EXIT_STATUS = "exitStatus";
-
-    JobStatusResult parseEmail(Message message) throws MessagingException, AiravataException;
-}

http://git-wip-us.apache.org/repos/asf/airavata/blob/7b809747/modules/gfac/gfac-monitor/gfac-email-monitor/src/main/java/org/apache/airavata/gfac/monitor/email/parser/LSFEmailParser.java
----------------------------------------------------------------------
diff --git a/modules/gfac/gfac-monitor/gfac-email-monitor/src/main/java/org/apache/airavata/gfac/monitor/email/parser/LSFEmailParser.java b/modules/gfac/gfac-monitor/gfac-email-monitor/src/main/java/org/apache/airavata/gfac/monitor/email/parser/LSFEmailParser.java
deleted file mode 100644
index 042f671..0000000
--- a/modules/gfac/gfac-monitor/gfac-email-monitor/src/main/java/org/apache/airavata/gfac/monitor/email/parser/LSFEmailParser.java
+++ /dev/null
@@ -1,74 +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.gfac.monitor.email.parser;
-
-import org.apache.airavata.common.exception.AiravataException;
-import org.apache.airavata.gfac.monitor.email.JobStatusResult;
-import org.apache.airavata.model.workspace.experiment.JobState;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import javax.mail.Message;
-import javax.mail.MessagingException;
-import java.io.IOException;
-import java.util.regex.Matcher;
-import java.util.regex.Pattern;
-
-public class LSFEmailParser implements EmailParser {
-    private static final Logger log = LoggerFactory.getLogger(LSFEmailParser.class);
-    //root@c312-206.ls4.tacc.utexas.edu
-    private static final String SIGNAL = "signal";
-    private static final String LONESTAR_REGEX = "Job (?<" + JOBID + ">\\d+) \\(.*\\) (?<" + STATUS
-            + ">.*)\\s[a-zA-Z =]+(?<" + EXIT_STATUS + ">\\d+)\\sSignal[ ]*=[ ]*(?<" + SIGNAL + ">[a-zA-z]*)";
-
-    @Override
-    public JobStatusResult parseEmail(Message message) throws MessagingException, AiravataException {
-        JobStatusResult jobStatusResult = new JobStatusResult();
-        try {
-            String content = ((String) message.getContent());
-            Pattern pattern = Pattern.compile(LONESTAR_REGEX);
-            Matcher matcher = pattern.matcher(content);
-            if (matcher.find()) {
-                jobStatusResult.setJobId(matcher.group(JOBID));
-                String status = matcher.group(STATUS);
-                jobStatusResult.setState(getJobState(status, content));
-                return jobStatusResult;
-            } else {
-                log.error("[EJM]: No matched found for content => \n" + content);
-            }
-        } catch (IOException e) {
-            throw new AiravataException("i[EJM]: Error while reading content of the email message");
-        }
-        return jobStatusResult;
-    }
-
-    private JobState getJobState(String status, String content) {
-        switch (status) {
-            case "Aborted":
-                return JobState.FAILED;
-            case "Success":
-                return JobState.COMPLETE;
-            default:
-                return JobState.UNKNOWN;
-        }
-
-    }
-}

http://git-wip-us.apache.org/repos/asf/airavata/blob/7b809747/modules/gfac/gfac-monitor/gfac-email-monitor/src/main/java/org/apache/airavata/gfac/monitor/email/parser/PBSEmailParser.java
----------------------------------------------------------------------
diff --git a/modules/gfac/gfac-monitor/gfac-email-monitor/src/main/java/org/apache/airavata/gfac/monitor/email/parser/PBSEmailParser.java b/modules/gfac/gfac-monitor/gfac-email-monitor/src/main/java/org/apache/airavata/gfac/monitor/email/parser/PBSEmailParser.java
deleted file mode 100644
index 841ecc4..0000000
--- a/modules/gfac/gfac-monitor/gfac-email-monitor/src/main/java/org/apache/airavata/gfac/monitor/email/parser/PBSEmailParser.java
+++ /dev/null
@@ -1,104 +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.gfac.monitor.email.parser;
-
-import org.apache.airavata.common.exception.AiravataException;
-import org.apache.airavata.gfac.monitor.email.JobStatusResult;
-import org.apache.airavata.model.workspace.experiment.JobState;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import javax.mail.Message;
-import javax.mail.MessagingException;
-import java.io.IOException;
-import java.util.regex.Matcher;
-import java.util.regex.Pattern;
-
-public class PBSEmailParser implements EmailParser {
-
-    private static final Logger log = LoggerFactory.getLogger(PBSEmailParser.class);
-
-
-    private static final String REGEX = "[a-zA-Z ]*:[ ]*(?<" +  JOBID + ">[a-zA-Z0-9-\\.]*)\\s+[a-zA-Z ]*:[ ]*(?<"+
-            JOBNAME + ">[a-zA-Z0-9-\\.]*)\\s+.*\\s+(?<" + STATUS + ">[a-zA-Z\\ ]*)";
-    private static final String REGEX_EXIT_STATUS = "Exit_status=(?<" + EXIT_STATUS + ">[\\d]+)";
-    public static final String BEGUN_EXECUTION = "Begun execution";
-    public static final String EXECUTION_TERMINATED = "Execution terminated";
-    public static final String ABORTED_BY_PBS_SERVER = "Aborted by PBS Server";
-
-    @Override
-    public JobStatusResult parseEmail(Message message) throws MessagingException, AiravataException {
-        JobStatusResult jobStatusResult = new JobStatusResult();
-//        log.info("Parsing -> " + message.getSubject());
-        try {
-            String content = ((String) message.getContent());
-            Pattern pattern = Pattern.compile(REGEX);
-            Matcher matcher = pattern.matcher(content);
-            if (matcher.find()) {
-                jobStatusResult.setJobId(matcher.group(JOBID));
-                jobStatusResult.setJobName(matcher.group(JOBNAME));
-                String statusLine = matcher.group(STATUS);
-                jobStatusResult.setState(getJobState(statusLine, content));
-                return jobStatusResult;
-            } else {
-                log.error("[EJM]: No matched found for content => \n" + content);
-            }
-
-        } catch (IOException e) {
-            throw new AiravataException("[EJM]: Error while reading content of the email message");
-        }
-        return jobStatusResult;
-    }
-
-    private JobState getJobState(String statusLine, String content) {
-        switch (statusLine) {
-            case BEGUN_EXECUTION:
-                return JobState.ACTIVE;
-            case EXECUTION_TERMINATED:
-                int exitStatus = getExitStatus(content);
-                if (exitStatus == 0) {
-                    // TODO - Remove rabbitmq client script line from the script.
-                    return JobState.COMPLETE;
-                } else if (exitStatus == 271) {
-                    return JobState.CANCELED;
-                } else {
-                    return JobState.FAILED;
-                }
-            case ABORTED_BY_PBS_SERVER:
-                return JobState.FAILED;
-            default:
-                return JobState.UNKNOWN;
-        }
-    }
-
-    private int getExitStatus(String content) {
-        Pattern pattern = Pattern.compile(REGEX_EXIT_STATUS);
-        Matcher matcher = pattern.matcher(content);
-        if (matcher.find()) {
-            String group = matcher.group(EXIT_STATUS);
-            if (group != null && !group.trim().isEmpty()) {
-                return Integer.valueOf(group.trim());
-            }
-        }
-        return -1;
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/airavata/blob/7b809747/modules/gfac/gfac-monitor/gfac-email-monitor/src/main/java/org/apache/airavata/gfac/monitor/email/parser/SLURMEmailParser.java
----------------------------------------------------------------------
diff --git a/modules/gfac/gfac-monitor/gfac-email-monitor/src/main/java/org/apache/airavata/gfac/monitor/email/parser/SLURMEmailParser.java b/modules/gfac/gfac-monitor/gfac-email-monitor/src/main/java/org/apache/airavata/gfac/monitor/email/parser/SLURMEmailParser.java
deleted file mode 100644
index 75ffe98..0000000
--- a/modules/gfac/gfac-monitor/gfac-email-monitor/src/main/java/org/apache/airavata/gfac/monitor/email/parser/SLURMEmailParser.java
+++ /dev/null
@@ -1,82 +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.gfac.monitor.email.parser;
-
-import org.apache.airavata.common.exception.AiravataException;
-import org.apache.airavata.gfac.monitor.email.JobStatusResult;
-import org.apache.airavata.model.workspace.experiment.JobState;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import javax.mail.Message;
-import javax.mail.MessagingException;
-import java.util.regex.Matcher;
-import java.util.regex.Pattern;
-
-public class SLURMEmailParser implements EmailParser {
-
-    private static final Logger log = LoggerFactory.getLogger(SLURMEmailParser.class);
-
-    private static final String REGEX = "[A-Z]*\\s[a-zA-Z]*_[a-z]*=(?<" + JOBID + ">\\d*)[ ]*[a-zA-Z]*=(?<"+
-            JOBNAME + ">[a-zA-Z0-9-]*)[ ]*(?<" + STATUS + ">[]a-zA-Z]*),.*";
-
-    public static final String BEGAN = "Began";
-    public static final String ENDED = "Ended";
-    public static final String FAILED = "Failed";
-    private static final Pattern cancelledStatePattern = Pattern.compile("CANCELLED");
-    private static final Pattern pattern = Pattern.compile(REGEX);
-
-    @Override
-    public JobStatusResult parseEmail(Message message) throws MessagingException, AiravataException{
-        JobStatusResult jobStatusResult = new JobStatusResult();
-        String subject = message.getSubject();
-        Matcher matcher = pattern.matcher(subject);
-        if (matcher.find()) {
-            jobStatusResult.setJobId(matcher.group(JOBID));
-            jobStatusResult.setJobName(matcher.group(JOBNAME));
-            jobStatusResult.setState(getJobState(matcher.group(STATUS), subject));
-            return jobStatusResult;
-        } else {
-            log.error("[EJM]: No matched found for subject -> " + subject);
-        }
-        return jobStatusResult;
-    }
-
-    private JobState getJobState(String state, String subject) {
-        switch (state.trim()) {
-            case BEGAN:
-                return JobState.ACTIVE;
-            case ENDED:
-                Matcher matcher = cancelledStatePattern.matcher(subject);
-                if (matcher.find()) {
-                   return JobState.CANCELED;
-                }
-                return JobState.COMPLETE;
-            case FAILED:
-                return JobState.FAILED;
-            default:
-                log.error("[EJM]: Job State " + state + " isn't handle by SLURM parser");
-                return JobState.UNKNOWN;
-
-        }
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/airavata/blob/7b809747/modules/gfac/gfac-monitor/gfac-email-monitor/src/main/java/org/apache/airavata/gfac/monitor/email/parser/UGEEmailParser.java
----------------------------------------------------------------------
diff --git a/modules/gfac/gfac-monitor/gfac-email-monitor/src/main/java/org/apache/airavata/gfac/monitor/email/parser/UGEEmailParser.java b/modules/gfac/gfac-monitor/gfac-email-monitor/src/main/java/org/apache/airavata/gfac/monitor/email/parser/UGEEmailParser.java
deleted file mode 100644
index 02209f4..0000000
--- a/modules/gfac/gfac-monitor/gfac-email-monitor/src/main/java/org/apache/airavata/gfac/monitor/email/parser/UGEEmailParser.java
+++ /dev/null
@@ -1,102 +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.gfac.monitor.email.parser;
-
-import org.apache.airavata.common.exception.AiravataException;
-import org.apache.airavata.gfac.monitor.email.JobStatusResult;
-import org.apache.airavata.model.workspace.experiment.JobState;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import javax.mail.Message;
-import javax.mail.MessagingException;
-import java.io.IOException;
-import java.util.regex.Matcher;
-import java.util.regex.Pattern;
-
-public class UGEEmailParser implements EmailParser{
-
-    private static final Logger log = LoggerFactory.getLogger(UGEEmailParser.class);
-    private static final String REGEX = "[\\w]*[ ]*(?<"+ JOBID + ">[\\d]*)[ ]*\\((?<" + JOBNAME
-            + ">[a-zA-Z0-9]*)\\)[ ]*(?<" + STATUS + ">[a-zA-Z]*)";
-    public static final String STARTED = "Started";
-    public static final String COMPLETE = "Complete";
-    public static final String FAILED = "Failed";
-    private static final String REGEX_EXIT_STATUS = "Exit Status[ ]*=[ ]*(?<" + EXIT_STATUS + ">[\\d]+)";
-    public static final String ABORTED = "Aborted";
-
-
-    @Override
-    public JobStatusResult parseEmail(Message message) throws MessagingException, AiravataException {
-        JobStatusResult jobStatusResult = new JobStatusResult();
-
-        String subject = message.getSubject();
-        Pattern pattern = Pattern.compile(REGEX);
-        Matcher matcher = pattern.matcher(subject);
-        try {
-            if (matcher.find()) {
-                jobStatusResult.setJobId(matcher.group(JOBID));
-                jobStatusResult.setJobName(matcher.group(JOBNAME));
-                String content = (String) message.getContent();
-                jobStatusResult.setState(getJobState(matcher.group(STATUS), content));
-            } else {
-                log.error("[EJM]: No matched found for subject => \n" + subject);
-            }
-        } catch (IOException e) {
-            throw new AiravataException("[EJM]: Error while reading content of the email message");
-        }
-        return jobStatusResult;
-    }
-
-    private JobState getJobState(String status, String content) {
-        switch (status) {
-            case STARTED:
-                return JobState.ACTIVE;
-            case COMPLETE:
-                int exitStatus = getExitStatus(content);
-                if (exitStatus == 0) {
-                    return JobState.COMPLETE;
-                } else {
-                    log.info("[EJM]: Job returns with Exit Status = " + exitStatus + "  , Marked as Failed");
-                    return JobState.FAILED;
-                }
-            case FAILED:
-                return JobState.FAILED;
-            case ABORTED:
-                return JobState.FAILED;
-            default:
-                return JobState.UNKNOWN;
-
-        }
-    }
-
-    private int getExitStatus(String content) {
-        Pattern statusPattern = Pattern.compile(REGEX_EXIT_STATUS);
-        Matcher statusMatcher = statusPattern.matcher(content);
-        if (statusMatcher.find()) {
-            String group = statusMatcher.group(EXIT_STATUS);
-            if (group != null && !group.trim().isEmpty()) {
-                return Integer.valueOf(group.trim());
-            }
-        }
-        return -1;
-    }
-}

http://git-wip-us.apache.org/repos/asf/airavata/blob/7b809747/modules/gfac/gfac-monitor/gfac-hpc-monitor/pom.xml
----------------------------------------------------------------------
diff --git a/modules/gfac/gfac-monitor/gfac-hpc-monitor/pom.xml b/modules/gfac/gfac-monitor/gfac-hpc-monitor/pom.xml
deleted file mode 100644
index 3a98baa..0000000
--- a/modules/gfac/gfac-monitor/gfac-hpc-monitor/pom.xml
+++ /dev/null
@@ -1,158 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
-    <parent>
-        <artifactId>airavata-gfac-monitor</artifactId>
-        <groupId>org.apache.airavata</groupId>
-        <version>0.16-SNAPSHOT</version>
-    </parent>
-    <modelVersion>4.0.0</modelVersion>
-
-    <artifactId>airavata-gfac-hpc-monitor</artifactId>
-    <name>Airavata GFac Grid Job Monitor</name>
-    <description>The Grid related monitoring implementation</description>
-    <url>http://airavata.apache.org/</url>
-
-    <dependencies>
-        <!-- Logging -->
-        <dependency>
-            <groupId>org.slf4j</groupId>
-            <artifactId>slf4j-api</artifactId>
-        </dependency>
-
-        <!-- GFAC schemas -->
-        <dependency>
-            <groupId>org.apache.airavata</groupId>
-            <artifactId>airavata-gfac-core</artifactId>
-            <version>${project.version}</version>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.airavata</groupId>
-            <artifactId>airavata-gfac-gsissh</artifactId>
-            <version>${project.version}</version>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.airavata</groupId>
-            <artifactId>airavata-gfac-ssh</artifactId>
-            <version>${project.version}</version>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.airavata</groupId>
-            <artifactId>airavata-registry-cpi</artifactId>
-            <version>${project.version}</version>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.airavata</groupId>
-            <artifactId>airavata-jpa-registry</artifactId>
-            <version>${project.version}</version>
-        </dependency>
-        <!-- Workflow Tracking -->
-        <!--<dependency>-->
-        <!--<groupId>org.apache.airavata</groupId>-->
-        <!--<artifactId>airavata-workflow-tracking</artifactId>-->
-        <!--<version>${project.version}</version>-->
-        <!--</dependency>-->
-        <!-- Credential Store -->
-        <dependency>
-            <groupId>org.apache.airavata</groupId>
-            <artifactId>airavata-credential-store</artifactId>
-            <version>${project.version}</version>
-        </dependency>
-        <!-- Test -->
-        <dependency>
-            <groupId>junit</groupId>
-            <artifactId>junit</artifactId>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.testng</groupId>
-            <artifactId>testng</artifactId>
-            <version>6.1.1</version>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.slf4j</groupId>
-            <artifactId>jcl-over-slf4j</artifactId>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.slf4j</groupId>
-            <artifactId>slf4j-log4j12</artifactId>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.airavata</groupId>
-            <artifactId>airavata-server-configuration</artifactId>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.airavata</groupId>
-            <artifactId>airavata-client-configuration</artifactId>
-            <scope>test</scope>
-        </dependency>
-
-        <!-- Guava -->
-        <dependency>
-            <groupId>com.google.guava</groupId>
-            <artifactId>guava</artifactId>
-            <version>12.0</version>
-        </dependency>
-        <!-- gsi-ssh api dependencies -->
-        <dependency>
-            <groupId>org.apache.airavata</groupId>
-            <artifactId>gsissh</artifactId>
-            <version>${project.version}</version>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.airavata</groupId>
-            <artifactId>airavata-data-models</artifactId>
-            <version>${project.version}</version>
-        </dependency>
-        <dependency>
-            <groupId>com.jcraft</groupId>
-            <artifactId>jsch</artifactId>
-            <version>0.1.50</version>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.xmlbeans</groupId>
-            <artifactId>xmlbeans</artifactId>
-            <version>${xmlbeans.version}</version>
-        </dependency>
-        <!-- this is the dependency for amqp implementation -->
-        <dependency>
-            <groupId>com.fasterxml.jackson.core</groupId>
-            <artifactId>jackson-databind</artifactId>
-            <version>2.0.0</version>
-        </dependency>
-    </dependencies>
-
-    <build>
-        <plugins>
-            <plugin>
-                <groupId>org.apache.maven.plugins</groupId>
-                <artifactId>maven-surefire-plugin</artifactId>
-                <configuration>
-                    <skip>false</skip>
-                    <forkMode>always</forkMode>
-                    <failIfNoTests>false</failIfNoTests>
-                </configuration>
-            </plugin>
-            <plugin>
-                <groupId>org.jsonschema2pojo</groupId>
-                <artifactId>jsonschema2pojo-maven-plugin</artifactId>
-                <version>0.4.0</version>
-                <configuration>
-                    <sourceDirectory>${basedir}/src/main/resources/schema</sourceDirectory>
-                    <targetPackage>org.apache.airavata</targetPackage>
-                </configuration>
-                <executions>
-                    <execution>
-                        <goals>
-                            <goal>generate</goal>
-                        </goals>
-                    </execution>
-                </executions>
-            </plugin>
-        </plugins>
-    </build>
-
-</project>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/airavata/blob/7b809747/modules/gfac/gfac-monitor/gfac-hpc-monitor/src/main/java/org/apache/airavata/gfac/monitor/HPCMonitorID.java
----------------------------------------------------------------------
diff --git a/modules/gfac/gfac-monitor/gfac-hpc-monitor/src/main/java/org/apache/airavata/gfac/monitor/HPCMonitorID.java b/modules/gfac/gfac-monitor/gfac-hpc-monitor/src/main/java/org/apache/airavata/gfac/monitor/HPCMonitorID.java
deleted file mode 100644
index ae463a7..0000000
--- a/modules/gfac/gfac-monitor/gfac-hpc-monitor/src/main/java/org/apache/airavata/gfac/monitor/HPCMonitorID.java
+++ /dev/null
@@ -1,107 +0,0 @@
-package org.apache.airavata.gfac.monitor;/*
- *
- * 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.
- *
-*/
-
-import org.apache.airavata.gfac.GFacException;
-import org.apache.airavata.gfac.SecurityContext;
-import org.apache.airavata.gfac.core.context.JobExecutionContext;
-import org.apache.airavata.gfac.core.monitor.MonitorID;
-import org.apache.airavata.gfac.gsissh.security.GSISecurityContext;
-import org.apache.airavata.gfac.ssh.security.SSHSecurityContext;
-import org.apache.airavata.gsi.ssh.api.ServerInfo;
-import org.apache.airavata.gsi.ssh.api.authentication.AuthenticationInfo;
-import org.apache.airavata.gsi.ssh.impl.authentication.MyProxyAuthenticationInfo;
-import org.apache.airavata.model.appcatalog.computeresource.ComputeResourceDescription;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import java.sql.Timestamp;
-import java.util.Date;
-
-public class HPCMonitorID extends MonitorID {
-    private final static Logger logger = LoggerFactory.getLogger(HPCMonitorID.class);
-
-
-    private AuthenticationInfo authenticationInfo = null;
-
-    public HPCMonitorID(ComputeResourceDescription computeResourceDescription, String jobID, String taskID, String workflowNodeID,
-                        String experimentID, String userName,String jobName) {
-        super(computeResourceDescription, jobID, taskID, workflowNodeID, experimentID, userName,jobName);
-        setComputeResourceDescription(computeResourceDescription);
-        setJobStartedTime(new Timestamp((new Date()).getTime()));
-        setUserName(userName);
-        setJobID(jobID);
-        setTaskID(taskID);
-        setExperimentID(experimentID);
-        setWorkflowNodeID(workflowNodeID);
-    }
-
-    public HPCMonitorID(AuthenticationInfo authenticationInfo, JobExecutionContext jobExecutionContext) {
-        super(jobExecutionContext);
-        this.authenticationInfo = authenticationInfo;
-        if (this.authenticationInfo != null) {
-            try {
-                String hostAddress = jobExecutionContext.getHostName();
-                SecurityContext securityContext = jobExecutionContext.getSecurityContext(hostAddress);
-                ServerInfo serverInfo = null;
-                if (securityContext != null) {
-                    if (securityContext instanceof  GSISecurityContext){
-                        serverInfo = (((GSISecurityContext) securityContext).getPbsCluster()).getServerInfo();
-                        if (serverInfo.getUserName() != null) {
-                            setUserName(serverInfo.getUserName());
-                        }
-                    }
-                    if (securityContext instanceof SSHSecurityContext){
-                        serverInfo = (((SSHSecurityContext) securityContext).getPbsCluster()).getServerInfo();
-                        if (serverInfo.getUserName() != null) {
-                            setUserName(serverInfo.getUserName());
-                        }
-                    }
-                }
-            } catch (GFacException e) {
-                logger.error("Error while getting security context", e);
-            }
-        }
-    }
-
-    public HPCMonitorID(ComputeResourceDescription computeResourceDescription, String jobID, String taskID, String workflowNodeID, String experimentID, String userName, AuthenticationInfo authenticationInfo) {
-        setComputeResourceDescription(computeResourceDescription);
-        setJobStartedTime(new Timestamp((new Date()).getTime()));
-        this.authenticationInfo = authenticationInfo;
-        // if we give myproxyauthenticationInfo, so we try to use myproxy user as the user
-        if (this.authenticationInfo != null) {
-            if (this.authenticationInfo instanceof MyProxyAuthenticationInfo) {
-                setUserName(((MyProxyAuthenticationInfo) this.authenticationInfo).getUserName());
-            }
-        }
-        setJobID(jobID);
-        setTaskID(taskID);
-        setExperimentID(experimentID);
-        setWorkflowNodeID(workflowNodeID);
-    }
-
-    public AuthenticationInfo getAuthenticationInfo() {
-        return authenticationInfo;
-    }
-
-    public void setAuthenticationInfo(AuthenticationInfo authenticationInfo) {
-        this.authenticationInfo = authenticationInfo;
-    }
-}

http://git-wip-us.apache.org/repos/asf/airavata/blob/7b809747/modules/gfac/gfac-monitor/gfac-hpc-monitor/src/main/java/org/apache/airavata/gfac/monitor/HostMonitorData.java
----------------------------------------------------------------------
diff --git a/modules/gfac/gfac-monitor/gfac-hpc-monitor/src/main/java/org/apache/airavata/gfac/monitor/HostMonitorData.java b/modules/gfac/gfac-monitor/gfac-hpc-monitor/src/main/java/org/apache/airavata/gfac/monitor/HostMonitorData.java
deleted file mode 100644
index f29e3e6..0000000
--- a/modules/gfac/gfac-monitor/gfac-hpc-monitor/src/main/java/org/apache/airavata/gfac/monitor/HostMonitorData.java
+++ /dev/null
@@ -1,88 +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.gfac.monitor;
-
-import org.apache.airavata.gfac.core.context.JobExecutionContext;
-import org.apache.airavata.gfac.core.monitor.MonitorID;
-import org.apache.airavata.gfac.monitor.exception.AiravataMonitorException;
-import org.apache.airavata.model.appcatalog.computeresource.ComputeResourceDescription;
-import org.apache.airavata.model.appcatalog.computeresource.DataMovementProtocol;
-import org.apache.airavata.model.appcatalog.computeresource.JobSubmissionProtocol;
-
-import java.util.ArrayList;
-import java.util.List;
-
-public class HostMonitorData {
-//    private HostDescription host;
-    private ComputeResourceDescription computeResourceDescription;
-    private JobSubmissionProtocol jobSubmissionProtocol;
-    private DataMovementProtocol dataMovementProtocol;
-
-    private List<MonitorID> monitorIDs;
-
-    public HostMonitorData(JobExecutionContext jobExecutionContext) {
-        this.computeResourceDescription = jobExecutionContext.getApplicationContext().getComputeResourceDescription();
-        this.jobSubmissionProtocol = jobExecutionContext.getPreferredJobSubmissionProtocol();
-        this.dataMovementProtocol = jobExecutionContext.getPreferredDataMovementProtocol();
-        this.monitorIDs = new ArrayList<MonitorID>();
-    }
-
-    public HostMonitorData(JobExecutionContext jobExecutionContext, List<MonitorID> monitorIDs) {
-        this.computeResourceDescription = jobExecutionContext.getApplicationContext().getComputeResourceDescription();
-        this.jobSubmissionProtocol = jobExecutionContext.getPreferredJobSubmissionProtocol();
-        this.dataMovementProtocol = jobExecutionContext.getPreferredDataMovementProtocol();
-        this.monitorIDs = monitorIDs;
-    }
-
-    public ComputeResourceDescription getComputeResourceDescription() {
-        return computeResourceDescription;
-    }
-
-    public void setComputeResourceDescription(ComputeResourceDescription computeResourceDescription) {
-        this.computeResourceDescription = computeResourceDescription;
-    }
-
-    public List<MonitorID> getMonitorIDs() {
-        return monitorIDs;
-    }
-
-    public void setMonitorIDs(List<MonitorID> monitorIDs) {
-        this.monitorIDs = monitorIDs;
-    }
-
-    /**
-     * this method get called by CommonUtils and it will check the right place before adding
-     * so there will not be a mismatch between this.host and monitorID.host
-     * @param monitorID
-     * @throws org.apache.airavata.gfac.monitor.exception.AiravataMonitorException
-     */
-    public void addMonitorIDForHost(MonitorID monitorID)throws AiravataMonitorException {
-        monitorIDs.add(monitorID);
-    }
-
-    public JobSubmissionProtocol getJobSubmissionProtocol() {
-        return jobSubmissionProtocol;
-    }
-
-    public DataMovementProtocol getDataMovementProtocol() {
-        return dataMovementProtocol;
-    }
-}

http://git-wip-us.apache.org/repos/asf/airavata/blob/7b809747/modules/gfac/gfac-monitor/gfac-hpc-monitor/src/main/java/org/apache/airavata/gfac/monitor/UserMonitorData.java
----------------------------------------------------------------------
diff --git a/modules/gfac/gfac-monitor/gfac-hpc-monitor/src/main/java/org/apache/airavata/gfac/monitor/UserMonitorData.java b/modules/gfac/gfac-monitor/gfac-hpc-monitor/src/main/java/org/apache/airavata/gfac/monitor/UserMonitorData.java
deleted file mode 100644
index 022d17c..0000000
--- a/modules/gfac/gfac-monitor/gfac-hpc-monitor/src/main/java/org/apache/airavata/gfac/monitor/UserMonitorData.java
+++ /dev/null
@@ -1,76 +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.gfac.monitor;
-
-import org.apache.airavata.gfac.monitor.exception.AiravataMonitorException;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import java.util.ArrayList;
-import java.util.List;
-
-/**
- * This is the datastructure to keep the user centric job data, rather keeping
- * the individual jobs we keep the jobs based on the each user
- */
-public class UserMonitorData {
-    private final static Logger logger = LoggerFactory.getLogger(UserMonitorData.class);
-
-    private String  userName;
-
-    private List<HostMonitorData> hostMonitorData;
-
-
-    public UserMonitorData(String userName) {
-        this.userName = userName;
-        hostMonitorData = new ArrayList<HostMonitorData>();
-    }
-
-    public UserMonitorData(String userName, List<HostMonitorData> hostMonitorDataList) {
-        this.hostMonitorData = hostMonitorDataList;
-        this.userName = userName;
-    }
-
-    public List<HostMonitorData> getHostMonitorData() {
-        return hostMonitorData;
-    }
-
-    public void setHostMonitorData(List<HostMonitorData> hostMonitorData) {
-        this.hostMonitorData = hostMonitorData;
-    }
-
-    public String getUserName() {
-        return userName;
-    }
-
-    public void setUserName(String userName) {
-        this.userName = userName;
-    }
-
-    /*
-    This method will add element to the MonitorID list, user should not
-    duplicate it, we do not check it because its going to be used by airavata
-    so we have to use carefully and this method will add a host if its a new host
-     */
-    public void addHostMonitorData(HostMonitorData hostMonitorData) throws AiravataMonitorException {
-        this.hostMonitorData.add(hostMonitorData);
-    }
-}

http://git-wip-us.apache.org/repos/asf/airavata/blob/7b809747/modules/gfac/gfac-monitor/gfac-hpc-monitor/src/main/java/org/apache/airavata/gfac/monitor/command/ExperimentCancelRequest.java
----------------------------------------------------------------------
diff --git a/modules/gfac/gfac-monitor/gfac-hpc-monitor/src/main/java/org/apache/airavata/gfac/monitor/command/ExperimentCancelRequest.java b/modules/gfac/gfac-monitor/gfac-hpc-monitor/src/main/java/org/apache/airavata/gfac/monitor/command/ExperimentCancelRequest.java
deleted file mode 100644
index f19decf..0000000
--- a/modules/gfac/gfac-monitor/gfac-hpc-monitor/src/main/java/org/apache/airavata/gfac/monitor/command/ExperimentCancelRequest.java
+++ /dev/null
@@ -1,38 +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.gfac.monitor.command;
-
-public class ExperimentCancelRequest {
-	private String experimentId;
-
-	public ExperimentCancelRequest(String experimentId) {
-		this.experimentId = experimentId;
-	}
-
-	public String getExperimentId() {
-		return experimentId;
-	}
-
-	public void setExperimentId(String experimentId) {
-		this.experimentId = experimentId;
-	}
-}

http://git-wip-us.apache.org/repos/asf/airavata/blob/7b809747/modules/gfac/gfac-monitor/gfac-hpc-monitor/src/main/java/org/apache/airavata/gfac/monitor/command/TaskCancelRequest.java
----------------------------------------------------------------------
diff --git a/modules/gfac/gfac-monitor/gfac-hpc-monitor/src/main/java/org/apache/airavata/gfac/monitor/command/TaskCancelRequest.java b/modules/gfac/gfac-monitor/gfac-hpc-monitor/src/main/java/org/apache/airavata/gfac/monitor/command/TaskCancelRequest.java
deleted file mode 100644
index b45e01c..0000000
--- a/modules/gfac/gfac-monitor/gfac-hpc-monitor/src/main/java/org/apache/airavata/gfac/monitor/command/TaskCancelRequest.java
+++ /dev/null
@@ -1,52 +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.gfac.monitor.command;
-
-public class TaskCancelRequest {
-	private String experimentId;
-	private String nodeId;
-	private String taskId;
-	
-	public TaskCancelRequest(String experimentId, String nodeId, String taskId) {
-		this.experimentId = experimentId;
-		this.setNodeId(nodeId);
-		this.taskId = taskId;
-	}
-	public String getExperimentId() {
-		return experimentId;
-	}
-	public void setExperimentId(String experimentId) {
-		this.experimentId = experimentId;
-	}
-	public String getTaskId() {
-		return taskId;
-	}
-	public void setTaskId(String taskId) {
-		this.taskId = taskId;
-	}
-	public String getNodeId() {
-		return nodeId;
-	}
-	public void setNodeId(String nodeId) {
-		this.nodeId = nodeId;
-	}
-}

http://git-wip-us.apache.org/repos/asf/airavata/blob/7b809747/modules/gfac/gfac-monitor/gfac-hpc-monitor/src/main/java/org/apache/airavata/gfac/monitor/core/AiravataAbstractMonitor.java
----------------------------------------------------------------------
diff --git a/modules/gfac/gfac-monitor/gfac-hpc-monitor/src/main/java/org/apache/airavata/gfac/monitor/core/AiravataAbstractMonitor.java b/modules/gfac/gfac-monitor/gfac-hpc-monitor/src/main/java/org/apache/airavata/gfac/monitor/core/AiravataAbstractMonitor.java
deleted file mode 100644
index b4ac3a9..0000000
--- a/modules/gfac/gfac-monitor/gfac-hpc-monitor/src/main/java/org/apache/airavata/gfac/monitor/core/AiravataAbstractMonitor.java
+++ /dev/null
@@ -1,38 +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.gfac.monitor.core;
-
-import org.apache.airavata.common.utils.MonitorPublisher;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-/**
- * This is the abstract Monitor which needs to be used by
- * any Monitoring implementation which expect nto consume
- * to store the status to registry. Because they have to
- * use the MonitorPublisher to publish the monitoring statuses
- * to the Event Bus. All the Monitor statuses publish to the eventbus
- * will be saved to the Registry.
- */
-public abstract class AiravataAbstractMonitor implements Monitor {
-    private final static Logger logger = LoggerFactory.getLogger(AiravataAbstractMonitor.class);
-
-}