You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airavata.apache.org by sm...@apache.org on 2016/08/09 18:01:09 UTC

[29/32] airavata-sandbox git commit: Added_Apache

http://git-wip-us.apache.org/repos/asf/airavata-sandbox/blob/2352c0ff/Interacting_with_Airavata_using_ipython_Notebook/Admin-User/airavata_cli.py
----------------------------------------------------------------------
diff --git a/Interacting_with_Airavata_using_ipython_Notebook/Admin-User/airavata_cli.py b/Interacting_with_Airavata_using_ipython_Notebook/Admin-User/airavata_cli.py
new file mode 100644
index 0000000..3fdfb83
--- /dev/null
+++ b/Interacting_with_Airavata_using_ipython_Notebook/Admin-User/airavata_cli.py
@@ -0,0 +1,134 @@
+import sys,random,time
+import threading
+from expcatalog.expcatalog import ExpCatalog
+from appcatalog.appcatalog import AppCatalog
+
+VERSION = "0.0.1"
+
+BANNER = """
+Welcome to Airavata CLI v%s - Wirtten in python
+
+""" % VERSION
+
+exitMsg = "Bye, See you soon :)"
+cli_prompt = "=> "
+
+
+class AiravataCLI:
+
+    def __init__(self, hostName, port):
+        self.exit = False
+        self.expCatalog = ExpCatalog(hostName, port)
+        self.AppCatalog = AppCatalog(hostName, port)
+        self.experimentState = "Hukarz"
+        self.jobStateMapper = {
+            0: "SUBMITTED",
+            1: "QUEUED",
+            2: "ACTIVE",
+            3: "COMPLETE",
+            4: "CANCELED",
+            5: "FAILED",
+            6: "SUSPENDED",
+            7: "UNKNOWN"
+        }
+
+        self.experimentStateMapper = {
+            0: "CREATED",
+            1: "VALIDATED",
+            2: "SCHEDULED",
+            3: "LAUNCHED",
+            4: "EXECUTING",
+            5: "CANCELLING",
+            6: "CANCELED",
+            7: "COMPLETED",
+            8: "FAILED"
+        }
+
+        # set initial properties
+    def printVersion(self):
+        print (BANNER)
+
+    def start(self):
+        command ='expid gaussianfromclient11_62221967-646d-475c-9c46-ed093d09c610'
+        while not self.exit:
+            cInputs = command.split(" ")
+            if cInputs[0] == 'q' or cInputs[0] == 'quit':
+                print (exitMsg)
+                self.exit = True
+            elif cInputs[0] == 'expid':
+                self.monitorExperiment(cInputs[1])
+            else:
+                print ("not yet implemented")
+
+            if not self.exit:
+                command = raw_input(cli_prompt)
+
+    def monitorExperiment(self, expId):
+        experimentSum = self.expCatalog.getExperimentSummary(expId)  ## get experiment id from input and pass it to this
+        self.experimentState = self.experimentStateMapper.get(experimentSum.status.state, "Hukarz")
+        indent = " |- "
+        print (indent + "name :" + experimentSum.name)
+        print (indent + "Id :" + experimentSum.id)
+        print (indent + "status :" + self.experimentState)
+        indent = "    " + indent
+        for job in experimentSum.jobs:
+            print (indent + "jobId :" + job.jobId)
+            print (indent + "jobStatus :" + self.jobStateMapper.get(job.jobStatus.jobState, "Hukarz"))
+            print (indent + " ---- ")
+
+        return self.experimentState
+
+    def createExperiment(self, applicationName):
+        return self.expCatalog.createExperiment(applicationName)
+
+    def cancelExperiment(self, expId):
+        return self.expCatalog.cancelExperiment(expId)
+    
+    def computer_resources(self):
+        return self.AppCatalog.computer_resources()
+    
+    def list_of_applications(self, gatewayId):
+        return self.AppCatalog.list_of_applications(gatewayId)
+    
+    def application_deployments(self, applicationInterfaceId):
+        return self.AppCatalog.application_deployments(applicationInterfaceId)
+    
+    def module_descriptions(self,gatewayId):
+        return self.AppCatalog.module_descriptions(gatewayId)
+    
+    def get_gatewaylist(self):
+        return self.AppCatalog.get_gatewaylist()
+
+    def launchExperiment(self, expId):
+        self.expCatalog.launchExperiment(expId)
+        # while True:
+        #     self.monitorExperiment(expId)
+        
+
+    def monitorStatus(self, expId):
+        self.sendCancel = False
+        delay = 7
+        while True:
+            state = (self.monitorExperiment(expId))
+            if (state == "EXECUTING"):
+                if (not self.sendCancel):
+                    if delay == 0:
+                        print ("sending cancel request for " + expId)
+                        self.cancelExperiment(expId)
+                        print ("sent cancel request for " + expId)
+                        self.sendCancel = True
+
+                    else:
+                        delay -= 1
+
+            if (state == "COMPLETED" or state == "FAILED" or state == "CANCELLED"):
+                return
+                # airavata_cli.monitorExperiment("Einstein_c33d855b-8c10-4d2a-961a-4b55aff807f7")
+            time.sleep(2)
+           
+    def experiment_statistics(self, gatewayId, fromTime, toTime):
+        return self.expCatalog.experiment_statistics(gatewayId,fromTime,toTime)
+    
+    def createExperiment1(self,authzToken,gatewayId,experiment):
+        return self.expCatalog.create_experiment1(authzToken,gatewayId,experiment)
+    

http://git-wip-us.apache.org/repos/asf/airavata-sandbox/blob/2352c0ff/Interacting_with_Airavata_using_ipython_Notebook/Admin-User/airavata_cli.pyc
----------------------------------------------------------------------
diff --git a/Interacting_with_Airavata_using_ipython_Notebook/Admin-User/airavata_cli.pyc b/Interacting_with_Airavata_using_ipython_Notebook/Admin-User/airavata_cli.pyc
new file mode 100644
index 0000000..f5fecc3
Binary files /dev/null and b/Interacting_with_Airavata_using_ipython_Notebook/Admin-User/airavata_cli.pyc differ

http://git-wip-us.apache.org/repos/asf/airavata-sandbox/blob/2352c0ff/Interacting_with_Airavata_using_ipython_Notebook/Admin-User/apache/__init__.py
----------------------------------------------------------------------
diff --git a/Interacting_with_Airavata_using_ipython_Notebook/Admin-User/apache/__init__.py b/Interacting_with_Airavata_using_ipython_Notebook/Admin-User/apache/__init__.py
new file mode 100644
index 0000000..e69de29

http://git-wip-us.apache.org/repos/asf/airavata-sandbox/blob/2352c0ff/Interacting_with_Airavata_using_ipython_Notebook/Admin-User/apache/__init__.pyc
----------------------------------------------------------------------
diff --git a/Interacting_with_Airavata_using_ipython_Notebook/Admin-User/apache/__init__.pyc b/Interacting_with_Airavata_using_ipython_Notebook/Admin-User/apache/__init__.pyc
new file mode 100644
index 0000000..80ae182
Binary files /dev/null and b/Interacting_with_Airavata_using_ipython_Notebook/Admin-User/apache/__init__.pyc differ

http://git-wip-us.apache.org/repos/asf/airavata-sandbox/blob/2352c0ff/Interacting_with_Airavata_using_ipython_Notebook/Admin-User/apache/__pycache__/__init__.cpython-35.pyc
----------------------------------------------------------------------
diff --git a/Interacting_with_Airavata_using_ipython_Notebook/Admin-User/apache/__pycache__/__init__.cpython-35.pyc b/Interacting_with_Airavata_using_ipython_Notebook/Admin-User/apache/__pycache__/__init__.cpython-35.pyc
new file mode 100644
index 0000000..0399757
Binary files /dev/null and b/Interacting_with_Airavata_using_ipython_Notebook/Admin-User/apache/__pycache__/__init__.cpython-35.pyc differ

http://git-wip-us.apache.org/repos/asf/airavata-sandbox/blob/2352c0ff/Interacting_with_Airavata_using_ipython_Notebook/Admin-User/apache/airavata/__init__.py
----------------------------------------------------------------------
diff --git a/Interacting_with_Airavata_using_ipython_Notebook/Admin-User/apache/airavata/__init__.py b/Interacting_with_Airavata_using_ipython_Notebook/Admin-User/apache/airavata/__init__.py
new file mode 100644
index 0000000..e69de29

http://git-wip-us.apache.org/repos/asf/airavata-sandbox/blob/2352c0ff/Interacting_with_Airavata_using_ipython_Notebook/Admin-User/apache/airavata/__init__.pyc
----------------------------------------------------------------------
diff --git a/Interacting_with_Airavata_using_ipython_Notebook/Admin-User/apache/airavata/__init__.pyc b/Interacting_with_Airavata_using_ipython_Notebook/Admin-User/apache/airavata/__init__.pyc
new file mode 100644
index 0000000..cbee7a2
Binary files /dev/null and b/Interacting_with_Airavata_using_ipython_Notebook/Admin-User/apache/airavata/__init__.pyc differ

http://git-wip-us.apache.org/repos/asf/airavata-sandbox/blob/2352c0ff/Interacting_with_Airavata_using_ipython_Notebook/Admin-User/apache/airavata/__pycache__/__init__.cpython-35.pyc
----------------------------------------------------------------------
diff --git a/Interacting_with_Airavata_using_ipython_Notebook/Admin-User/apache/airavata/__pycache__/__init__.cpython-35.pyc b/Interacting_with_Airavata_using_ipython_Notebook/Admin-User/apache/airavata/__pycache__/__init__.cpython-35.pyc
new file mode 100644
index 0000000..5de84f4
Binary files /dev/null and b/Interacting_with_Airavata_using_ipython_Notebook/Admin-User/apache/airavata/__pycache__/__init__.cpython-35.pyc differ

http://git-wip-us.apache.org/repos/asf/airavata-sandbox/blob/2352c0ff/Interacting_with_Airavata_using_ipython_Notebook/Admin-User/apache/airavata/api/Airavata-remote
----------------------------------------------------------------------
diff --git a/Interacting_with_Airavata_using_ipython_Notebook/Admin-User/apache/airavata/api/Airavata-remote b/Interacting_with_Airavata_using_ipython_Notebook/Admin-User/apache/airavata/api/Airavata-remote
new file mode 100644
index 0000000..1e6a3c0
--- /dev/null
+++ b/Interacting_with_Airavata_using_ipython_Notebook/Admin-User/apache/airavata/api/Airavata-remote
@@ -0,0 +1,955 @@
+#!/usr/bin/env python
+#
+# Autogenerated by Thrift Compiler (0.9.2)
+#
+# DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+#
+#  options string: py
+#
+
+import sys
+import pprint
+from urlparse import urlparse
+from thrift.transport import TTransport
+from thrift.transport import TSocket
+from thrift.transport import TSSLSocket
+from thrift.transport import THttpClient
+from thrift.protocol import TBinaryProtocol
+
+from apache.airavata.api import Airavata
+from apache.airavata.api.ttypes import *
+
+if len(sys.argv) <= 1 or sys.argv[1] == '--help':
+  print('')
+  print('Usage: ' + sys.argv[0] + ' [-h host[:port]] [-u url] [-f[ramed]] [-s[sl]] function [arg1 [arg2...]]')
+  print('')
+  print('Functions:')
+  print('  string getAPIVersion(AuthzToken authzToken)')
+  print('  string addGateway(AuthzToken authzToken, Gateway gateway)')
+  print('  void updateGateway(AuthzToken authzToken, string gatewayId, Gateway updatedGateway)')
+  print('  Gateway getGateway(AuthzToken authzToken, string gatewayId)')
+  print('  bool deleteGateway(AuthzToken authzToken, string gatewayId)')
+  print('   getAllGateways(AuthzToken authzToken)')
+  print('  bool isGatewayExist(AuthzToken authzToken, string gatewayId)')
+  print('  string generateAndRegisterSSHKeys(AuthzToken authzToken, string gatewayId, string userName)')
+  print('  string getSSHPubKey(AuthzToken authzToken, string airavataCredStoreToken, string gatewayId)')
+  print('   getAllUserSSHPubKeys(AuthzToken authzToken, string userName)')
+  print('  string createProject(AuthzToken authzToken, string gatewayId, Project project)')
+  print('  void updateProject(AuthzToken authzToken, string projectId, Project updatedProject)')
+  print('  Project getProject(AuthzToken authzToken, string projectId)')
+  print('  bool deleteProject(AuthzToken authzToken, string projectId)')
+  print('   getUserProjects(AuthzToken authzToken, string gatewayId, string userName, i32 limit, i32 offset)')
+  print('   searchProjectsByProjectName(AuthzToken authzToken, string gatewayId, string userName, string projectName, i32 limit, i32 offset)')
+  print('   searchProjectsByProjectDesc(AuthzToken authzToken, string gatewayId, string userName, string description, i32 limit, i32 offset)')
+  print('   searchExperimentsByName(AuthzToken authzToken, string gatewayId, string userName, string expName, i32 limit, i32 offset)')
+  print('   searchExperimentsByDesc(AuthzToken authzToken, string gatewayId, string userName, string description, i32 limit, i32 offset)')
+  print('   searchExperimentsByApplication(AuthzToken authzToken, string gatewayId, string userName, string applicationId, i32 limit, i32 offset)')
+  print('   searchExperimentsByStatus(AuthzToken authzToken, string gatewayId, string userName, ExperimentState experimentState, i32 limit, i32 offset)')
+  print('   searchExperimentsByCreationTime(AuthzToken authzToken, string gatewayId, string userName, i64 fromTime, i64 toTime, i32 limit, i32 offset)')
+  print('   searchExperiments(AuthzToken authzToken, string gatewayId, string userName,  filters, i32 limit, i32 offset)')
+  print('  ExperimentStatistics getExperimentStatistics(AuthzToken authzToken, string gatewayId, i64 fromTime, i64 toTime)')
+  print('   getExperimentsInProject(AuthzToken authzToken, string projectId, i32 limit, i32 offset)')
+  print('   getUserExperiments(AuthzToken authzToken, string gatewayId, string userName, i32 limit, i32 offset)')
+  print('  string createExperiment(AuthzToken authzToken, string gatewayId, ExperimentModel experiment)')
+  print('  bool deleteExperiment(AuthzToken authzToken, string experimentId)')
+  print('  ExperimentModel getExperiment(AuthzToken authzToken, string airavataExperimentId)')
+  print('  void updateExperiment(AuthzToken authzToken, string airavataExperimentId, ExperimentModel experiment)')
+  print('  void updateExperimentConfiguration(AuthzToken authzToken, string airavataExperimentId, UserConfigurationDataModel userConfiguration)')
+  print('  void updateResourceScheduleing(AuthzToken authzToken, string airavataExperimentId, ComputationalResourceSchedulingModel resourceScheduling)')
+  print('  bool validateExperiment(AuthzToken authzToken, string airavataExperimentId)')
+  print('  void launchExperiment(AuthzToken authzToken, string airavataExperimentId, string gatewayId)')
+  print('  ExperimentStatus getExperimentStatus(AuthzToken authzToken, string airavataExperimentId)')
+  print('   getExperimentOutputs(AuthzToken authzToken, string airavataExperimentId)')
+  print('   getIntermediateOutputs(AuthzToken authzToken, string airavataExperimentId)')
+  print('   getJobStatuses(AuthzToken authzToken, string airavataExperimentId)')
+  print('   getJobDetails(AuthzToken authzToken, string airavataExperimentId)')
+  print('  string cloneExperiment(AuthzToken authzToken, string existingExperimentID, string newExperimentName)')
+  print('  void terminateExperiment(AuthzToken authzToken, string airavataExperimentId, string gatewayId)')
+  print('  string registerApplicationModule(AuthzToken authzToken, string gatewayId, ApplicationModule applicationModule)')
+  print('  ApplicationModule getApplicationModule(AuthzToken authzToken, string appModuleId)')
+  print('  bool updateApplicationModule(AuthzToken authzToken, string appModuleId, ApplicationModule applicationModule)')
+  print('   getAllAppModules(AuthzToken authzToken, string gatewayId)')
+  print('  bool deleteApplicationModule(AuthzToken authzToken, string appModuleId)')
+  print('  string registerApplicationDeployment(AuthzToken authzToken, string gatewayId, ApplicationDeploymentDescription applicationDeployment)')
+  print('  ApplicationDeploymentDescription getApplicationDeployment(AuthzToken authzToken, string appDeploymentId)')
+  print('  bool updateApplicationDeployment(AuthzToken authzToken, string appDeploymentId, ApplicationDeploymentDescription applicationDeployment)')
+  print('  bool deleteApplicationDeployment(AuthzToken authzToken, string appDeploymentId)')
+  print('   getAllApplicationDeployments(AuthzToken authzToken, string gatewayId)')
+  print('   getAppModuleDeployedResources(AuthzToken authzToken, string appModuleId)')
+  print('  string registerApplicationInterface(AuthzToken authzToken, string gatewayId, ApplicationInterfaceDescription applicationInterface)')
+  print('  ApplicationInterfaceDescription getApplicationInterface(AuthzToken authzToken, string appInterfaceId)')
+  print('  bool updateApplicationInterface(AuthzToken authzToken, string appInterfaceId, ApplicationInterfaceDescription applicationInterface)')
+  print('  bool deleteApplicationInterface(AuthzToken authzToken, string appInterfaceId)')
+  print('   getAllApplicationInterfaceNames(AuthzToken authzToken, string gatewayId)')
+  print('   getAllApplicationInterfaces(AuthzToken authzToken, string gatewayId)')
+  print('   getApplicationInputs(AuthzToken authzToken, string appInterfaceId)')
+  print('   getApplicationOutputs(AuthzToken authzToken, string appInterfaceId)')
+  print('   getAvailableAppInterfaceComputeResources(AuthzToken authzToken, string appInterfaceId)')
+  print('  string registerComputeResource(AuthzToken authzToken, ComputeResourceDescription computeResourceDescription)')
+  print('  ComputeResourceDescription getComputeResource(AuthzToken authzToken, string computeResourceId)')
+  print('   getAllComputeResourceNames(AuthzToken authzToken)')
+  print('  bool updateComputeResource(AuthzToken authzToken, string computeResourceId, ComputeResourceDescription computeResourceDescription)')
+  print('  bool deleteComputeResource(AuthzToken authzToken, string computeResourceId)')
+  print('  string addLocalSubmissionDetails(AuthzToken authzToken, string computeResourceId, i32 priorityOrder, LOCALSubmission localSubmission)')
+  print('  bool updateLocalSubmissionDetails(AuthzToken authzToken, string jobSubmissionInterfaceId, LOCALSubmission localSubmission)')
+  print('  LOCALSubmission getLocalJobSubmission(AuthzToken authzToken, string jobSubmissionId)')
+  print('  string addSSHJobSubmissionDetails(AuthzToken authzToken, string computeResourceId, i32 priorityOrder, SSHJobSubmission sshJobSubmission)')
+  print('  string addSSHForkJobSubmissionDetails(AuthzToken authzToken, string computeResourceId, i32 priorityOrder, SSHJobSubmission sshJobSubmission)')
+  print('  SSHJobSubmission getSSHJobSubmission(AuthzToken authzToken, string jobSubmissionId)')
+  print('  string addUNICOREJobSubmissionDetails(AuthzToken authzToken, string computeResourceId, i32 priorityOrder, UnicoreJobSubmission unicoreJobSubmission)')
+  print('  UnicoreJobSubmission getUnicoreJobSubmission(AuthzToken authzToken, string jobSubmissionId)')
+  print('  string addCloudJobSubmissionDetails(AuthzToken authzToken, string computeResourceId, i32 priorityOrder, CloudJobSubmission cloudSubmission)')
+  print('  CloudJobSubmission getCloudJobSubmission(AuthzToken authzToken, string jobSubmissionId)')
+  print('  bool updateSSHJobSubmissionDetails(AuthzToken authzToken, string jobSubmissionInterfaceId, SSHJobSubmission sshJobSubmission)')
+  print('  bool updateCloudJobSubmissionDetails(AuthzToken authzToken, string jobSubmissionInterfaceId, CloudJobSubmission sshJobSubmission)')
+  print('  bool updateUnicoreJobSubmissionDetails(AuthzToken authzToken, string jobSubmissionInterfaceId, UnicoreJobSubmission unicoreJobSubmission)')
+  print('  string addLocalDataMovementDetails(AuthzToken authzToken, string computeResourceId, i32 priorityOrder, LOCALDataMovement localDataMovement)')
+  print('  bool updateLocalDataMovementDetails(AuthzToken authzToken, string dataMovementInterfaceId, LOCALDataMovement localDataMovement)')
+  print('  LOCALDataMovement getLocalDataMovement(AuthzToken authzToken, string dataMovementId)')
+  print('  string addSCPDataMovementDetails(AuthzToken authzToken, string computeResourceId, i32 priorityOrder, SCPDataMovement scpDataMovement)')
+  print('  bool updateSCPDataMovementDetails(AuthzToken authzToken, string dataMovementInterfaceId, SCPDataMovement scpDataMovement)')
+  print('  SCPDataMovement getSCPDataMovement(AuthzToken authzToken, string dataMovementId)')
+  print('  string addUnicoreDataMovementDetails(AuthzToken authzToken, string computeResourceId, i32 priorityOrder, UnicoreDataMovement unicoreDataMovement)')
+  print('  bool updateUnicoreDataMovementDetails(AuthzToken authzToken, string dataMovementInterfaceId, UnicoreDataMovement unicoreDataMovement)')
+  print('  UnicoreDataMovement getUnicoreDataMovement(AuthzToken authzToken, string dataMovementId)')
+  print('  string addGridFTPDataMovementDetails(AuthzToken authzToken, string computeResourceId, i32 priorityOrder, GridFTPDataMovement gridFTPDataMovement)')
+  print('  bool updateGridFTPDataMovementDetails(AuthzToken authzToken, string dataMovementInterfaceId, GridFTPDataMovement gridFTPDataMovement)')
+  print('  GridFTPDataMovement getGridFTPDataMovement(AuthzToken authzToken, string dataMovementId)')
+  print('  bool changeJobSubmissionPriority(AuthzToken authzToken, string jobSubmissionInterfaceId, i32 newPriorityOrder)')
+  print('  bool changeDataMovementPriority(AuthzToken authzToken, string dataMovementInterfaceId, i32 newPriorityOrder)')
+  print('  bool changeJobSubmissionPriorities(AuthzToken authzToken,  jobSubmissionPriorityMap)')
+  print('  bool changeDataMovementPriorities(AuthzToken authzToken,  dataMovementPriorityMap)')
+  print('  bool deleteJobSubmissionInterface(AuthzToken authzToken, string computeResourceId, string jobSubmissionInterfaceId)')
+  print('  bool deleteDataMovementInterface(AuthzToken authzToken, string computeResourceId, string dataMovementInterfaceId)')
+  print('  string registerResourceJobManager(AuthzToken authzToken, ResourceJobManager resourceJobManager)')
+  print('  bool updateResourceJobManager(AuthzToken authzToken, string resourceJobManagerId, ResourceJobManager updatedResourceJobManager)')
+  print('  ResourceJobManager getResourceJobManager(AuthzToken authzToken, string resourceJobManagerId)')
+  print('  bool deleteResourceJobManager(AuthzToken authzToken, string resourceJobManagerId)')
+  print('  bool deleteBatchQueue(AuthzToken authzToken, string computeResourceId, string queueName)')
+  print('  string registerGatewayResourceProfile(AuthzToken authzToken, GatewayResourceProfile gatewayResourceProfile)')
+  print('  GatewayResourceProfile getGatewayResourceProfile(AuthzToken authzToken, string gatewayID)')
+  print('  bool updateGatewayResourceProfile(AuthzToken authzToken, string gatewayID, GatewayResourceProfile gatewayResourceProfile)')
+  print('  bool deleteGatewayResourceProfile(AuthzToken authzToken, string gatewayID)')
+  print('  bool addGatewayComputeResourcePreference(AuthzToken authzToken, string gatewayID, string computeResourceId, ComputeResourcePreference computeResourcePreference)')
+  print('  bool addGatewayDataStoragePreference(AuthzToken authzToken, string gatewayID, string dataMoveId, DataStoragePreference dataStoragePreference)')
+  print('  ComputeResourcePreference getGatewayComputeResourcePreference(AuthzToken authzToken, string gatewayID, string computeResourceId)')
+  print('  DataStoragePreference getGatewayDataStoragePreference(AuthzToken authzToken, string gatewayID, string dataMoveId)')
+  print('   getAllGatewayComputeResourcePreferences(AuthzToken authzToken, string gatewayID)')
+  print('   getAllGatewayDataStoragePreferences(AuthzToken authzToken, string gatewayID)')
+  print('   getAllGatewayResourceProfiles(AuthzToken authzToken)')
+  print('  bool updateGatewayComputeResourcePreference(AuthzToken authzToken, string gatewayID, string computeResourceId, ComputeResourcePreference computeResourcePreference)')
+  print('  bool updateGatewayDataStoragePreference(AuthzToken authzToken, string gatewayID, string dataMoveId, DataStoragePreference dataStoragePreference)')
+  print('  bool deleteGatewayComputeResourcePreference(AuthzToken authzToken, string gatewayID, string computeResourceId)')
+  print('  bool deleteGatewayDataStoragePreference(AuthzToken authzToken, string gatewayID, string dataMoveId)')
+  print('   getAllWorkflows(AuthzToken authzToken, string gatewayId)')
+  print('  Workflow getWorkflow(AuthzToken authzToken, string workflowTemplateId)')
+  print('  void deleteWorkflow(AuthzToken authzToken, string workflowTemplateId)')
+  print('  string registerWorkflow(AuthzToken authzToken, string gatewayId, Workflow workflow)')
+  print('  void updateWorkflow(AuthzToken authzToken, string workflowTemplateId, Workflow workflow)')
+  print('  string getWorkflowTemplateId(AuthzToken authzToken, string workflowName)')
+  print('  bool isWorkflowExistWithName(AuthzToken authzToken, string workflowName)')
+  print('')
+  sys.exit(0)
+
+pp = pprint.PrettyPrinter(indent = 2)
+host = 'localhost'
+port = 9090
+uri = ''
+framed = False
+ssl = False
+http = False
+argi = 1
+
+if sys.argv[argi] == '-h':
+  parts = sys.argv[argi+1].split(':')
+  host = parts[0]
+  if len(parts) > 1:
+    port = int(parts[1])
+  argi += 2
+
+if sys.argv[argi] == '-u':
+  url = urlparse(sys.argv[argi+1])
+  parts = url[1].split(':')
+  host = parts[0]
+  if len(parts) > 1:
+    port = int(parts[1])
+  else:
+    port = 80
+  uri = url[2]
+  if url[4]:
+    uri += '?%s' % url[4]
+  http = True
+  argi += 2
+
+if sys.argv[argi] == '-f' or sys.argv[argi] == '-framed':
+  framed = True
+  argi += 1
+
+if sys.argv[argi] == '-s' or sys.argv[argi] == '-ssl':
+  ssl = True
+  argi += 1
+
+cmd = sys.argv[argi]
+args = sys.argv[argi+1:]
+
+if http:
+  transport = THttpClient.THttpClient(host, port, uri)
+else:
+  socket = TSSLSocket.TSSLSocket(host, port, validate=False) if ssl else TSocket.TSocket(host, port)
+  if framed:
+    transport = TTransport.TFramedTransport(socket)
+  else:
+    transport = TTransport.TBufferedTransport(socket)
+protocol = TBinaryProtocol.TBinaryProtocol(transport)
+client = Airavata.Client(protocol)
+transport.open()
+
+if cmd == 'getAPIVersion':
+  if len(args) != 1:
+    print('getAPIVersion requires 1 args')
+    sys.exit(1)
+  pp.pprint(client.getAPIVersion(eval(args[0]),))
+
+elif cmd == 'addGateway':
+  if len(args) != 2:
+    print('addGateway requires 2 args')
+    sys.exit(1)
+  pp.pprint(client.addGateway(eval(args[0]),eval(args[1]),))
+
+elif cmd == 'updateGateway':
+  if len(args) != 3:
+    print('updateGateway requires 3 args')
+    sys.exit(1)
+  pp.pprint(client.updateGateway(eval(args[0]),args[1],eval(args[2]),))
+
+elif cmd == 'getGateway':
+  if len(args) != 2:
+    print('getGateway requires 2 args')
+    sys.exit(1)
+  pp.pprint(client.getGateway(eval(args[0]),args[1],))
+
+elif cmd == 'deleteGateway':
+  if len(args) != 2:
+    print('deleteGateway requires 2 args')
+    sys.exit(1)
+  pp.pprint(client.deleteGateway(eval(args[0]),args[1],))
+
+elif cmd == 'getAllGateways':
+  if len(args) != 1:
+    print('getAllGateways requires 1 args')
+    sys.exit(1)
+  pp.pprint(client.getAllGateways(eval(args[0]),))
+
+elif cmd == 'isGatewayExist':
+  if len(args) != 2:
+    print('isGatewayExist requires 2 args')
+    sys.exit(1)
+  pp.pprint(client.isGatewayExist(eval(args[0]),args[1],))
+
+elif cmd == 'generateAndRegisterSSHKeys':
+  if len(args) != 3:
+    print('generateAndRegisterSSHKeys requires 3 args')
+    sys.exit(1)
+  pp.pprint(client.generateAndRegisterSSHKeys(eval(args[0]),args[1],args[2],))
+
+elif cmd == 'getSSHPubKey':
+  if len(args) != 3:
+    print('getSSHPubKey requires 3 args')
+    sys.exit(1)
+  pp.pprint(client.getSSHPubKey(eval(args[0]),args[1],args[2],))
+
+elif cmd == 'getAllUserSSHPubKeys':
+  if len(args) != 2:
+    print('getAllUserSSHPubKeys requires 2 args')
+    sys.exit(1)
+  pp.pprint(client.getAllUserSSHPubKeys(eval(args[0]),args[1],))
+
+elif cmd == 'createProject':
+  if len(args) != 3:
+    print('createProject requires 3 args')
+    sys.exit(1)
+  pp.pprint(client.createProject(eval(args[0]),args[1],eval(args[2]),))
+
+elif cmd == 'updateProject':
+  if len(args) != 3:
+    print('updateProject requires 3 args')
+    sys.exit(1)
+  pp.pprint(client.updateProject(eval(args[0]),args[1],eval(args[2]),))
+
+elif cmd == 'getProject':
+  if len(args) != 2:
+    print('getProject requires 2 args')
+    sys.exit(1)
+  pp.pprint(client.getProject(eval(args[0]),args[1],))
+
+elif cmd == 'deleteProject':
+  if len(args) != 2:
+    print('deleteProject requires 2 args')
+    sys.exit(1)
+  pp.pprint(client.deleteProject(eval(args[0]),args[1],))
+
+elif cmd == 'getUserProjects':
+  if len(args) != 5:
+    print('getUserProjects requires 5 args')
+    sys.exit(1)
+  pp.pprint(client.getUserProjects(eval(args[0]),args[1],args[2],eval(args[3]),eval(args[4]),))
+
+elif cmd == 'searchProjectsByProjectName':
+  if len(args) != 6:
+    print('searchProjectsByProjectName requires 6 args')
+    sys.exit(1)
+  pp.pprint(client.searchProjectsByProjectName(eval(args[0]),args[1],args[2],args[3],eval(args[4]),eval(args[5]),))
+
+elif cmd == 'searchProjectsByProjectDesc':
+  if len(args) != 6:
+    print('searchProjectsByProjectDesc requires 6 args')
+    sys.exit(1)
+  pp.pprint(client.searchProjectsByProjectDesc(eval(args[0]),args[1],args[2],args[3],eval(args[4]),eval(args[5]),))
+
+elif cmd == 'searchExperimentsByName':
+  if len(args) != 6:
+    print('searchExperimentsByName requires 6 args')
+    sys.exit(1)
+  pp.pprint(client.searchExperimentsByName(eval(args[0]),args[1],args[2],args[3],eval(args[4]),eval(args[5]),))
+
+elif cmd == 'searchExperimentsByDesc':
+  if len(args) != 6:
+    print('searchExperimentsByDesc requires 6 args')
+    sys.exit(1)
+  pp.pprint(client.searchExperimentsByDesc(eval(args[0]),args[1],args[2],args[3],eval(args[4]),eval(args[5]),))
+
+elif cmd == 'searchExperimentsByApplication':
+  if len(args) != 6:
+    print('searchExperimentsByApplication requires 6 args')
+    sys.exit(1)
+  pp.pprint(client.searchExperimentsByApplication(eval(args[0]),args[1],args[2],args[3],eval(args[4]),eval(args[5]),))
+
+elif cmd == 'searchExperimentsByStatus':
+  if len(args) != 6:
+    print('searchExperimentsByStatus requires 6 args')
+    sys.exit(1)
+  pp.pprint(client.searchExperimentsByStatus(eval(args[0]),args[1],args[2],eval(args[3]),eval(args[4]),eval(args[5]),))
+
+elif cmd == 'searchExperimentsByCreationTime':
+  if len(args) != 7:
+    print('searchExperimentsByCreationTime requires 7 args')
+    sys.exit(1)
+  pp.pprint(client.searchExperimentsByCreationTime(eval(args[0]),args[1],args[2],eval(args[3]),eval(args[4]),eval(args[5]),eval(args[6]),))
+
+elif cmd == 'searchExperiments':
+  if len(args) != 6:
+    print('searchExperiments requires 6 args')
+    sys.exit(1)
+  pp.pprint(client.searchExperiments(eval(args[0]),args[1],args[2],eval(args[3]),eval(args[4]),eval(args[5]),))
+
+elif cmd == 'getExperimentStatistics':
+  if len(args) != 4:
+    print('getExperimentStatistics requires 4 args')
+    sys.exit(1)
+  pp.pprint(client.getExperimentStatistics(eval(args[0]),args[1],eval(args[2]),eval(args[3]),))
+
+elif cmd == 'getExperimentsInProject':
+  if len(args) != 4:
+    print('getExperimentsInProject requires 4 args')
+    sys.exit(1)
+  pp.pprint(client.getExperimentsInProject(eval(args[0]),args[1],eval(args[2]),eval(args[3]),))
+
+elif cmd == 'getUserExperiments':
+  if len(args) != 5:
+    print('getUserExperiments requires 5 args')
+    sys.exit(1)
+  pp.pprint(client.getUserExperiments(eval(args[0]),args[1],args[2],eval(args[3]),eval(args[4]),))
+
+elif cmd == 'createExperiment':
+  if len(args) != 3:
+    print('createExperiment requires 3 args')
+    sys.exit(1)
+  pp.pprint(client.createExperiment(eval(args[0]),args[1],eval(args[2]),))
+
+elif cmd == 'deleteExperiment':
+  if len(args) != 2:
+    print('deleteExperiment requires 2 args')
+    sys.exit(1)
+  pp.pprint(client.deleteExperiment(eval(args[0]),args[1],))
+
+elif cmd == 'getExperiment':
+  if len(args) != 2:
+    print('getExperiment requires 2 args')
+    sys.exit(1)
+  pp.pprint(client.getExperiment(eval(args[0]),args[1],))
+
+elif cmd == 'updateExperiment':
+  if len(args) != 3:
+    print('updateExperiment requires 3 args')
+    sys.exit(1)
+  pp.pprint(client.updateExperiment(eval(args[0]),args[1],eval(args[2]),))
+
+elif cmd == 'updateExperimentConfiguration':
+  if len(args) != 3:
+    print('updateExperimentConfiguration requires 3 args')
+    sys.exit(1)
+  pp.pprint(client.updateExperimentConfiguration(eval(args[0]),args[1],eval(args[2]),))
+
+elif cmd == 'updateResourceScheduleing':
+  if len(args) != 3:
+    print('updateResourceScheduleing requires 3 args')
+    sys.exit(1)
+  pp.pprint(client.updateResourceScheduleing(eval(args[0]),args[1],eval(args[2]),))
+
+elif cmd == 'validateExperiment':
+  if len(args) != 2:
+    print('validateExperiment requires 2 args')
+    sys.exit(1)
+  pp.pprint(client.validateExperiment(eval(args[0]),args[1],))
+
+elif cmd == 'launchExperiment':
+  if len(args) != 3:
+    print('launchExperiment requires 3 args')
+    sys.exit(1)
+  pp.pprint(client.launchExperiment(eval(args[0]),args[1],args[2],))
+
+elif cmd == 'getExperimentStatus':
+  if len(args) != 2:
+    print('getExperimentStatus requires 2 args')
+    sys.exit(1)
+  pp.pprint(client.getExperimentStatus(eval(args[0]),args[1],))
+
+elif cmd == 'getExperimentOutputs':
+  if len(args) != 2:
+    print('getExperimentOutputs requires 2 args')
+    sys.exit(1)
+  pp.pprint(client.getExperimentOutputs(eval(args[0]),args[1],))
+
+elif cmd == 'getIntermediateOutputs':
+  if len(args) != 2:
+    print('getIntermediateOutputs requires 2 args')
+    sys.exit(1)
+  pp.pprint(client.getIntermediateOutputs(eval(args[0]),args[1],))
+
+elif cmd == 'getJobStatuses':
+  if len(args) != 2:
+    print('getJobStatuses requires 2 args')
+    sys.exit(1)
+  pp.pprint(client.getJobStatuses(eval(args[0]),args[1],))
+
+elif cmd == 'getJobDetails':
+  if len(args) != 2:
+    print('getJobDetails requires 2 args')
+    sys.exit(1)
+  pp.pprint(client.getJobDetails(eval(args[0]),args[1],))
+
+elif cmd == 'cloneExperiment':
+  if len(args) != 3:
+    print('cloneExperiment requires 3 args')
+    sys.exit(1)
+  pp.pprint(client.cloneExperiment(eval(args[0]),args[1],args[2],))
+
+elif cmd == 'terminateExperiment':
+  if len(args) != 3:
+    print('terminateExperiment requires 3 args')
+    sys.exit(1)
+  pp.pprint(client.terminateExperiment(eval(args[0]),args[1],args[2],))
+
+elif cmd == 'registerApplicationModule':
+  if len(args) != 3:
+    print('registerApplicationModule requires 3 args')
+    sys.exit(1)
+  pp.pprint(client.registerApplicationModule(eval(args[0]),args[1],eval(args[2]),))
+
+elif cmd == 'getApplicationModule':
+  if len(args) != 2:
+    print('getApplicationModule requires 2 args')
+    sys.exit(1)
+  pp.pprint(client.getApplicationModule(eval(args[0]),args[1],))
+
+elif cmd == 'updateApplicationModule':
+  if len(args) != 3:
+    print('updateApplicationModule requires 3 args')
+    sys.exit(1)
+  pp.pprint(client.updateApplicationModule(eval(args[0]),args[1],eval(args[2]),))
+
+elif cmd == 'getAllAppModules':
+  if len(args) != 2:
+    print('getAllAppModules requires 2 args')
+    sys.exit(1)
+  pp.pprint(client.getAllAppModules(eval(args[0]),args[1],))
+
+elif cmd == 'deleteApplicationModule':
+  if len(args) != 2:
+    print('deleteApplicationModule requires 2 args')
+    sys.exit(1)
+  pp.pprint(client.deleteApplicationModule(eval(args[0]),args[1],))
+
+elif cmd == 'registerApplicationDeployment':
+  if len(args) != 3:
+    print('registerApplicationDeployment requires 3 args')
+    sys.exit(1)
+  pp.pprint(client.registerApplicationDeployment(eval(args[0]),args[1],eval(args[2]),))
+
+elif cmd == 'getApplicationDeployment':
+  if len(args) != 2:
+    print('getApplicationDeployment requires 2 args')
+    sys.exit(1)
+  pp.pprint(client.getApplicationDeployment(eval(args[0]),args[1],))
+
+elif cmd == 'updateApplicationDeployment':
+  if len(args) != 3:
+    print('updateApplicationDeployment requires 3 args')
+    sys.exit(1)
+  pp.pprint(client.updateApplicationDeployment(eval(args[0]),args[1],eval(args[2]),))
+
+elif cmd == 'deleteApplicationDeployment':
+  if len(args) != 2:
+    print('deleteApplicationDeployment requires 2 args')
+    sys.exit(1)
+  pp.pprint(client.deleteApplicationDeployment(eval(args[0]),args[1],))
+
+elif cmd == 'getAllApplicationDeployments':
+  if len(args) != 2:
+    print('getAllApplicationDeployments requires 2 args')
+    sys.exit(1)
+  pp.pprint(client.getAllApplicationDeployments(eval(args[0]),args[1],))
+
+elif cmd == 'getAppModuleDeployedResources':
+  if len(args) != 2:
+    print('getAppModuleDeployedResources requires 2 args')
+    sys.exit(1)
+  pp.pprint(client.getAppModuleDeployedResources(eval(args[0]),args[1],))
+
+elif cmd == 'registerApplicationInterface':
+  if len(args) != 3:
+    print('registerApplicationInterface requires 3 args')
+    sys.exit(1)
+  pp.pprint(client.registerApplicationInterface(eval(args[0]),args[1],eval(args[2]),))
+
+elif cmd == 'getApplicationInterface':
+  if len(args) != 2:
+    print('getApplicationInterface requires 2 args')
+    sys.exit(1)
+  pp.pprint(client.getApplicationInterface(eval(args[0]),args[1],))
+
+elif cmd == 'updateApplicationInterface':
+  if len(args) != 3:
+    print('updateApplicationInterface requires 3 args')
+    sys.exit(1)
+  pp.pprint(client.updateApplicationInterface(eval(args[0]),args[1],eval(args[2]),))
+
+elif cmd == 'deleteApplicationInterface':
+  if len(args) != 2:
+    print('deleteApplicationInterface requires 2 args')
+    sys.exit(1)
+  pp.pprint(client.deleteApplicationInterface(eval(args[0]),args[1],))
+
+elif cmd == 'getAllApplicationInterfaceNames':
+  if len(args) != 2:
+    print('getAllApplicationInterfaceNames requires 2 args')
+    sys.exit(1)
+  pp.pprint(client.getAllApplicationInterfaceNames(eval(args[0]),args[1],))
+
+elif cmd == 'getAllApplicationInterfaces':
+  if len(args) != 2:
+    print('getAllApplicationInterfaces requires 2 args')
+    sys.exit(1)
+  pp.pprint(client.getAllApplicationInterfaces(eval(args[0]),args[1],))
+
+elif cmd == 'getApplicationInputs':
+  if len(args) != 2:
+    print('getApplicationInputs requires 2 args')
+    sys.exit(1)
+  pp.pprint(client.getApplicationInputs(eval(args[0]),args[1],))
+
+elif cmd == 'getApplicationOutputs':
+  if len(args) != 2:
+    print('getApplicationOutputs requires 2 args')
+    sys.exit(1)
+  pp.pprint(client.getApplicationOutputs(eval(args[0]),args[1],))
+
+elif cmd == 'getAvailableAppInterfaceComputeResources':
+  if len(args) != 2:
+    print('getAvailableAppInterfaceComputeResources requires 2 args')
+    sys.exit(1)
+  pp.pprint(client.getAvailableAppInterfaceComputeResources(eval(args[0]),args[1],))
+
+elif cmd == 'registerComputeResource':
+  if len(args) != 2:
+    print('registerComputeResource requires 2 args')
+    sys.exit(1)
+  pp.pprint(client.registerComputeResource(eval(args[0]),eval(args[1]),))
+
+elif cmd == 'getComputeResource':
+  if len(args) != 2:
+    print('getComputeResource requires 2 args')
+    sys.exit(1)
+  pp.pprint(client.getComputeResource(eval(args[0]),args[1],))
+
+elif cmd == 'getAllComputeResourceNames':
+  if len(args) != 1:
+    print('getAllComputeResourceNames requires 1 args')
+    sys.exit(1)
+  pp.pprint(client.getAllComputeResourceNames(eval(args[0]),))
+
+elif cmd == 'updateComputeResource':
+  if len(args) != 3:
+    print('updateComputeResource requires 3 args')
+    sys.exit(1)
+  pp.pprint(client.updateComputeResource(eval(args[0]),args[1],eval(args[2]),))
+
+elif cmd == 'deleteComputeResource':
+  if len(args) != 2:
+    print('deleteComputeResource requires 2 args')
+    sys.exit(1)
+  pp.pprint(client.deleteComputeResource(eval(args[0]),args[1],))
+
+elif cmd == 'addLocalSubmissionDetails':
+  if len(args) != 4:
+    print('addLocalSubmissionDetails requires 4 args')
+    sys.exit(1)
+  pp.pprint(client.addLocalSubmissionDetails(eval(args[0]),args[1],eval(args[2]),eval(args[3]),))
+
+elif cmd == 'updateLocalSubmissionDetails':
+  if len(args) != 3:
+    print('updateLocalSubmissionDetails requires 3 args')
+    sys.exit(1)
+  pp.pprint(client.updateLocalSubmissionDetails(eval(args[0]),args[1],eval(args[2]),))
+
+elif cmd == 'getLocalJobSubmission':
+  if len(args) != 2:
+    print('getLocalJobSubmission requires 2 args')
+    sys.exit(1)
+  pp.pprint(client.getLocalJobSubmission(eval(args[0]),args[1],))
+
+elif cmd == 'addSSHJobSubmissionDetails':
+  if len(args) != 4:
+    print('addSSHJobSubmissionDetails requires 4 args')
+    sys.exit(1)
+  pp.pprint(client.addSSHJobSubmissionDetails(eval(args[0]),args[1],eval(args[2]),eval(args[3]),))
+
+elif cmd == 'addSSHForkJobSubmissionDetails':
+  if len(args) != 4:
+    print('addSSHForkJobSubmissionDetails requires 4 args')
+    sys.exit(1)
+  pp.pprint(client.addSSHForkJobSubmissionDetails(eval(args[0]),args[1],eval(args[2]),eval(args[3]),))
+
+elif cmd == 'getSSHJobSubmission':
+  if len(args) != 2:
+    print('getSSHJobSubmission requires 2 args')
+    sys.exit(1)
+  pp.pprint(client.getSSHJobSubmission(eval(args[0]),args[1],))
+
+elif cmd == 'addUNICOREJobSubmissionDetails':
+  if len(args) != 4:
+    print('addUNICOREJobSubmissionDetails requires 4 args')
+    sys.exit(1)
+  pp.pprint(client.addUNICOREJobSubmissionDetails(eval(args[0]),args[1],eval(args[2]),eval(args[3]),))
+
+elif cmd == 'getUnicoreJobSubmission':
+  if len(args) != 2:
+    print('getUnicoreJobSubmission requires 2 args')
+    sys.exit(1)
+  pp.pprint(client.getUnicoreJobSubmission(eval(args[0]),args[1],))
+
+elif cmd == 'addCloudJobSubmissionDetails':
+  if len(args) != 4:
+    print('addCloudJobSubmissionDetails requires 4 args')
+    sys.exit(1)
+  pp.pprint(client.addCloudJobSubmissionDetails(eval(args[0]),args[1],eval(args[2]),eval(args[3]),))
+
+elif cmd == 'getCloudJobSubmission':
+  if len(args) != 2:
+    print('getCloudJobSubmission requires 2 args')
+    sys.exit(1)
+  pp.pprint(client.getCloudJobSubmission(eval(args[0]),args[1],))
+
+elif cmd == 'updateSSHJobSubmissionDetails':
+  if len(args) != 3:
+    print('updateSSHJobSubmissionDetails requires 3 args')
+    sys.exit(1)
+  pp.pprint(client.updateSSHJobSubmissionDetails(eval(args[0]),args[1],eval(args[2]),))
+
+elif cmd == 'updateCloudJobSubmissionDetails':
+  if len(args) != 3:
+    print('updateCloudJobSubmissionDetails requires 3 args')
+    sys.exit(1)
+  pp.pprint(client.updateCloudJobSubmissionDetails(eval(args[0]),args[1],eval(args[2]),))
+
+elif cmd == 'updateUnicoreJobSubmissionDetails':
+  if len(args) != 3:
+    print('updateUnicoreJobSubmissionDetails requires 3 args')
+    sys.exit(1)
+  pp.pprint(client.updateUnicoreJobSubmissionDetails(eval(args[0]),args[1],eval(args[2]),))
+
+elif cmd == 'addLocalDataMovementDetails':
+  if len(args) != 4:
+    print('addLocalDataMovementDetails requires 4 args')
+    sys.exit(1)
+  pp.pprint(client.addLocalDataMovementDetails(eval(args[0]),args[1],eval(args[2]),eval(args[3]),))
+
+elif cmd == 'updateLocalDataMovementDetails':
+  if len(args) != 3:
+    print('updateLocalDataMovementDetails requires 3 args')
+    sys.exit(1)
+  pp.pprint(client.updateLocalDataMovementDetails(eval(args[0]),args[1],eval(args[2]),))
+
+elif cmd == 'getLocalDataMovement':
+  if len(args) != 2:
+    print('getLocalDataMovement requires 2 args')
+    sys.exit(1)
+  pp.pprint(client.getLocalDataMovement(eval(args[0]),args[1],))
+
+elif cmd == 'addSCPDataMovementDetails':
+  if len(args) != 4:
+    print('addSCPDataMovementDetails requires 4 args')
+    sys.exit(1)
+  pp.pprint(client.addSCPDataMovementDetails(eval(args[0]),args[1],eval(args[2]),eval(args[3]),))
+
+elif cmd == 'updateSCPDataMovementDetails':
+  if len(args) != 3:
+    print('updateSCPDataMovementDetails requires 3 args')
+    sys.exit(1)
+  pp.pprint(client.updateSCPDataMovementDetails(eval(args[0]),args[1],eval(args[2]),))
+
+elif cmd == 'getSCPDataMovement':
+  if len(args) != 2:
+    print('getSCPDataMovement requires 2 args')
+    sys.exit(1)
+  pp.pprint(client.getSCPDataMovement(eval(args[0]),args[1],))
+
+elif cmd == 'addUnicoreDataMovementDetails':
+  if len(args) != 4:
+    print('addUnicoreDataMovementDetails requires 4 args')
+    sys.exit(1)
+  pp.pprint(client.addUnicoreDataMovementDetails(eval(args[0]),args[1],eval(args[2]),eval(args[3]),))
+
+elif cmd == 'updateUnicoreDataMovementDetails':
+  if len(args) != 3:
+    print('updateUnicoreDataMovementDetails requires 3 args')
+    sys.exit(1)
+  pp.pprint(client.updateUnicoreDataMovementDetails(eval(args[0]),args[1],eval(args[2]),))
+
+elif cmd == 'getUnicoreDataMovement':
+  if len(args) != 2:
+    print('getUnicoreDataMovement requires 2 args')
+    sys.exit(1)
+  pp.pprint(client.getUnicoreDataMovement(eval(args[0]),args[1],))
+
+elif cmd == 'addGridFTPDataMovementDetails':
+  if len(args) != 4:
+    print('addGridFTPDataMovementDetails requires 4 args')
+    sys.exit(1)
+  pp.pprint(client.addGridFTPDataMovementDetails(eval(args[0]),args[1],eval(args[2]),eval(args[3]),))
+
+elif cmd == 'updateGridFTPDataMovementDetails':
+  if len(args) != 3:
+    print('updateGridFTPDataMovementDetails requires 3 args')
+    sys.exit(1)
+  pp.pprint(client.updateGridFTPDataMovementDetails(eval(args[0]),args[1],eval(args[2]),))
+
+elif cmd == 'getGridFTPDataMovement':
+  if len(args) != 2:
+    print('getGridFTPDataMovement requires 2 args')
+    sys.exit(1)
+  pp.pprint(client.getGridFTPDataMovement(eval(args[0]),args[1],))
+
+elif cmd == 'changeJobSubmissionPriority':
+  if len(args) != 3:
+    print('changeJobSubmissionPriority requires 3 args')
+    sys.exit(1)
+  pp.pprint(client.changeJobSubmissionPriority(eval(args[0]),args[1],eval(args[2]),))
+
+elif cmd == 'changeDataMovementPriority':
+  if len(args) != 3:
+    print('changeDataMovementPriority requires 3 args')
+    sys.exit(1)
+  pp.pprint(client.changeDataMovementPriority(eval(args[0]),args[1],eval(args[2]),))
+
+elif cmd == 'changeJobSubmissionPriorities':
+  if len(args) != 2:
+    print('changeJobSubmissionPriorities requires 2 args')
+    sys.exit(1)
+  pp.pprint(client.changeJobSubmissionPriorities(eval(args[0]),eval(args[1]),))
+
+elif cmd == 'changeDataMovementPriorities':
+  if len(args) != 2:
+    print('changeDataMovementPriorities requires 2 args')
+    sys.exit(1)
+  pp.pprint(client.changeDataMovementPriorities(eval(args[0]),eval(args[1]),))
+
+elif cmd == 'deleteJobSubmissionInterface':
+  if len(args) != 3:
+    print('deleteJobSubmissionInterface requires 3 args')
+    sys.exit(1)
+  pp.pprint(client.deleteJobSubmissionInterface(eval(args[0]),args[1],args[2],))
+
+elif cmd == 'deleteDataMovementInterface':
+  if len(args) != 3:
+    print('deleteDataMovementInterface requires 3 args')
+    sys.exit(1)
+  pp.pprint(client.deleteDataMovementInterface(eval(args[0]),args[1],args[2],))
+
+elif cmd == 'registerResourceJobManager':
+  if len(args) != 2:
+    print('registerResourceJobManager requires 2 args')
+    sys.exit(1)
+  pp.pprint(client.registerResourceJobManager(eval(args[0]),eval(args[1]),))
+
+elif cmd == 'updateResourceJobManager':
+  if len(args) != 3:
+    print('updateResourceJobManager requires 3 args')
+    sys.exit(1)
+  pp.pprint(client.updateResourceJobManager(eval(args[0]),args[1],eval(args[2]),))
+
+elif cmd == 'getResourceJobManager':
+  if len(args) != 2:
+    print('getResourceJobManager requires 2 args')
+    sys.exit(1)
+  pp.pprint(client.getResourceJobManager(eval(args[0]),args[1],))
+
+elif cmd == 'deleteResourceJobManager':
+  if len(args) != 2:
+    print('deleteResourceJobManager requires 2 args')
+    sys.exit(1)
+  pp.pprint(client.deleteResourceJobManager(eval(args[0]),args[1],))
+
+elif cmd == 'deleteBatchQueue':
+  if len(args) != 3:
+    print('deleteBatchQueue requires 3 args')
+    sys.exit(1)
+  pp.pprint(client.deleteBatchQueue(eval(args[0]),args[1],args[2],))
+
+elif cmd == 'registerGatewayResourceProfile':
+  if len(args) != 2:
+    print('registerGatewayResourceProfile requires 2 args')
+    sys.exit(1)
+  pp.pprint(client.registerGatewayResourceProfile(eval(args[0]),eval(args[1]),))
+
+elif cmd == 'getGatewayResourceProfile':
+  if len(args) != 2:
+    print('getGatewayResourceProfile requires 2 args')
+    sys.exit(1)
+  pp.pprint(client.getGatewayResourceProfile(eval(args[0]),args[1],))
+
+elif cmd == 'updateGatewayResourceProfile':
+  if len(args) != 3:
+    print('updateGatewayResourceProfile requires 3 args')
+    sys.exit(1)
+  pp.pprint(client.updateGatewayResourceProfile(eval(args[0]),args[1],eval(args[2]),))
+
+elif cmd == 'deleteGatewayResourceProfile':
+  if len(args) != 2:
+    print('deleteGatewayResourceProfile requires 2 args')
+    sys.exit(1)
+  pp.pprint(client.deleteGatewayResourceProfile(eval(args[0]),args[1],))
+
+elif cmd == 'addGatewayComputeResourcePreference':
+  if len(args) != 4:
+    print('addGatewayComputeResourcePreference requires 4 args')
+    sys.exit(1)
+  pp.pprint(client.addGatewayComputeResourcePreference(eval(args[0]),args[1],args[2],eval(args[3]),))
+
+elif cmd == 'addGatewayDataStoragePreference':
+  if len(args) != 4:
+    print('addGatewayDataStoragePreference requires 4 args')
+    sys.exit(1)
+  pp.pprint(client.addGatewayDataStoragePreference(eval(args[0]),args[1],args[2],eval(args[3]),))
+
+elif cmd == 'getGatewayComputeResourcePreference':
+  if len(args) != 3:
+    print('getGatewayComputeResourcePreference requires 3 args')
+    sys.exit(1)
+  pp.pprint(client.getGatewayComputeResourcePreference(eval(args[0]),args[1],args[2],))
+
+elif cmd == 'getGatewayDataStoragePreference':
+  if len(args) != 3:
+    print('getGatewayDataStoragePreference requires 3 args')
+    sys.exit(1)
+  pp.pprint(client.getGatewayDataStoragePreference(eval(args[0]),args[1],args[2],))
+
+elif cmd == 'getAllGatewayComputeResourcePreferences':
+  if len(args) != 2:
+    print('getAllGatewayComputeResourcePreferences requires 2 args')
+    sys.exit(1)
+  pp.pprint(client.getAllGatewayComputeResourcePreferences(eval(args[0]),args[1],))
+
+elif cmd == 'getAllGatewayDataStoragePreferences':
+  if len(args) != 2:
+    print('getAllGatewayDataStoragePreferences requires 2 args')
+    sys.exit(1)
+  pp.pprint(client.getAllGatewayDataStoragePreferences(eval(args[0]),args[1],))
+
+elif cmd == 'getAllGatewayResourceProfiles':
+  if len(args) != 1:
+    print('getAllGatewayResourceProfiles requires 1 args')
+    sys.exit(1)
+  pp.pprint(client.getAllGatewayResourceProfiles(eval(args[0]),))
+
+elif cmd == 'updateGatewayComputeResourcePreference':
+  if len(args) != 4:
+    print('updateGatewayComputeResourcePreference requires 4 args')
+    sys.exit(1)
+  pp.pprint(client.updateGatewayComputeResourcePreference(eval(args[0]),args[1],args[2],eval(args[3]),))
+
+elif cmd == 'updateGatewayDataStoragePreference':
+  if len(args) != 4:
+    print('updateGatewayDataStoragePreference requires 4 args')
+    sys.exit(1)
+  pp.pprint(client.updateGatewayDataStoragePreference(eval(args[0]),args[1],args[2],eval(args[3]),))
+
+elif cmd == 'deleteGatewayComputeResourcePreference':
+  if len(args) != 3:
+    print('deleteGatewayComputeResourcePreference requires 3 args')
+    sys.exit(1)
+  pp.pprint(client.deleteGatewayComputeResourcePreference(eval(args[0]),args[1],args[2],))
+
+elif cmd == 'deleteGatewayDataStoragePreference':
+  if len(args) != 3:
+    print('deleteGatewayDataStoragePreference requires 3 args')
+    sys.exit(1)
+  pp.pprint(client.deleteGatewayDataStoragePreference(eval(args[0]),args[1],args[2],))
+
+elif cmd == 'getAllWorkflows':
+  if len(args) != 2:
+    print('getAllWorkflows requires 2 args')
+    sys.exit(1)
+  pp.pprint(client.getAllWorkflows(eval(args[0]),args[1],))
+
+elif cmd == 'getWorkflow':
+  if len(args) != 2:
+    print('getWorkflow requires 2 args')
+    sys.exit(1)
+  pp.pprint(client.getWorkflow(eval(args[0]),args[1],))
+
+elif cmd == 'deleteWorkflow':
+  if len(args) != 2:
+    print('deleteWorkflow requires 2 args')
+    sys.exit(1)
+  pp.pprint(client.deleteWorkflow(eval(args[0]),args[1],))
+
+elif cmd == 'registerWorkflow':
+  if len(args) != 3:
+    print('registerWorkflow requires 3 args')
+    sys.exit(1)
+  pp.pprint(client.registerWorkflow(eval(args[0]),args[1],eval(args[2]),))
+
+elif cmd == 'updateWorkflow':
+  if len(args) != 3:
+    print('updateWorkflow requires 3 args')
+    sys.exit(1)
+  pp.pprint(client.updateWorkflow(eval(args[0]),args[1],eval(args[2]),))
+
+elif cmd == 'getWorkflowTemplateId':
+  if len(args) != 2:
+    print('getWorkflowTemplateId requires 2 args')
+    sys.exit(1)
+  pp.pprint(client.getWorkflowTemplateId(eval(args[0]),args[1],))
+
+elif cmd == 'isWorkflowExistWithName':
+  if len(args) != 2:
+    print('isWorkflowExistWithName requires 2 args')
+    sys.exit(1)
+  pp.pprint(client.isWorkflowExistWithName(eval(args[0]),args[1],))
+
+else:
+  print('Unrecognized method %s' % cmd)
+  sys.exit(1)
+
+transport.close()