airavata-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From sach...@apache.org
Subject [2/9] airavata git commit: Revert "removing previous airavata client API - AIRAVATA-1371"
Date Thu, 22 Jan 2015 14:52:15 GMT
http://git-wip-us.apache.org/repos/asf/airavata/blob/2654424b/modules/airavata-client/src/main/java/org/apache/airavata/client/tools/DocumentCreatorNew.java
----------------------------------------------------------------------
diff --git a/modules/airavata-client/src/main/java/org/apache/airavata/client/tools/DocumentCreatorNew.java b/modules/airavata-client/src/main/java/org/apache/airavata/client/tools/DocumentCreatorNew.java
new file mode 100644
index 0000000..1936593
--- /dev/null
+++ b/modules/airavata-client/src/main/java/org/apache/airavata/client/tools/DocumentCreatorNew.java
@@ -0,0 +1,823 @@
+///*
+// *
+// * 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.client.tools;
+//
+//import org.airavata.appcatalog.cpi.AppCatalog;
+//import org.airavata.appcatalog.cpi.AppCatalogException;
+//import org.apache.airavata.api.Airavata;
+//import org.apache.airavata.common.utils.ClientSettings;
+//import org.apache.airavata.model.appcatalog.appdeployment.ApplicationDeploymentDescription;
+//import org.apache.airavata.model.appcatalog.appdeployment.ApplicationModule;
+//import org.apache.airavata.model.appcatalog.appdeployment.ApplicationParallelismType;
+//import org.apache.airavata.model.appcatalog.appinterface.ApplicationInterfaceDescription;
+//import org.apache.airavata.model.appcatalog.appinterface.DataType;
+//import org.apache.airavata.model.appcatalog.computeresource.*;
+//import org.apache.airavata.model.appcatalog.gatewayprofile.ComputeResourcePreference;
+//import org.apache.airavata.model.appcatalog.gatewayprofile.GatewayResourceProfile;
+//import org.apache.airavata.model.error.AiravataClientException;
+//import org.apache.airavata.model.error.AiravataSystemException;
+//import org.apache.airavata.model.error.InvalidRequestException;
+//import org.apache.thrift.TException;
+//
+//import java.io.File;
+//import java.util.*;
+//
+///**
+// * This class has been moved to integration-tests module, use that instead of this
+// */
+//@Deprecated
+//public class DocumentCreatorNew {
+//
+//    private AppCatalog appcatalog = null;
+//    private String trestleshpcHostAddress = "trestles.sdsc.edu";
+//    private String lonestarHostAddress = "lonestar.tacc.utexas.edu";
+//    private String stampedeHostAddress = "stampede.tacc.xsede.org";
+//    private String gridftpAddress = "gsiftp://trestles-dm1.sdsc.edu:2811";
+//    private String gramAddress = "trestles-login1.sdsc.edu:2119/jobmanager-pbstest2";
+//    private String bigRed2HostAddress = "bigred2.uits.iu.edu";
+//
+//    //App Module Id's
+//    private static String echoModuleId;
+//    private static String amberModuleId;
+//    private static String autoDockModuleId;
+//    private static String espressoModuleId;
+//    private static String gromacsModuleId;
+//    private static String lammpsModuleId;
+//    private static String nwChemModuleId;
+//    private static String trinityModuleId;
+//    private static String wrfModuleId;
+//    private Airavata.Client client;
+//    private GatewayResourceProfile gatewayResourceProfile;
+//
+//    public DocumentCreatorNew(Airavata.Client client) throws AppCatalogException {
+//        this.client = client;
+//    }
+//
+//    public String createLocalHostDocs() throws AppCatalogException, InvalidRequestException, AiravataClientException, AiravataSystemException, TException {
+//        //Define compute resource host
+//        ComputeResourceDescription host = DocumentCreatorUtils.createComputeResourceDescription(
+//                "localhost", new ArrayList<String>(Arrays.asList(new String[]{"127.0.0.1"})), new ArrayList<String>(Arrays.asList(new String[]{"127.0.0.1"})));
+////    	host.setIsEmpty(true);
+//        host.setComputeResourceId(client.registerComputeResource(host));
+//
+//        LOCALSubmission localSubmission = new LOCALSubmission();
+//        ResourceJobManager resourceJobManager = DocumentCreatorUtils.createResourceJobManager(ResourceJobManagerType.FORK, null, null, null);
+//        localSubmission.setResourceJobManager(resourceJobManager);
+//        client.addLocalSubmissionDetails(host.getComputeResourceId(), 1, localSubmission);
+//
+//        LOCALDataMovement localDataMovement = new LOCALDataMovement();
+//        client.addLocalDataMovementDetails(host.getComputeResourceId(), 1, localDataMovement);
+//
+//        //Define application module
+//        ApplicationModule module = DocumentCreatorUtils.createApplicationModule("echo", "1.0.0", "Local host echo applications");
+//        module.setAppModuleId(client.registerApplicationModule(module));
+//
+//        //Define application interfaces
+//        ApplicationInterfaceDescription application = new ApplicationInterfaceDescription();
+////    	application.setIsEmpty(false);
+//        application.setApplicationName("SimpleEcho0");
+//        application.addToApplicationModules(module.getAppModuleId());
+//        application.addToApplicationInputs(DocumentCreatorUtils.createAppInput("echo_input", "echo_input", "Echo Input Data", null, DataType.STRING));
+//        application.addToApplicationOutputs(DocumentCreatorUtils.createAppOutput("echo_output", null, DataType.STRING));
+//        application.setApplicationInterfaceId(client.registerApplicationInterface(application));
+//
+//        //Define application deployment
+//        ApplicationDeploymentDescription deployment = DocumentCreatorUtils.createApplicationDeployment(host.getComputeResourceId(), module.getAppModuleId(), "/bin/echo", ApplicationParallelismType.SERIAL, "Local echo app depoyment");
+//        deployment.setAppDeploymentId(client.registerApplicationDeployment(deployment));
+//
+//        //Define gateway profile
+//        ComputeResourcePreference computeResourcePreference = DocumentCreatorUtils.createComputeResourcePreference(
+//                host.getComputeResourceId(), "/tmp", null,
+//                false, null,
+//                null, null);
+//        gatewayResourceProfile = new GatewayResourceProfile();
+////		gatewayResourceProfile.setGatewayID("default");
+//        gatewayResourceProfile.setGatewayName(ClientSettings.getSetting("default.registry.gateway", "php_reference_gateway"));
+//        gatewayResourceProfile.addToComputeResourcePreferences(computeResourcePreference);
+//        String gatewayId = client.registerGatewayResourceProfile(gatewayResourceProfile);
+//        gatewayResourceProfile.setGatewayID(gatewayId);
+//        client.addGatewayComputeResourcePreference(gatewayResourceProfile.getGatewayID(), host.getComputeResourceId(), computeResourcePreference);
+//        return host.getComputeResourceId() + "," + application.getApplicationInterfaceId();
+//    }
+//
+//    private GatewayResourceProfile getGatewayResourceProfile() throws InvalidRequestException, AiravataClientException, AiravataSystemException, TException {
+////    	if (gatewayResourceProfile==null){
+////    		try {
+////				gatewayResourceProfile = client.getGatewayResourceProfile(ga);
+////			} catch (Exception e) {
+////
+////			}
+//        if (gatewayResourceProfile == null) {
+//            gatewayResourceProfile = new GatewayResourceProfile();
+////				gatewayResourceProfile.setGatewayID("default");
+//            gatewayResourceProfile.setGatewayName("default");
+//            gatewayResourceProfile.setGatewayID(client.registerGatewayResourceProfile(gatewayResourceProfile));
+//        }
+////    	}
+//        return gatewayResourceProfile;
+//
+//    }
+//
+//    public String createSSHHostDocs() throws AppCatalogException, InvalidRequestException, AiravataClientException, AiravataSystemException, TException {
+//        ComputeResourceDescription host = DocumentCreatorUtils.createComputeResourceDescription("gw111.iu.xsede.org", null, null);
+//        host.addToIpAddresses("gw111.iu.xsede.org");
+//        host.addToHostAliases("gw111.iu.xsede.org");
+//        host.setResourceDescription("gw111 ssh access");
+//        host.setComputeResourceId(client.registerComputeResource(host));
+//
+//
+//        SSHJobSubmission jobSubmission = new SSHJobSubmission();
+//        jobSubmission.setSshPort(22);
+//        jobSubmission.setSecurityProtocol(SecurityProtocol.SSH_KEYS);
+//        ResourceJobManager resourceJobManager = DocumentCreatorUtils.createResourceJobManager(ResourceJobManagerType.FORK, null, null, null);
+//        jobSubmission.setResourceJobManager(resourceJobManager);
+//        client.addSSHJobSubmissionDetails(host.getComputeResourceId(), 1, jobSubmission);
+//
+//        SCPDataMovement scpDataMovement = new SCPDataMovement();
+//        scpDataMovement.setSecurityProtocol(SecurityProtocol.SSH_KEYS);
+//        scpDataMovement.setSshPort(22);
+//        client.addSCPDataMovementDetails(host.getComputeResourceId(), 1, scpDataMovement);
+//
+//        ApplicationModule module = DocumentCreatorUtils.createApplicationModule("echo", "1.1", null);
+//        module.setAppModuleId(client.registerApplicationModule(module));
+//        ;
+//
+//        ApplicationDeploymentDescription deployment = DocumentCreatorUtils.createApplicationDeployment(host.getComputeResourceId(), module.getAppModuleId(), "/bin/echo", ApplicationParallelismType.SERIAL, "SSHEchoApplication");
+//        client.registerApplicationDeployment(deployment);
+//
+//        ApplicationInterfaceDescription application = new ApplicationInterfaceDescription();
+////    	application.setIsEmpty(false);
+//        application.setApplicationName("SSHEcho1");
+//        application.addToApplicationModules(module.getAppModuleId());
+//        application.addToApplicationInputs(DocumentCreatorUtils.createAppInput("echo_input", "echo_input", null, null, DataType.STRING));
+//        application.addToApplicationOutputs(DocumentCreatorUtils.createAppOutput("echo_output", null, DataType.STRING));
+//        client.registerApplicationInterface(application);
+//        client.addGatewayComputeResourcePreference(getGatewayResourceProfile().getGatewayID(), host.getComputeResourceId(), DocumentCreatorUtils.createComputeResourcePreference(host.getComputeResourceId(), "/tmp", null, false, null, null, null));
+//        return host.getComputeResourceId() + "," + application.getApplicationInterfaceId();
+//    }
+//
+//    //
+////    public void createGramDocs() {
+//////        /*
+//////           creating host descriptor for gram
+//////        */
+//////        HostDescription host = new HostDescription(GlobusHostType.type);
+//////        host.getType().setHostAddress(trestleshpcHostAddress);
+//////        host.getType().setHostName(trestleshpcHostAddress);
+//////        ((GlobusHostType) host.getType()).setGlobusGateKeeperEndPointArray(new String[]{gramAddress});
+//////        ((GlobusHostType) host.getType()).setGridFTPEndPointArray(new String[]{gridftpAddress});
+//////        try {
+//////            airavataAPI.getApplicationManager().saveHostDescription(host);
+//////        } catch (AiravataAPIInvocationException e) {
+//////            e.printStackTrace();  //To change body of catch statement use File | Settings | File Templates.
+//////        }
+//////
+//////
+//////        /*
+//////        * Service Description creation and saving
+//////        */
+//////        String serviceName = "SimpleEcho1";
+//////        ServiceDescription serv = new ServiceDescription();
+//////        serv.getType().setName(serviceName);
+//////
+//////        List<InputParameterType> inputList = new ArrayList<InputParameterType>();
+//////        List<OutputParameterType> outputList = new ArrayList<OutputParameterType>();
+//////
+//////        InputParameterType input = InputParameterType.Factory.newInstance();
+//////        input.setParameterName("echo_input");
+//////        ParameterType parameterType = input.addNewParameterType();
+//////        parameterType.setType(DataType.STRING);
+//////        parameterType.setName("String");
+//////
+//////        OutputParameterType output = OutputParameterType.Factory.newInstance();
+//////        output.setParameterName("echo_output");
+//////        ParameterType parameterType1 = output.addNewParameterType();
+//////        parameterType1.setType(DataType.STRING);
+//////        parameterType1.setName("String");
+//////
+//////        inputList.add(input);
+//////        outputList.add(output);
+//////
+//////        InputParameterType[] inputParamList = inputList.toArray(new InputParameterType[inputList.size()]);
+//////        OutputParameterType[] outputParamList = outputList.toArray(new OutputParameterType[outputList.size()]);
+//////
+//////        serv.getType().setInputParametersArray(inputParamList);
+//////        serv.getType().setOutputParametersArray(outputParamList);
+//////        try {
+//////            airavataAPI.getApplicationManager().saveServiceDescription(serv);
+//////        } catch (AiravataAPIInvocationException e) {
+//////            e.printStackTrace();
+//////        }
+//////
+//////        /*
+//////            Application descriptor creation and saving
+//////         */
+//////        ApplicationDescription appDesc = new ApplicationDescription(HpcApplicationDeploymentType.type);
+//////        HpcApplicationDeploymentType app = (HpcApplicationDeploymentType) appDesc.getType();
+//////        ApplicationDeploymentDescriptionType.ApplicationName name = ApplicationDeploymentDescriptionType.ApplicationName.Factory.newInstance();
+//////        name.setStringValue("EchoLocal");
+//////        app.setApplicationName(name);
+//////        ProjectAccountType projectAccountType = app.addNewProjectAccount();
+//////        projectAccountType.setProjectAccountNumber("sds128");
+//////
+//////        QueueType queueType = app.addNewQueue();
+//////        queueType.setQueueName("normal");
+//////
+//////        app.setCpuCount(1);
+//////        app.setJobType(JobTypeType.SERIAL);
+//////        app.setNodeCount(1);
+//////        app.setProcessorsPerNode(1);
+//////
+//////        /*
+//////           * Use bat file if it is compiled on Windows
+//////           */
+//////        app.setExecutableLocation("/bin/echo");
+//////
+//////        /*
+//////           * Default tmp location
+//////           */
+//////        String tempDir = "/home/ogce/scratch";
+//////        app.setScratchWorkingDirectory(tempDir);
+//////        app.setMaxMemory(10);
+//////
+//////
+//////        try {
+//////            airavataAPI.getApplicationManager().saveApplicationDescription(serviceName, trestleshpcHostAddress, appDesc);
+//////        } catch (AiravataAPIInvocationException e) {
+//////            e.printStackTrace();  //To change body of catch statement use File | Settings | File Templates.
+//////        }
+////    }
+////
+//    public String createPBSDocsForOGCE_Echo() throws AppCatalogException, InvalidRequestException, AiravataClientException, AiravataSystemException, TException {
+//
+//        ComputeResourceDescription host = DocumentCreatorUtils.createComputeResourceDescription(trestleshpcHostAddress, null, null);
+//        host.addToIpAddresses(trestleshpcHostAddress);
+//        host.addToHostAliases(trestleshpcHostAddress);
+//        host.setComputeResourceId(client.registerComputeResource(host));
+//
+//        SSHJobSubmission sshJobSubmission = new SSHJobSubmission();
+//        ResourceJobManager resourceJobManager = DocumentCreatorUtils.createResourceJobManager(ResourceJobManagerType.PBS, "/opt/torque/bin/", null, null);
+//        sshJobSubmission.setResourceJobManager(resourceJobManager);
+//        sshJobSubmission.setSecurityProtocol(SecurityProtocol.GSI);
+//        sshJobSubmission.setSshPort(22);
+//        client.addSSHJobSubmissionDetails(host.getComputeResourceId(), 1, sshJobSubmission);
+//
+//        SCPDataMovement scpDataMovement = new SCPDataMovement();
+//        scpDataMovement.setSecurityProtocol(SecurityProtocol.GSI);
+//        scpDataMovement.setSshPort(22);
+//
+//        client.addSCPDataMovementDetails(host.getComputeResourceId(), 1, scpDataMovement);
+//
+//        ApplicationModule module1 = DocumentCreatorUtils.createApplicationModule("echo", "1.2", null);
+//        module1.setAppModuleId(client.registerApplicationModule(module1));
+//
+//        ApplicationInterfaceDescription application = new ApplicationInterfaceDescription();
+////    	application.setIsEmpty(false);
+//        application.setApplicationName("SimpleEcho2");
+//        application.addToApplicationModules(module1.getAppModuleId());
+//        application.addToApplicationInputs(DocumentCreatorUtils.createAppInput("echo_input", "echo_input", "echo_input", null, DataType.STRING));
+//        application.addToApplicationOutputs(DocumentCreatorUtils.createAppOutput("echo_output", null, DataType.STRING));
+//
+//        application.setApplicationInterfaceId(client.registerApplicationInterface(application));
+//
+//        ApplicationDeploymentDescription deployment = DocumentCreatorUtils.createApplicationDeployment(host.getComputeResourceId(), module1.getAppModuleId(), "/home/ogce/echo.sh", ApplicationParallelismType.SERIAL, "Echo application");
+//        deployment.setAppDeploymentId(client.registerApplicationDeployment(deployment));
+//
+//        client.addGatewayComputeResourcePreference(getGatewayResourceProfile().getGatewayID(), host.getComputeResourceId(), DocumentCreatorUtils.createComputeResourcePreference(host.getComputeResourceId(), "/oasis/scratch/trestles/ogce/temp_project/", "sds128", false, null, null, null));
+//        return host.getComputeResourceId() + "," + application.getApplicationInterfaceId();
+//    }
+//
+//    public String createPBSDocsForOGCE_WRF() throws AppCatalogException, InvalidRequestException, AiravataClientException, AiravataSystemException, TException {
+//
+//        ComputeResourceDescription host = DocumentCreatorUtils.createComputeResourceDescription(trestleshpcHostAddress, null, null);
+//        host.addToIpAddresses(trestleshpcHostAddress);
+//        host.addToHostAliases(trestleshpcHostAddress);
+//        host.setComputeResourceId(client.registerComputeResource(host));
+//
+//        SSHJobSubmission sshJobSubmission = new SSHJobSubmission();
+//        ResourceJobManager resourceJobManager = DocumentCreatorUtils.createResourceJobManager(ResourceJobManagerType.PBS, "/opt/torque/bin/", null, null);
+//        sshJobSubmission.setResourceJobManager(resourceJobManager);
+//        sshJobSubmission.setSecurityProtocol(SecurityProtocol.GSI);
+//        sshJobSubmission.setSshPort(22);
+//        client.addSSHJobSubmissionDetails(host.getComputeResourceId(), 1, sshJobSubmission);
+//
+//        SCPDataMovement scpDataMovement = new SCPDataMovement();
+//        scpDataMovement.setSecurityProtocol(SecurityProtocol.GSI);
+//        scpDataMovement.setSshPort(22);
+//
+//        client.addSCPDataMovementDetails(host.getComputeResourceId(), 1, scpDataMovement);
+//
+//        client.addGatewayComputeResourcePreference(getGatewayResourceProfile().getGatewayID(), host.getComputeResourceId(), DocumentCreatorUtils.createComputeResourcePreference(host.getComputeResourceId(), "/oasis/scratch/trestles/ogce/temp_project/", "sds128", false, null, null, null));
+//
+//        ApplicationModule module2 = DocumentCreatorUtils.createApplicationModule("wrf", "1.0.0", null);
+//        module2.setAppModuleId(client.registerApplicationModule(module2));
+//        ApplicationInterfaceDescription application2 = new ApplicationInterfaceDescription();
+////    	application2.setIsEmpty(false);
+//        application2.setApplicationName("WRF");
+//        application2.addToApplicationModules(module2.getAppModuleId());
+//        application2.addToApplicationInputs(DocumentCreatorUtils.createAppInput("WRF_Namelist", "WRF_Namelist", null, null, DataType.URI));
+//        application2.addToApplicationInputs(DocumentCreatorUtils.createAppInput("WRF_Boundary_File", "WRF_Boundary_File", null, null, DataType.URI));
+//        application2.addToApplicationInputs(DocumentCreatorUtils.createAppInput("WRF_Input_File", "WRF_Input_File", null, null, DataType.URI));
+//
+//        application2.addToApplicationOutputs(DocumentCreatorUtils.createAppOutput("WRF_Output", null, DataType.URI));
+//        application2.addToApplicationOutputs(DocumentCreatorUtils.createAppOutput("WRF_Execution_Log", null, DataType.URI));
+//        application2.setApplicationInterfaceId(client.registerApplicationInterface(application2));
+//
+//        ApplicationDeploymentDescription deployment2 = DocumentCreatorUtils.createApplicationDeployment(host.getComputeResourceId(), module2.getAppModuleId(), "/home/ogce/production/app_wrappers/wrf_wrapper.sh", ApplicationParallelismType.MPI, "WRF");
+//        deployment2.setAppDeploymentId(client.registerApplicationDeployment(deployment2));
+//        return host.getComputeResourceId() + "," + application2.getApplicationInterfaceId();
+//    }
+//
+//    public String createSlumWRFDocs() throws AppCatalogException, TException {
+//        ComputeResourceDescription host = DocumentCreatorUtils.createComputeResourceDescription(stampedeHostAddress, null, null);
+//        host.addToHostAliases(stampedeHostAddress);
+//        host.addToIpAddresses(stampedeHostAddress);
+//        host.setComputeResourceId(client.registerComputeResource(host));
+//
+//        ResourceJobManager resourceJobManager = DocumentCreatorUtils.createResourceJobManager(ResourceJobManagerType.SLURM, "/usr/bin/", null, "push");
+//        SSHJobSubmission sshJobSubmission = new SSHJobSubmission();
+//        sshJobSubmission.setResourceJobManager(resourceJobManager);
+//        sshJobSubmission.setSecurityProtocol(SecurityProtocol.GSI);
+//        sshJobSubmission.setSshPort(2222);
+//
+//        client.addSSHJobSubmissionDetails(host.getComputeResourceId(), 1, sshJobSubmission);
+//        SCPDataMovement scpDataMovement = new SCPDataMovement();
+//        scpDataMovement.setSecurityProtocol(SecurityProtocol.GSI);
+//        scpDataMovement.setSshPort(22);
+//        client.addSCPDataMovementDetails(host.getComputeResourceId(), 1, scpDataMovement);
+//        client.addSCPDataMovementDetails(host.getComputeResourceId(), 1, scpDataMovement);
+//
+//        client.addGatewayComputeResourcePreference(getGatewayResourceProfile().getGatewayID(), host.getComputeResourceId(), DocumentCreatorUtils.createComputeResourcePreference(host.getComputeResourceId(), "/home1/01437/ogce", "TG-STA110014S", false, null, null, null));
+//
+//        ApplicationModule module2 = DocumentCreatorUtils.createApplicationModule("wrf", "1.0.0", null);
+//        module2.setAppModuleId(client.registerApplicationModule(module2));
+//        ApplicationInterfaceDescription application2 = new ApplicationInterfaceDescription();
+//        //    	application2.setIsEmpty(false);
+//        application2.setApplicationName("WRF");
+//        application2.addToApplicationModules(module2.getAppModuleId());
+//        application2.addToApplicationInputs(DocumentCreatorUtils.createAppInput("WRF_Namelist", "WRF_Namelist", null, null, DataType.URI));
+//        application2.addToApplicationInputs(DocumentCreatorUtils.createAppInput("WRF_Boundary_File", "WRF_Boundary_File", null, null, DataType.URI));
+//        application2.addToApplicationInputs(DocumentCreatorUtils.createAppInput("WRF_Input_File", "WRF_Input_File", null, null, DataType.URI));
+//
+//        application2.addToApplicationOutputs(DocumentCreatorUtils.createAppOutput("WRF_Output", null, DataType.URI));
+//        application2.addToApplicationOutputs(DocumentCreatorUtils.createAppOutput("WRF_Execution_Log", null, DataType.URI));
+//        application2.setApplicationInterfaceId(client.registerApplicationInterface(application2));
+//
+//        ApplicationDeploymentDescription deployment2 = DocumentCreatorUtils.createApplicationDeployment(host.getComputeResourceId(), module2.getAppModuleId(), "/home1/01437/ogce/production/app_wrappers/wrf_wrapper.sh", ApplicationParallelismType.MPI, "WRF");
+//        deployment2.setAppDeploymentId(client.registerApplicationDeployment(deployment2));
+//        return host.getComputeResourceId() + "," + application2.getApplicationInterfaceId();
+//
+//    }
+//
+//    public String createSlurmDocs() throws AppCatalogException, InvalidRequestException, AiravataClientException, AiravataSystemException, TException {
+//        ComputeResourceDescription host = DocumentCreatorUtils.createComputeResourceDescription(stampedeHostAddress, null, null);
+//        host.addToHostAliases(stampedeHostAddress);
+//        host.addToIpAddresses(stampedeHostAddress);
+//        host.setComputeResourceId(client.registerComputeResource(host));
+//
+//        ResourceJobManager resourceJobManager = DocumentCreatorUtils.createResourceJobManager(ResourceJobManagerType.SLURM, "/usr/bin/", null, "push");
+//        SSHJobSubmission sshJobSubmission = new SSHJobSubmission();
+//        sshJobSubmission.setResourceJobManager(resourceJobManager);
+//        sshJobSubmission.setSecurityProtocol(SecurityProtocol.GSI);
+//        sshJobSubmission.setSshPort(2222);
+//        client.addSSHJobSubmissionDetails(host.getComputeResourceId(), 1, sshJobSubmission);
+//
+//        SCPDataMovement scpDataMovement = new SCPDataMovement();
+//        scpDataMovement.setSecurityProtocol(SecurityProtocol.GSI);
+//        scpDataMovement.setSshPort(22);
+//        client.addSCPDataMovementDetails(host.getComputeResourceId(), 1, scpDataMovement);
+//
+//        ApplicationModule module = DocumentCreatorUtils.createApplicationModule("echo", "1.3", null);
+//        module.setAppModuleId(client.registerApplicationModule(module));
+//
+//        ApplicationInterfaceDescription application = new ApplicationInterfaceDescription();
+////    	application.setIsEmpty(false);
+//        application.setApplicationName("SimpleEcho3");
+//        application.addToApplicationModules(module.getAppModuleId());
+//        application.addToApplicationInputs(DocumentCreatorUtils.createAppInput("echo_input", "echo_input", null, null, DataType.STRING));
+//        application.addToApplicationOutputs(DocumentCreatorUtils.createAppOutput("echo_output", null, DataType.STRING));
+//        application.setApplicationInterfaceId(client.registerApplicationInterface(application));
+//
+//        ApplicationDeploymentDescription deployment = DocumentCreatorUtils.createApplicationDeployment(host.getComputeResourceId(), module.getAppModuleId(), "/bin/echo", ApplicationParallelismType.SERIAL, "EchoLocal");
+//        deployment.setAppDeploymentId(client.registerApplicationDeployment(deployment));
+//
+//        client.addGatewayComputeResourcePreference(getGatewayResourceProfile().getGatewayID(), host.getComputeResourceId(), DocumentCreatorUtils.createComputeResourcePreference(host.getComputeResourceId(), "/home1/01437/ogce", "TG-STA110014S", false, null, null, null));
+//        return host.getComputeResourceId() + "," + application.getApplicationInterfaceId();
+//    }
+//
+//    public String createSGEDocs() throws AppCatalogException, InvalidRequestException, AiravataClientException, AiravataSystemException, TException {
+//        ComputeResourceDescription host = DocumentCreatorUtils.createComputeResourceDescription(lonestarHostAddress, null, null);
+//        host.addToHostAliases(lonestarHostAddress);
+//        host.addToIpAddresses(lonestarHostAddress);
+//        host.setComputeResourceId(client.registerComputeResource(host));
+//
+//        ResourceJobManager resourceJobManager = DocumentCreatorUtils.createResourceJobManager(ResourceJobManagerType.UGE, "/opt/sge6.2/bin/lx24-amd64/", null, null);
+//        SSHJobSubmission sshJobSubmission = new SSHJobSubmission();
+//        sshJobSubmission.setResourceJobManager(resourceJobManager);
+//        sshJobSubmission.setSecurityProtocol(SecurityProtocol.GSI);
+//        sshJobSubmission.setSshPort(22);
+//
+//        client.addSSHJobSubmissionDetails(host.getComputeResourceId(), 1, sshJobSubmission);
+//
+//        SCPDataMovement scpDataMovement = new SCPDataMovement();
+//        scpDataMovement.setSecurityProtocol(SecurityProtocol.GSI);
+//        scpDataMovement.setSshPort(22);
+//        client.addSCPDataMovementDetails(host.getComputeResourceId(), 1, scpDataMovement);
+//
+//        ApplicationModule module = DocumentCreatorUtils.createApplicationModule("echo", "1.4", null);
+//        module.setAppModuleId(client.registerApplicationModule(module));
+//
+//        ApplicationInterfaceDescription application = new ApplicationInterfaceDescription();
+////    	application.setIsEmpty(false);
+//        application.setApplicationName("SimpleEcho4");
+//        application.addToApplicationModules(module.getAppModuleId());
+//        application.addToApplicationInputs(DocumentCreatorUtils.createAppInput("echo_input", "echo_input", null, null, DataType.STRING));
+//        application.addToApplicationOutputs(DocumentCreatorUtils.createAppOutput("echo_output", null, DataType.STRING));
+//        application.setApplicationInterfaceId(client.registerApplicationInterface(application));
+//
+//        ApplicationDeploymentDescription deployment = DocumentCreatorUtils.createApplicationDeployment(host.getComputeResourceId(), module.getAppModuleId(), "/bin/echo", ApplicationParallelismType.SERIAL, "EchoLocal");
+//        deployment.setAppDeploymentId(client.registerApplicationDeployment(deployment));
+//
+//        client.addGatewayComputeResourcePreference(getGatewayResourceProfile().getGatewayID(), host.getComputeResourceId(), DocumentCreatorUtils.createComputeResourcePreference(host.getComputeResourceId(), "/home1/01437/ogce", "TG-STA110014S", false, null, null, null));
+//        return host.getComputeResourceId() + "," + application.getApplicationInterfaceId();
+//    }
+//
+////	public void createEchoHostDocs() {
+////		String serviceName = "Echo";
+////		ServiceDescription serviceDescription = new ServiceDescription();
+////		List<InputParameterType> inputParameters = new ArrayList<InputParameterType>();
+////		List<OutputParameterType> outputParameters = new ArrayList<OutputParameterType>();
+////		serviceDescription.getType().setName(serviceName);
+////		serviceDescription.getType().setDescription("Echo service");
+////		// Creating input parameters
+////		InputParameterType parameter = InputParameterType.Factory.newInstance();
+////		parameter.setParameterName("echo_input");
+////		parameter.setParameterDescription("echo input");
+////		ParameterType parameterType = parameter.addNewParameterType();
+////		parameterType.setType(DataType.STRING);
+////		parameterType.setName("String");
+////		inputParameters.add(parameter);
+////
+////		// Creating output parameters
+////		OutputParameterType outputParameter = OutputParameterType.Factory.newInstance();
+////		outputParameter.setParameterName("echo_output");
+////		outputParameter.setParameterDescription("Echo output");
+////		ParameterType outputParaType = outputParameter.addNewParameterType();
+////		outputParaType.setType(DataType.STRING);
+////		outputParaType.setName("String");
+////		outputParameters.add(outputParameter);
+////
+////		// Setting input and output parameters to serviceDescriptor
+////		serviceDescription.getType().setInputParametersArray(inputParameters.toArray(new InputParameterType[] {}));
+////		serviceDescription.getType().setOutputParametersArray(outputParameters.toArray(new OutputParameterType[] {}));
+////
+////		try {
+////			airavataAPI.getApplicationManager().saveServiceDescription(serviceDescription);
+////		} catch (AiravataAPIInvocationException e) {
+////			e.printStackTrace(); // To change body of catch statement use File |
+////									// Settings | File Templates.
+////		}
+////		// Localhost
+////		ApplicationDescription applicationDeploymentDescription = new ApplicationDescription();
+////		ApplicationDeploymentDescriptionType applicationDeploymentDescriptionType = applicationDeploymentDescription.getType();
+////		applicationDeploymentDescriptionType.addNewApplicationName().setStringValue(serviceName);
+////		applicationDeploymentDescriptionType.setExecutableLocation("/bin/echo");
+////		applicationDeploymentDescriptionType.setScratchWorkingDirectory("/tmp");
+////
+////		try {
+////			airavataAPI.getApplicationManager().saveApplicationDescription(serviceName, "localhost", applicationDeploymentDescription);
+////		} catch (AiravataAPIInvocationException e) {
+////			e.printStackTrace(); // To change body of catch statement use File |
+////									// Settings | File Templates.
+////		}
+////		// Stampede
+////		/*
+////		 * Application descriptor creation and saving
+////		 */
+////		ApplicationDescription appDesc1 = new ApplicationDescription(HpcApplicationDeploymentType.type);
+////		HpcApplicationDeploymentType app1 = (HpcApplicationDeploymentType) appDesc1.getType();
+////		ApplicationDeploymentDescriptionType.ApplicationName name = ApplicationDeploymentDescriptionType.ApplicationName.Factory.newInstance();
+////		name.setStringValue(serviceName);
+////		app1.setApplicationName(name);
+////		ProjectAccountType projectAccountType = app1.addNewProjectAccount();
+////		projectAccountType.setProjectAccountNumber("TG-STA110014S");
+////
+////		QueueType queueType = app1.addNewQueue();
+////		queueType.setQueueName("normal");
+////
+////		app1.setCpuCount(1);
+////		app1.setJobType(JobTypeType.SERIAL);
+////		app1.setNodeCount(1);
+////		app1.setProcessorsPerNode(1);
+////		app1.setMaxWallTime(10);
+////		/*
+////		 * Use bat file if it is compiled on Windows
+////		 */
+////		app1.setExecutableLocation("/bin/echo");
+////
+////		/*
+////		 * Default tmp location
+////		 */
+////		String tempDir = "/home1/01437/ogce";
+////
+////		app1.setScratchWorkingDirectory(tempDir);
+////		app1.setInstalledParentPath("/usr/bin/");
+////
+////		try {
+////			airavataAPI.getApplicationManager().saveApplicationDescription(serviceName, stampedeHostAddress, appDesc1);
+////		} catch (AiravataAPIInvocationException e) {
+////			e.printStackTrace(); // To change body of catch statement use File |
+////									// Settings | File Templates.
+////		}
+////		// Trestles
+////		/*
+////		 * Application descriptor creation and saving
+////		 */
+////		ApplicationDescription appDesc2 = new ApplicationDescription(HpcApplicationDeploymentType.type);
+////		HpcApplicationDeploymentType app2 = (HpcApplicationDeploymentType) appDesc2.getType();
+////		ApplicationDeploymentDescriptionType.ApplicationName name2 = ApplicationDeploymentDescriptionType.ApplicationName.Factory.newInstance();
+////		name2.setStringValue(serviceName);
+////		app2.setApplicationName(name);
+////		ProjectAccountType projectAccountType2 = app2.addNewProjectAccount();
+////		projectAccountType2.setProjectAccountNumber("sds128");
+////
+////		QueueType queueType2 = app2.addNewQueue();
+////		queueType2.setQueueName("normal");
+////
+////		app2.setCpuCount(1);
+////		app2.setJobType(JobTypeType.SERIAL);
+////		app2.setNodeCount(1);
+////		app2.setProcessorsPerNode(1);
+////		app2.setMaxWallTime(10);
+////		/*
+////		 * Use bat file if it is compiled on Windows
+////		 */
+////		app2.setExecutableLocation("/bin/echo");
+////
+////		/*
+////		 * Default tmp location
+////		 */
+////		String tempDir2 = "/home/ogce/scratch";
+////
+////		app2.setScratchWorkingDirectory(tempDir2);
+////		app2.setInstalledParentPath("/opt/torque/bin/");
+////
+////		try {
+////			airavataAPI.getApplicationManager().saveApplicationDescription(serviceName, trestleshpcHostAddress, appDesc2);
+////		} catch (AiravataAPIInvocationException e) {
+////			e.printStackTrace(); // To change body of catch statement use File |
+////									// Settings | File Templates.
+////		}
+////		// Lonestar
+////		/*
+////		 * Application descriptor creation and saving
+////		 */
+////		ApplicationDescription appDesc3 = new ApplicationDescription(HpcApplicationDeploymentType.type);
+////		HpcApplicationDeploymentType app3 = (HpcApplicationDeploymentType) appDesc3.getType();
+////		ApplicationDeploymentDescriptionType.ApplicationName name3 = ApplicationDeploymentDescriptionType.ApplicationName.Factory.newInstance();
+////		name3.setStringValue(serviceName);
+////		app3.setApplicationName(name);
+////		ProjectAccountType projectAccountType3 = app3.addNewProjectAccount();
+////		projectAccountType3.setProjectAccountNumber("TG-STA110014S");
+////
+////		QueueType queueType3 = app3.addNewQueue();
+////		queueType3.setQueueName("normal");
+////
+////		app3.setCpuCount(1);
+////		app3.setJobType(JobTypeType.SERIAL);
+////		app3.setNodeCount(1);
+////		app3.setProcessorsPerNode(1);
+////		app3.setMaxWallTime(10);
+////		/*
+////		 * Use bat file if it is compiled on Windows
+////		 */
+////		app3.setExecutableLocation("/bin/echo");
+////
+////		/*
+////		 * Default tmp location
+////		 */
+////		String tempDir3 = "/home1/01437/ogce";
+////
+////		app3.setScratchWorkingDirectory(tempDir3);
+////		app3.setInstalledParentPath("/opt/sge6.2/bin/lx24-amd64/");
+////
+////		try {
+////			airavataAPI.getApplicationManager().saveApplicationDescription(serviceName, lonestarHostAddress, appDesc3);
+////		} catch (AiravataAPIInvocationException e) {
+////			e.printStackTrace(); // To change body of catch statement use File |
+////									// Settings | File Templates.
+////		}
+////
+////	}
+//
+//    public String createBigRedDocs() throws InvalidRequestException, AiravataClientException, AiravataSystemException, TException, AppCatalogException {
+//        ComputeResourceDescription host = DocumentCreatorUtils.createComputeResourceDescription("bigred2", null, null);
+//        host.addToHostAliases(bigRed2HostAddress);
+//        host.addToIpAddresses(bigRed2HostAddress);
+//        host.setComputeResourceId(client.registerComputeResource(host));
+//
+//
+//        Map<JobManagerCommand, String> commands = new HashMap<JobManagerCommand, String>();
+//        commands.put(JobManagerCommand.SUBMISSION, "aprun -n");
+//        ResourceJobManager resourceJobManager = DocumentCreatorUtils.createResourceJobManager(ResourceJobManagerType.UGE, "/opt/torque/torque-4.2.3.1/bin/", commands, null);
+//        SSHJobSubmission sshJobSubmission = new SSHJobSubmission();
+//        sshJobSubmission.setResourceJobManager(resourceJobManager);
+//        sshJobSubmission.setSecurityProtocol(SecurityProtocol.SSH_KEYS);
+//        sshJobSubmission.setSshPort(22);
+//
+//        client.addSSHJobSubmissionDetails(host.getComputeResourceId(), 1, sshJobSubmission);
+//
+//        SCPDataMovement scpDataMovement = new SCPDataMovement();
+//        scpDataMovement.setSecurityProtocol(SecurityProtocol.SSH_KEYS);
+//        scpDataMovement.setSshPort(22);
+//        client.addSCPDataMovementDetails(host.getComputeResourceId(), 1, scpDataMovement);
+//
+//        ApplicationModule module = DocumentCreatorUtils.createApplicationModule("echo", "1.5", null);
+//        module.setAppModuleId(client.registerApplicationModule(module));
+//
+//        ApplicationInterfaceDescription application = new ApplicationInterfaceDescription();
+//        application.setApplicationName("SimpleEchoBR");
+//        application.addToApplicationModules(module.getAppModuleId());
+//        application.addToApplicationInputs(DocumentCreatorUtils.createAppInput("echo_input", "echo_input", null, null, DataType.STRING));
+//        application.addToApplicationOutputs(DocumentCreatorUtils.createAppOutput("echo_output", null, DataType.STRING));
+//        application.setApplicationInterfaceId(client.registerApplicationInterface(application));
+//
+//        ApplicationDeploymentDescription deployment = DocumentCreatorUtils.createApplicationDeployment(host.getComputeResourceId(), module.getAppModuleId(), "/N/u/lginnali/BigRed2/myjob/test.sh", ApplicationParallelismType.SERIAL, "EchoLocal");
+//        deployment.setAppDeploymentId(client.registerApplicationDeployment(deployment));
+//
+//        String date = (new Date()).toString();
+//        date = date.replaceAll(" ", "_");
+//        date = date.replaceAll(":", "_");
+//        String tempDir = "/N/u/lginnali/BigRed2/myjob";
+//        tempDir = tempDir + File.separator + "SimpleEcho" + "_" + date + "_" + UUID.randomUUID();
+//
+//        client.addGatewayComputeResourcePreference(getGatewayResourceProfile().getGatewayID(), host.getComputeResourceId(), DocumentCreatorUtils.createComputeResourcePreference(host.getComputeResourceId(), tempDir, "TG-STA110014S", false, null, null, null));
+//
+//
+//        return host.getComputeResourceId() + "," + application.getApplicationInterfaceId();
+//    }
+//
+//    public String createBigRedAmberDocs() throws InvalidRequestException, AiravataClientException, AiravataSystemException, TException, AppCatalogException {
+//        ComputeResourceDescription host = DocumentCreatorUtils.createComputeResourceDescription("bigred2", null, null);
+//        host.addToHostAliases(bigRed2HostAddress);
+//        host.addToIpAddresses(bigRed2HostAddress);
+//        host.setComputeResourceId(client.registerComputeResource(host));
+//
+//
+//        Map<JobManagerCommand, String> commands = new HashMap<JobManagerCommand, String>();
+//        commands.put(JobManagerCommand.SUBMISSION, "aprun -n 4");
+//        ResourceJobManager resourceJobManager = DocumentCreatorUtils.createResourceJobManager(ResourceJobManagerType.UGE, "/opt/torque/torque-4.2.3.1/bin/", commands, null);
+//        SSHJobSubmission sshJobSubmission = new SSHJobSubmission();
+//        sshJobSubmission.setResourceJobManager(resourceJobManager);
+//        sshJobSubmission.setSecurityProtocol(SecurityProtocol.SSH_KEYS);
+//        sshJobSubmission.setSshPort(22);
+//
+//        client.addSSHJobSubmissionDetails(host.getComputeResourceId(), 1, sshJobSubmission);
+//
+//        SCPDataMovement scpDataMovement = new SCPDataMovement();
+//        scpDataMovement.setSecurityProtocol(SecurityProtocol.SSH_KEYS);
+//        scpDataMovement.setSshPort(22);
+//        client.addSCPDataMovementDetails(host.getComputeResourceId(), 1, scpDataMovement);
+//
+//
+//        ApplicationModule amodule = DocumentCreatorUtils.createApplicationModule("Amber", "12.0", null);
+//        amodule.setAppModuleId(client.registerApplicationModule(amodule));
+//
+//
+//        ApplicationInterfaceDescription application = new ApplicationInterfaceDescription();
+//        application.setApplicationName("AmberBR2");
+//        application.addToApplicationModules(amodule.getAppModuleId());
+//        application.addToApplicationInputs(DocumentCreatorUtils.createAppInput("AMBER_HEAT_RST", "AMBER_HEAT_RST", null, null, DataType.URI));
+//        application.addToApplicationInputs(DocumentCreatorUtils.createAppInput("AMBER_PROD_IN", "AMBER_PROD_IN", null, null, DataType.URI));
+//        application.addToApplicationInputs(DocumentCreatorUtils.createAppInput("AMBER_PRMTOP", "AMBER_PRMTOP", null, null, DataType.URI));
+//        application.addToApplicationOutputs(DocumentCreatorUtils.createAppOutput("AMBER_Prod.info", null, DataType.URI));
+//        application.addToApplicationOutputs(DocumentCreatorUtils.createAppOutput("AMBER_Prod.mdcrd", null, DataType.URI));
+//        application.addToApplicationOutputs(DocumentCreatorUtils.createAppOutput("AMBER_Prod.out", null, DataType.URI));
+//        application.addToApplicationOutputs(DocumentCreatorUtils.createAppOutput("AMBER_Prod.rst", null, DataType.URI));
+//        application.setApplicationInterfaceId(client.registerApplicationInterface(application));
+//
+//        ApplicationDeploymentDescription deployment = DocumentCreatorUtils.createApplicationDeployment(host.getComputeResourceId(), amodule.getAppModuleId(), "/N/u/cgateway/BigRed2/sandbox/amber_wrapper.sh", ApplicationParallelismType.SERIAL, "AmberBR2");
+//        deployment.setAppDeploymentId(client.registerApplicationDeployment(deployment));
+//
+//
+//        String date = (new Date()).toString();
+//        date = date.replaceAll(" ", "_");
+//        date = date.replaceAll(":", "_");
+//        String tempDir = "/N/u/cgateway/BigRed2/sandbox/jobs";
+//        tempDir = tempDir + File.separator +
+//                "Amber";
+//
+//        client.addGatewayComputeResourcePreference(getGatewayResourceProfile().getGatewayID(), host.getComputeResourceId(), DocumentCreatorUtils.createComputeResourcePreference(host.getComputeResourceId(), tempDir, null, false, null, null, null));
+//
+//
+//        return host.getComputeResourceId() + "," + application.getApplicationInterfaceId();
+//    }
+//
+//    public String createStampedeAmberDocs() throws InvalidRequestException, AiravataClientException, AiravataSystemException, TException, AppCatalogException {
+//        ComputeResourceDescription host = DocumentCreatorUtils.createComputeResourceDescription(stampedeHostAddress, null, null);
+//        host.addToHostAliases(stampedeHostAddress);
+//        host.addToIpAddresses(stampedeHostAddress);
+//        host.setComputeResourceId(client.registerComputeResource(host));
+//
+//        ResourceJobManager resourceJobManager = DocumentCreatorUtils.createResourceJobManager(ResourceJobManagerType.SLURM, "/usr/bin/", null, "push");
+//        SSHJobSubmission sshJobSubmission = new SSHJobSubmission();
+//        sshJobSubmission.setResourceJobManager(resourceJobManager);
+//        sshJobSubmission.setSecurityProtocol(SecurityProtocol.GSI);
+//        sshJobSubmission.setSshPort(2222);
+//        client.addSSHJobSubmissionDetails(host.getComputeResourceId(), 1, sshJobSubmission);
+//
+//        SCPDataMovement scpDataMovement = new SCPDataMovement();
+//        scpDataMovement.setSecurityProtocol(SecurityProtocol.GSI);
+//        scpDataMovement.setSshPort(22);
+//        client.addSCPDataMovementDetails(host.getComputeResourceId(), 1, scpDataMovement);
+//        ApplicationModule amodule = DocumentCreatorUtils.createApplicationModule("Amber", "12.0", null);
+//        amodule.setAppModuleId(client.registerApplicationModule(amodule));
+//
+//
+//        ApplicationInterfaceDescription application = new ApplicationInterfaceDescription();
+//        application.setApplicationName("AmberBR2");
+//        application.addToApplicationModules(amodule.getAppModuleId());
+//        application.addToApplicationInputs(DocumentCreatorUtils.createAppInput("AMBER_HEAT_RST", "AMBER_HEAT_RST", null, null, DataType.URI));
+//        application.addToApplicationInputs(DocumentCreatorUtils.createAppInput("AMBER_PROD_IN", "AMBER_PROD_IN", null, null, DataType.URI));
+//        application.addToApplicationInputs(DocumentCreatorUtils.createAppInput("AMBER_PRMTOP", "AMBER_PRMTOP", null, null, DataType.URI));
+//        application.addToApplicationOutputs(DocumentCreatorUtils.createAppOutput("AMBER_Prod.info", null, DataType.URI));
+//        application.addToApplicationOutputs(DocumentCreatorUtils.createAppOutput("AMBER_Prod.mdcrd", null, DataType.URI));
+//        application.addToApplicationOutputs(DocumentCreatorUtils.createAppOutput("AMBER_Prod.out", null, DataType.URI));
+//        application.addToApplicationOutputs(DocumentCreatorUtils.createAppOutput("AMBER_Prod.rst", null, DataType.URI));
+//        application.setApplicationInterfaceId(client.registerApplicationInterface(application));
+//
+//        ApplicationDeploymentDescription deployment = DocumentCreatorUtils.createApplicationDeployment(host.getComputeResourceId(), amodule.getAppModuleId(), "/home1/01437/ogce/production/app_wrappers/amber_wrapper.sh", ApplicationParallelismType.SERIAL, "AmberStampede");
+//        deployment.setAppDeploymentId(client.registerApplicationDeployment(deployment));
+//
+//        client.addGatewayComputeResourcePreference(getGatewayResourceProfile().getGatewayID(), host.getComputeResourceId(), DocumentCreatorUtils.createComputeResourcePreference(host.getComputeResourceId(), "/home1/01437/ogce", "TG-STA110014S", false, null, null, null));
+//
+//
+//        return host.getComputeResourceId() + "," + application.getApplicationInterfaceId();
+//
+//    }
+//
+//    public String createTrestlesAmberDocs() throws InvalidRequestException, AiravataClientException, AiravataSystemException, TException, AppCatalogException {
+//        ComputeResourceDescription host = DocumentCreatorUtils.createComputeResourceDescription(trestleshpcHostAddress, null, null);
+//        host.addToIpAddresses(trestleshpcHostAddress);
+//        host.addToHostAliases(trestleshpcHostAddress);
+//        host.setComputeResourceId(client.registerComputeResource(host));
+//
+//        SSHJobSubmission sshJobSubmission = new SSHJobSubmission();
+//        ResourceJobManager resourceJobManager = DocumentCreatorUtils.createResourceJobManager(ResourceJobManagerType.PBS, "/opt/torque/bin/", null, null);
+//        sshJobSubmission.setResourceJobManager(resourceJobManager);
+//        sshJobSubmission.setSecurityProtocol(SecurityProtocol.GSI);
+//        sshJobSubmission.setSshPort(22);
+//        client.addSSHJobSubmissionDetails(host.getComputeResourceId(), 1, sshJobSubmission);
+//
+//        SCPDataMovement scpDataMovement = new SCPDataMovement();
+//        scpDataMovement.setSecurityProtocol(SecurityProtocol.GSI);
+//        scpDataMovement.setSshPort(22);
+//        client.addSCPDataMovementDetails(host.getComputeResourceId(), 1, scpDataMovement);
+//
+//        ApplicationModule amodule = DocumentCreatorUtils.createApplicationModule("Amber", "12.0", null);
+//        amodule.setAppModuleId(client.registerApplicationModule(amodule));
+//
+//
+//        ApplicationInterfaceDescription application = new ApplicationInterfaceDescription();
+//        application.setApplicationName("AmberTrestles");
+//        application.addToApplicationModules(amodule.getAppModuleId());
+//        application.addToApplicationInputs(DocumentCreatorUtils.createAppInput("AMBER_HEAT_RST", "AMBER_HEAT_RST", null, null, DataType.URI));
+//        application.addToApplicationInputs(DocumentCreatorUtils.createAppInput("AMBER_PROD_IN", "AMBER_PROD_IN", null, null, DataType.URI));
+//        application.addToApplicationInputs(DocumentCreatorUtils.createAppInput("AMBER_PRMTOP", "AMBER_PRMTOP", null, null, DataType.URI));
+//        application.addToApplicationOutputs(DocumentCreatorUtils.createAppOutput("AMBER_Prod.info", null, DataType.URI));
+//        application.addToApplicationOutputs(DocumentCreatorUtils.createAppOutput("AMBER_Prod.mdcrd", null, DataType.URI));
+//        application.addToApplicationOutputs(DocumentCreatorUtils.createAppOutput("AMBER_Prod.out", null, DataType.URI));
+//        application.addToApplicationOutputs(DocumentCreatorUtils.createAppOutput("AMBER_Prod.rst", null, DataType.URI));
+//        application.setApplicationInterfaceId(client.registerApplicationInterface(application));
+//
+//        ApplicationDeploymentDescription deployment = DocumentCreatorUtils.createApplicationDeployment(host.getComputeResourceId(), amodule.getAppModuleId(), "/home/ogce/production/app_wrappers/amber_wrapper.sh", ApplicationParallelismType.SERIAL, "AmberStampede");
+//        deployment.setAppDeploymentId(client.registerApplicationDeployment(deployment));
+//
+//        client.addGatewayComputeResourcePreference(getGatewayResourceProfile().getGatewayID(), host.getComputeResourceId(), DocumentCreatorUtils.createComputeResourcePreference(host.getComputeResourceId(), "/oasis/scratch/trestles/ogce/temp_project/", "sds128", false, null, null, null));
+//
+//
+//        return host.getComputeResourceId() + "," + application.getApplicationInterfaceId();
+//
+//    }
+//
+//
+//}
+//

http://git-wip-us.apache.org/repos/asf/airavata/blob/2654424b/modules/airavata-client/src/main/java/org/apache/airavata/client/tools/DocumentCreatorUtils.java
----------------------------------------------------------------------
diff --git a/modules/airavata-client/src/main/java/org/apache/airavata/client/tools/DocumentCreatorUtils.java b/modules/airavata-client/src/main/java/org/apache/airavata/client/tools/DocumentCreatorUtils.java
new file mode 100644
index 0000000..d27d8cf
--- /dev/null
+++ b/modules/airavata-client/src/main/java/org/apache/airavata/client/tools/DocumentCreatorUtils.java
@@ -0,0 +1,165 @@
+/*
+ *
+ * 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.client.tools;
+
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+
+import org.airavata.appcatalog.cpi.AppCatalogException;
+import org.apache.airavata.model.appcatalog.appdeployment.ApplicationDeploymentDescription;
+import org.apache.airavata.model.appcatalog.appdeployment.ApplicationModule;
+import org.apache.airavata.model.appcatalog.appdeployment.ApplicationParallelismType;
+import org.apache.airavata.model.appcatalog.appinterface.InputDataObjectType;
+import org.apache.airavata.model.appcatalog.appinterface.OutputDataObjectType;
+import org.apache.airavata.model.appcatalog.computeresource.ComputeResourceDescription;
+import org.apache.airavata.model.appcatalog.computeresource.DataMovementInterface;
+import org.apache.airavata.model.appcatalog.computeresource.DataMovementProtocol;
+import org.apache.airavata.model.appcatalog.computeresource.JobManagerCommand;
+import org.apache.airavata.model.appcatalog.computeresource.JobSubmissionInterface;
+import org.apache.airavata.model.appcatalog.computeresource.JobSubmissionProtocol;
+import org.apache.airavata.model.appcatalog.computeresource.ResourceJobManager;
+import org.apache.airavata.model.appcatalog.computeresource.ResourceJobManagerType;
+import org.apache.airavata.model.appcatalog.gatewayprofile.ComputeResourcePreference;
+
+/**
+ * This class has been moved to integration-tests module, use that instead of this
+ */
+@Deprecated
+public class DocumentCreatorUtils {
+
+	public static ComputeResourcePreference createComputeResourcePreference(String computeResourceId, String scratchLocation,
+			String allocationProjectNumber, boolean overridebyAiravata,
+			String preferredBatchQueue, String preferredJobSubmissionProtocol,
+			String preferredDataMovementProtocol) throws AppCatalogException {
+		ComputeResourcePreference computeResourcePreference = new ComputeResourcePreference();
+		computeResourcePreference.setComputeResourceId(computeResourceId);
+		computeResourcePreference.setOverridebyAiravata(overridebyAiravata);
+		computeResourcePreference.setAllocationProjectNumber(allocationProjectNumber);
+		computeResourcePreference.setPreferredBatchQueue(preferredBatchQueue);
+		computeResourcePreference.setPreferredDataMovementProtocol(DataMovementProtocol.valueOf(preferredDataMovementProtocol));
+		computeResourcePreference.setPreferredJobSubmissionProtocol(JobSubmissionProtocol.valueOf(preferredJobSubmissionProtocol));
+		computeResourcePreference.setScratchLocation(scratchLocation);
+		return computeResourcePreference;
+	}
+
+	public static ApplicationDeploymentDescription createApplicationDeployment(
+			String computeResourceId, String appModuleId,
+			String executablePath, ApplicationParallelismType parallelism, String appDeploymentDescription) {
+		ApplicationDeploymentDescription deployment = new ApplicationDeploymentDescription();
+//		deployment.setIsEmpty(false);
+		deployment.setAppDeploymentDescription(appDeploymentDescription);
+		deployment.setAppModuleId(appModuleId);
+		deployment.setComputeHostId(computeResourceId);
+		deployment.setExecutablePath(executablePath);
+		deployment.setParallelism(parallelism);
+		return deployment;
+	}
+
+	public static ApplicationModule createApplicationModule(String appModuleName,
+			String appModuleVersion, String appModuleDescription) {
+		ApplicationModule module = new ApplicationModule();
+		module.setAppModuleDescription(appModuleDescription);
+		module.setAppModuleName(appModuleName);
+		module.setAppModuleVersion(appModuleVersion);
+		return module;
+	}
+
+	public static DataMovementInterface createDataMovementInterface(
+			String dataMovementInterfaceId,
+			DataMovementProtocol dataMovementProtocolType, int priorityOrder) {
+		DataMovementInterface dataMovementInterface = new DataMovementInterface();
+		dataMovementInterface.setDataMovementInterfaceId(dataMovementInterfaceId);
+		dataMovementInterface.setDataMovementProtocol(dataMovementProtocolType);
+		dataMovementInterface.setPriorityOrder(priorityOrder);
+		return dataMovementInterface;
+	}
+
+	public static JobSubmissionInterface createJobSubmissionInterface(
+			String jobSubmissionInterfaceId,
+			JobSubmissionProtocol jobSubmissionProtocolType, int priorityOrder) {
+		JobSubmissionInterface jobSubmissionInterface = new JobSubmissionInterface();
+		jobSubmissionInterface.setJobSubmissionInterfaceId(jobSubmissionInterfaceId);
+		jobSubmissionInterface.setJobSubmissionProtocol(jobSubmissionProtocolType);
+		jobSubmissionInterface.setPriorityOrder(priorityOrder);
+		return jobSubmissionInterface;
+	}
+
+	public static ComputeResourceDescription createComputeResourceDescription(
+			String hostName, List<String> hostAliases, List<String> ipAddresses) {
+		ComputeResourceDescription host = new ComputeResourceDescription();
+		host.setHostName(hostName);
+		host.setIpAddresses(ipAddresses);
+		host.setHostAliases(hostAliases);
+		return host;
+	}
+
+	public static ResourceJobManager createResourceJobManager(
+			ResourceJobManagerType resourceJobManagerType,
+			String jobManagerBinPath,
+			Map<JobManagerCommand, String> jobManagerCommands,
+			String pushMonitoringEndpoint) {
+		ResourceJobManager resourceJobManager=new ResourceJobManager();;
+		resourceJobManager.setResourceJobManagerType(resourceJobManagerType);
+		resourceJobManager.setJobManagerBinPath(jobManagerBinPath);
+		resourceJobManager.setJobManagerCommands(jobManagerCommands);
+		resourceJobManager.setPushMonitoringEndpoint(pushMonitoringEndpoint);
+		return resourceJobManager;
+	}
+
+	public static InputDataObjectType createAppInput (String inputName, String argumentName, String description, String value, org.apache.airavata.model.appcatalog.appinterface.DataType type ){
+        InputDataObjectType input = new InputDataObjectType();
+//        input.setIsEmpty(false);
+        if (inputName!=null) {
+			input.setName(inputName);
+		}
+		if (value!=null) {
+			input.setValue(value);
+		}
+		if (type!=null) {
+			input.setType(type);
+		}
+		if (argumentName!=null) {
+			input.setApplicationArgument(argumentName);
+		}
+		if (description!=null) {
+			input.setUserFriendlyDescription(description);
+		}
+		return input;
+    }
+
+    public static OutputDataObjectType createAppOutput (String inputName, String value, org.apache.airavata.model.appcatalog.appinterface.DataType type ){
+        OutputDataObjectType outputDataObjectType = new OutputDataObjectType();
+//        outputDataObjectType.setIsEmpty(false);
+        if (inputName!=null) {
+			outputDataObjectType.setName(inputName);
+		}
+		if (value!=null) {
+			outputDataObjectType.setValue(value);
+		}
+		if (type!=null) {
+			outputDataObjectType.setType(type);
+		}
+		return outputDataObjectType;
+    }
+    
+}

http://git-wip-us.apache.org/repos/asf/airavata/blob/2654424b/modules/airavata-client/src/main/java/org/apache/airavata/client/tools/NameValuePairType.java
----------------------------------------------------------------------
diff --git a/modules/airavata-client/src/main/java/org/apache/airavata/client/tools/NameValuePairType.java b/modules/airavata-client/src/main/java/org/apache/airavata/client/tools/NameValuePairType.java
new file mode 100644
index 0000000..5bf5cb5
--- /dev/null
+++ b/modules/airavata-client/src/main/java/org/apache/airavata/client/tools/NameValuePairType.java
@@ -0,0 +1,48 @@
+/*
+ *
+ * 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.client.tools;
+
+public class NameValuePairType {
+	
+	private String name;
+	private String value;
+	private String description;
+	public String getName() {
+		return name;
+	}
+	public void setName(String name) {
+		this.name = name;
+	}
+	public String getValue() {
+		return value;
+	}
+	public void setValue(String value) {
+		this.value = value;
+	}
+	public String getDescription() {
+		return description;
+	}
+	public void setDescription(String description) {
+		this.description = description;
+	}
+
+}

http://git-wip-us.apache.org/repos/asf/airavata/blob/2654424b/modules/airavata-client/src/main/java/org/apache/airavata/client/tools/PeriodicExecutorThread.java
----------------------------------------------------------------------
diff --git a/modules/airavata-client/src/main/java/org/apache/airavata/client/tools/PeriodicExecutorThread.java b/modules/airavata-client/src/main/java/org/apache/airavata/client/tools/PeriodicExecutorThread.java
new file mode 100644
index 0000000..6a1a4ed
--- /dev/null
+++ b/modules/airavata-client/src/main/java/org/apache/airavata/client/tools/PeriodicExecutorThread.java
@@ -0,0 +1,61 @@
+/*
+ *
+ * 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.client.tools;
+
+import org.apache.airavata.client.api.AiravataAPI;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+public abstract class PeriodicExecutorThread extends Thread {
+
+    private AiravataAPI airavataAPI;
+    public static final int URL_UPDATE_INTERVAL = 1000 * 60 * 60 * 3;
+    public static final int JCR_AVAIALABILITY_WAIT_INTERVAL = 1000 * 10;
+
+    private static final Logger log = LoggerFactory.getLogger(PeriodicExecutorThread.class);
+
+    public PeriodicExecutorThread(AiravataAPI airavataAPI) {
+        this.airavataAPI = airavataAPI;
+    }
+
+    public void run() {
+        while (true) {
+            try {
+                updateRegistry(airavataAPI);
+                Thread.sleep(URL_UPDATE_INTERVAL);
+            } catch (InterruptedException e) {
+                break;
+            } catch (Exception e) {
+                try {
+                    Thread.sleep(JCR_AVAIALABILITY_WAIT_INTERVAL);
+                } catch (InterruptedException e1) {
+                    e1.printStackTrace();  //To change body of catch statement use File | Settings | File Templates.
+                    return;
+                }
+                log.error(e.getMessage());
+                log.error("Workflow Interpreter Service URL update thread is interrupted");
+            }
+        }
+    }
+
+    protected abstract void updateRegistry(AiravataAPI airavataAPI) throws Exception;
+}

http://git-wip-us.apache.org/repos/asf/airavata/blob/2654424b/modules/airavata-client/src/main/java/org/apache/airavata/client/tools/UltrascanDocumentCreator.java
----------------------------------------------------------------------
diff --git a/modules/airavata-client/src/main/java/org/apache/airavata/client/tools/UltrascanDocumentCreator.java b/modules/airavata-client/src/main/java/org/apache/airavata/client/tools/UltrascanDocumentCreator.java
new file mode 100644
index 0000000..f4fceeb
--- /dev/null
+++ b/modules/airavata-client/src/main/java/org/apache/airavata/client/tools/UltrascanDocumentCreator.java
@@ -0,0 +1,444 @@
+///**
+// * 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.client.tools;
+//
+//import java.io.File;
+//import java.util.ArrayList;
+//import java.util.Date;
+//import java.util.List;
+//import java.util.UUID;
+//
+//import org.apache.airavata.client.api.AiravataAPI;
+//import org.apache.airavata.client.api.exception.AiravataAPIInvocationException;
+//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.schemas.gfac.ApplicationDeploymentDescriptionType;
+//import org.apache.airavata.schemas.gfac.DataType;
+//import org.apache.airavata.schemas.gfac.GsisshHostType;
+//import org.apache.airavata.schemas.gfac.HpcApplicationDeploymentType;
+//import org.apache.airavata.schemas.gfac.InputParameterType;
+//import org.apache.airavata.schemas.gfac.JobTypeType;
+//import org.apache.airavata.schemas.gfac.OutputParameterType;
+//import org.apache.airavata.schemas.gfac.ParameterType;
+//import org.apache.airavata.schemas.gfac.ProjectAccountType;
+//import org.apache.airavata.schemas.gfac.QueueType;
+//
+//public class UltrascanDocumentCreator {
+//
+//	private AiravataAPI airavataAPI = null;
+//    private String hpcHostAddress = "trestles.sdsc.edu";
+//    private String gsiSshHostNameTrestles = "gsissh-trestles";
+//    private String gsiSshHostNameStampede = "gsissh-stampede";
+//
+//
+//    public UltrascanDocumentCreator(AiravataAPI airavataAPI) {
+//        this.airavataAPI = airavataAPI;
+//    }
+//
+//    public void createEchoPBSDocsforTestles() {
+//        HostDescription host = new HostDescription(GsisshHostType.type);
+//        host.getType().setHostAddress(hpcHostAddress);
+//        host.getType().setHostName(gsiSshHostNameTrestles);
+//        ((GsisshHostType) host.getType()).setPort(22);
+//        ((GsisshHostType) host.getType()).setInstalledPath("/opt/torque/bin/");
+//
+//        try {
+//            airavataAPI.getApplicationManager().saveHostDescription(host);
+//        } catch (AiravataAPIInvocationException e) {
+//            e.printStackTrace();  //To change body of catch statement use File | Settings | File Templates.
+//        }
+//        /*
+//        * Service Description creation and saving
+//        */
+//        String serviceName = "US3EchoTrestles";
+//        ServiceDescription serv = new ServiceDescription();
+//        serv.getType().setName(serviceName);
+//
+//        List<InputParameterType> inputList = new ArrayList<InputParameterType>();
+//        List<OutputParameterType> outputList = new ArrayList<OutputParameterType>();
+//
+//
+//        InputParameterType input = InputParameterType.Factory.newInstance();
+//        input.setParameterName("echo_input");
+//        ParameterType parameterType = input.addNewParameterType();
+//        parameterType.setType(DataType.STRING);
+//        parameterType.setName("String");
+//
+//        OutputParameterType output = OutputParameterType.Factory.newInstance();
+//        output.setParameterName("echo_output");
+//        ParameterType parameterType1 = output.addNewParameterType();
+//        parameterType1.setType(DataType.STRING);
+//        parameterType1.setName("String");
+//
+//        inputList.add(input);
+//        outputList.add(output);
+//
+//        InputParameterType[] inputParamList = inputList.toArray(new InputParameterType[inputList.size()]);
+//        OutputParameterType[] outputParamList = outputList.toArray(new OutputParameterType[outputList.size()]);
+//
+//        serv.getType().setInputParametersArray(inputParamList);
+//        serv.getType().setOutputParametersArray(outputParamList);
+//        try {
+//            airavataAPI.getApplicationManager().saveServiceDescription(serv);
+//        } catch (AiravataAPIInvocationException e) {
+//            e.printStackTrace();  //To change body of catch statement use File | Settings | File Templates.
+//        }
+//
+//        /*
+//            Application descriptor creation and saving
+//         */
+//        ApplicationDescription appDesc = new ApplicationDescription(HpcApplicationDeploymentType.type);
+//        HpcApplicationDeploymentType app = (HpcApplicationDeploymentType) appDesc.getType();
+//        ApplicationDeploymentDescriptionType.ApplicationName name = ApplicationDeploymentDescriptionType.ApplicationName.Factory.newInstance();
+//        name.setStringValue(serviceName);
+//        app.setApplicationName(name);
+//        ProjectAccountType projectAccountType = app.addNewProjectAccount();
+//        projectAccountType.setProjectAccountNumber("uot111");
+//
+//        QueueType queueType = app.addNewQueue();
+//        queueType.setQueueName("normal");
+//
+//        app.setCpuCount(1);
+//        app.setJobType(JobTypeType.SERIAL);
+//        app.setNodeCount(1);
+//        app.setProcessorsPerNode(1);
+//        app.setMaxWallTime(10);
+//        /*
+//           * Use bat file if it is compiled on Windows
+//           */
+//        app.setExecutableLocation("/bin/echo");
+//
+//        /*
+//           * Default tmp location
+//           */
+//        String tempDir = "/oasis/projects/nsf/uot111/us3/airavata-workdirs/";
+//
+//        app.setScratchWorkingDirectory(tempDir);
+//        app.setInstalledParentPath("/opt/torque/bin/");
+//
+//        try {
+//            airavataAPI.getApplicationManager().saveApplicationDescription(serviceName, gsiSshHostNameTrestles, appDesc);
+//        } catch (AiravataAPIInvocationException e) {
+//            e.printStackTrace();  //To change body of catch statement use File | Settings | File Templates.
+//        }
+//    }
+//
+//    public void createMPIPBSDocsTrestles() {
+//        HostDescription host = new HostDescription(GsisshHostType.type);
+//        host.getType().setHostAddress(hpcHostAddress);
+//        host.getType().setHostName(gsiSshHostNameTrestles);
+//        ((GsisshHostType) host.getType()).setPort(22);
+//        ((GsisshHostType) host.getType()).setInstalledPath("/opt/torque/bin/");
+//
+//        try {
+//            airavataAPI.getApplicationManager().saveHostDescription(host);
+//        } catch (AiravataAPIInvocationException e) {
+//            e.printStackTrace();  //To change body of catch statement use File | Settings | File Templates.
+//        }
+//        /*
+//        * Service Description creation and saving
+//        */
+//        String serviceName = "US3AppTrestles";
+//        ServiceDescription serv = new ServiceDescription();
+//        serv.getType().setName(serviceName);
+//
+//        List<InputParameterType> inputList = new ArrayList<InputParameterType>();
+//        List<OutputParameterType> outputList = new ArrayList<OutputParameterType>();
+//
+//
+//        InputParameterType input = InputParameterType.Factory.newInstance();
+//        input.setParameterName("input");
+//        ParameterType parameterType = input.addNewParameterType();
+//        parameterType.setType(DataType.URI);
+//        parameterType.setName("URI");
+//
+//        OutputParameterType output = OutputParameterType.Factory.newInstance();
+//        output.setParameterName("output");
+//        ParameterType parameterType1 = output.addNewParameterType();
+//        parameterType1.setType(DataType.URI);
+//        parameterType1.setName("URI");
+//
+//        OutputParameterType output1 = OutputParameterType.Factory.newInstance();
+//        output1.setParameterName("stdout");
+//        ParameterType parameterType2 = output1.addNewParameterType();
+//        parameterType2.setType(DataType.STD_OUT);
+//        parameterType2.setName("StdOut");
+//
+//        OutputParameterType output2 = OutputParameterType.Factory.newInstance();
+//        output2.setParameterName("stderr");
+//        ParameterType parameterType3 = output2.addNewParameterType();
+//        parameterType3.setType(DataType.STD_ERR);
+//        parameterType3.setName("StdErr");
+//
+//        inputList.add(input);
+//        outputList.add(output);
+//        outputList.add(output1);
+//        outputList.add(output2);
+//
+//        InputParameterType[] inputParamList = inputList.toArray(new InputParameterType[inputList.size()]);
+//        OutputParameterType[] outputParamList = outputList.toArray(new OutputParameterType[outputList.size()]);
+//
+//        serv.getType().setInputParametersArray(inputParamList);
+//        serv.getType().setOutputParametersArray(outputParamList);
+//        try {
+//            airavataAPI.getApplicationManager().saveServiceDescription(serv);
+//        } catch (AiravataAPIInvocationException e) {
+//            e.printStackTrace();  //To change body of catch statement use File | Settings | File Templates.
+//        }
+//
+//        /*
+//            Application descriptor creation and saving
+//         */
+//        ApplicationDescription appDesc = new ApplicationDescription(HpcApplicationDeploymentType.type);
+//        HpcApplicationDeploymentType app = (HpcApplicationDeploymentType) appDesc.getType();
+//        ApplicationDeploymentDescriptionType.ApplicationName name = ApplicationDeploymentDescriptionType.ApplicationName.Factory.newInstance();
+//        name.setStringValue(serviceName);
+//        app.setApplicationName(name);
+//        ProjectAccountType projectAccountType = app.addNewProjectAccount();
+//        projectAccountType.setProjectAccountNumber("uot111");
+//
+//        QueueType queueType = app.addNewQueue();
+//        queueType.setQueueName("normal");
+//
+//        app.setCpuCount(1);
+//        app.setJobType(JobTypeType.MPI);
+//        app.setNodeCount(32);
+//        app.setProcessorsPerNode(2);
+//        app.setMaxWallTime(10);
+//        /*
+//           * Use bat file if it is compiled on Windows
+//           */
+//        app.setExecutableLocation("/home/us3/trestles/bin/us_mpi_analysis");
+//
+//        /*
+//           * Default tmp location
+//           */
+//        String tempDir = "/oasis/projects/nsf/uot111/us3/airavata-workdirs/";
+//        app.setScratchWorkingDirectory(tempDir);
+//        app.setInstalledParentPath("/opt/torque/bin/");
+//        app.setJobSubmitterCommand("/opt/mvapich2/pgi/ib/bin/mpiexec");
+//        try {
+//            airavataAPI.getApplicationManager().saveApplicationDescription(serviceName, gsiSshHostNameTrestles, appDesc);
+//        } catch (AiravataAPIInvocationException e) {
+//            e.printStackTrace();  //To change body of catch statement use File | Settings | File Templates.
+//        }
+//    }
+//    public void createMPISLURMDocsStampede() {
+//        HostDescription host = new HostDescription(GsisshHostType.type);
+//        host.getType().setHostAddress("stampede.tacc.xsede.org");
+//        host.getType().setHostName("gsissh-stampede");
+//        ((GsisshHostType) host.getType()).setJobManager("slurm");
+//        ((GsisshHostType) host.getType()).setInstalledPath("/usr/bin/");
+//        ((GsisshHostType) host.getType()).setPort(2222);
+//
+//        try {
+//            airavataAPI.getApplicationManager().saveHostDescription(host);
+//        } catch (AiravataAPIInvocationException e) {
+//            e.printStackTrace();  //To change body of catch statement use File | Settings | File Templates.
+//        }
+//        /*
+//        * Service Description creation and saving
+//        */
+//        String serviceName = "US3AppStampede";
+//        ServiceDescription serv = new ServiceDescription();
+//        serv.getType().setName(serviceName);
+//
+//        List<InputParameterType> inputList = new ArrayList<InputParameterType>();
+//        List<OutputParameterType> outputList = new ArrayList<OutputParameterType>();
+//
+//
+//        InputParameterType input = InputParameterType.Factory.newInstance();
+//        input.setParameterName("input");
+//        ParameterType parameterType = input.addNewParameterType();
+//        parameterType.setType(DataType.URI);
+//        parameterType.setName("URI");
+//
+//        OutputParameterType output = OutputParameterType.Factory.newInstance();
+//        output.setParameterName("output");
+//        ParameterType parameterType1 = output.addNewParameterType();
+//        parameterType1.setType(DataType.URI);
+//        parameterType1.setName("URI");
+//
+//        OutputParameterType output1 = OutputParameterType.Factory.newInstance();
+//        output1.setParameterName("stdout");
+//        ParameterType parameterType2 = output1.addNewParameterType();
+//        parameterType2.setType(DataType.STD_OUT);
+//        parameterType2.setName("StdOut");
+//
+//        OutputParameterType output2 = OutputParameterType.Factory.newInstance();
+//        output2.setParameterName("stderr");
+//        ParameterType parameterType3 = output2.addNewParameterType();
+//        parameterType3.setType(DataType.STD_ERR);
+//        parameterType3.setName("StdErr");
+//
+//        inputList.add(input);
+//        outputList.add(output);
+//        outputList.add(output1);
+//        outputList.add(output2);
+//
+//        InputParameterType[] inputParamList = inputList.toArray(new InputParameterType[inputList.size()]);
+//        OutputParameterType[] outputParamList = outputList.toArray(new OutputParameterType[outputList.size()]);
+//
+//        serv.getType().setInputParametersArray(inputParamList);
+//        serv.getType().setOutputParametersArray(outputParamList);
+//        try {
+//            airavataAPI.getApplicationManager().saveServiceDescription(serv);
+//        } catch (AiravataAPIInvocationException e) {
+//            e.printStackTrace();  //To change body of catch statement use File | Settings | File Templates.
+//        }
+//
+//        /*
+//            Application descriptor creation and saving
+//         */
+//        ApplicationDescription appDesc = new ApplicationDescription(HpcApplicationDeploymentType.type);
+//        HpcApplicationDeploymentType app = (HpcApplicationDeploymentType) appDesc.getType();
+//        ApplicationDeploymentDescriptionType.ApplicationName name = ApplicationDeploymentDescriptionType.ApplicationName.Factory.newInstance();
+//        name.setStringValue(serviceName);
+//        app.setApplicationName(name);
+//        ProjectAccountType projectAccountType = app.addNewProjectAccount();
+//        projectAccountType.setProjectAccountNumber("TG-MCB070039N");
+//
+//        QueueType queueType = app.addNewQueue();
+//        queueType.setQueueName("normal");
+//
+//        app.setCpuCount(1);
+//        app.setJobType(JobTypeType.MPI);
+//        app.setNodeCount(32);
+//        app.setProcessorsPerNode(2);
+//        app.setMaxWallTime(10);
+//        /*
+//           * Use bat file if it is compiled on Windows
+//           */
+//        app.setExecutableLocation("/home1/01623/us3/bin/us_mpi_analysis");
+//
+//        /*
+//           * Default tmp location
+//           */
+//        String tempDir = "/home1/01623/us3";
+//        app.setScratchWorkingDirectory(tempDir);
+//        app.setInstalledParentPath("/usr/bin/");
+//        app.setJobSubmitterCommand("/usr/local/bin/ibrun");
+//        try {
+//            airavataAPI.getApplicationManager().saveApplicationDescription(serviceName, gsiSshHostNameStampede, appDesc);
+//        } catch (AiravataAPIInvocationException e) {
+//            e.printStackTrace();  //To change body of catch statement use File | Settings | File Templates.
+//        }
+//    }
+//    public void createEchoSlurmDocsofStampede() {
+//        HostDescription host = new HostDescription(GsisshHostType.type);
+//        host.getType().setHostAddress("stampede.tacc.xsede.org");
+//        host.getType().setHostName("stampede-host");
+//        ((GsisshHostType) host.getType()).setJobManager("slurm");
+//        ((GsisshHostType) host.getType()).setInstalledPath("/usr/bin/");
+//        ((GsisshHostType) host.getType()).setPort(2222);
+//        ((GsisshHostType) host.getType()).setMonitorMode("push");
+////        ((GsisshHostType) host.getType()).setMo(2222);
+//
+//
+//        try {
+//            airavataAPI.getApplicationManager().saveHostDescription(host);
+//        } catch (AiravataAPIInvocationException e) {
+//            e.printStackTrace();  //To change body of catch statement use File | Settings | File Templates.
+//        }
+//        /*
+//        * Service Description creation and saving
+//        */
+//        String serviceName = "US3EchoStampede";
+//        ServiceDescription serv = new ServiceDescription();
+//        serv.getType().setName(serviceName);
+//
+//        List<InputParameterType> inputList = new ArrayList<InputParameterType>();
+//        List<OutputParameterType> outputList = new ArrayList<OutputParameterType>();
+//
+//
+//        InputParameterType input = InputParameterType.Factory.newInstance();
+//        input.setParameterName("echo_input");
+//        ParameterType parameterType = input.addNewParameterType();
+//        parameterType.setType(DataType.STRING);
+//        parameterType.setName("String");
+//
+//        OutputParameterType output = OutputParameterType.Factory.newInstance();
+//        output.setParameterName("echo_output");
+//        ParameterType parameterType1 = output.addNewParameterType();
+//        parameterType1.setType(DataType.STRING);
+//        parameterType1.setName("String");
+//
+//        inputList.add(input);
+//        outputList.add(output);
+//
+//        InputParameterType[] inputParamList = inputList.toArray(new InputParameterType[inputList.size()]);
+//        OutputParameterType[] outputParamList = outputList.toArray(new OutputParameterType[outputList.size()]);
+//
+//        serv.getType().setInputParametersArray(inputParamList);
+//        serv.getType().setOutputParametersArray(outputParamList);
+//        try {
+//            airavataAPI.getApplicationManager().saveServiceDescription(serv);
+//        } catch (AiravataAPIInvocationException e) {
+//            e.printStackTrace();  //To change body of catch statement use File | Settings | File Templates.
+//        }
+//
+//        /*
+//           Application descriptor creation and saving
+//        */
+//        ApplicationDescription appDesc = new ApplicationDescription(HpcApplicationDeploymentType.type);
+//        HpcApplicationDeploymentType app = (HpcApplicationDeploymentType) appDesc.getType();
+//        ApplicationDeploymentDescriptionType.ApplicationName name = ApplicationDeploymentDescriptionType.ApplicationName.Factory.newInstance();
+//        name.setStringValue(serviceName);
+//        app.setApplicationName(name);
+//        ProjectAccountType projectAccountType = app.addNewProjectAccount();
+//        projectAccountType.setProjectAccountNumber("TG-MCB070039N");
+//
+//        QueueType queueType = app.addNewQueue();
+//        queueType.setQueueName("normal");
+//
+//        app.setCpuCount(1);
+//        app.setJobType(JobTypeType.SERIAL);
+//        app.setNodeCount(1);
+//        app.setProcessorsPerNode(1);
+//        app.setMaxWallTime(10);
+//        /*
+//        * Use bat file if it is compiled on Windows
+//        */
+//        app.setExecutableLocation("/bin/echo");
+//
+//        /*
+//        * Default tmp location
+//        */
+//        String tempDir = "/home1/01623/us3";
+//
+//        app.setScratchWorkingDirectory(tempDir);
+//        app.setInstalledParentPath("/usr/bin/");
+//
+//        try {
+//            airavataAPI.getApplicationManager().saveApplicationDescription(serviceName, gsiSshHostNameStampede, appDesc);
+//        } catch (AiravataAPIInvocationException e) {
+//            e.printStackTrace();  //To change body of catch statement use File | Settings | File Templates.
+//        }
+//    }
+//
+//    public AiravataAPI getAiravataAPI() {
+//        return airavataAPI;
+//    }
+//
+//    public void setAiravataAPI(AiravataAPI airavataAPI) {
+//        this.airavataAPI = airavataAPI;
+//    }
+//}


Mime
View raw message