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 2015/03/03 22:47:46 UTC

[4/5] airavata git commit: Adding gatewayId to relavent API methods to ensure multi-tentant scenarious will work - AIRAVATA-1607

http://git-wip-us.apache.org/repos/asf/airavata/blob/8be59881/airavata-api/airavata-api-stubs/src/main/java/org/apache/airavata/api/Airavata.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-api-stubs/src/main/java/org/apache/airavata/api/Airavata.java b/airavata-api/airavata-api-stubs/src/main/java/org/apache/airavata/api/Airavata.java
index 5cfbbc1..f893bb6 100644
--- a/airavata-api/airavata-api-stubs/src/main/java/org/apache/airavata/api/Airavata.java
+++ b/airavata-api/airavata-api-stubs/src/main/java/org/apache/airavata/api/Airavata.java
@@ -74,7 +74,7 @@ import org.slf4j.LoggerFactory;
      * Generate and Register SSH Key Pair with Airavata Credential Store.
      * 
      * @param gatewayId
-     *    The identifier for the requested experiment. This is returned during the create experiment step.
+     *    The identifier for the requested gateway.
      * 
      * @param userName
      *    The User for which the credential should be registered. For community accounts, this user is the name of the
@@ -96,12 +96,20 @@ import org.slf4j.LoggerFactory;
     public Map<String,String> getAllUserSSHPubKeys(String userName) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException;
 
     /**
-     * Create a Project
+     * Creates a Project with basic metadata.
+     *    A Project is a container of experiments.
+     * 
+     * @param gatewayId
+     *    The identifier for the requested gateway.
      * 
+     * @param Project
+     *    The Project Object described in the workspaceModel
      * 
+     * 
+     * @param gatewayId
      * @param project
      */
-    public String createProject(org.apache.airavata.model.workspace.Project project) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException;
+    public String createProject(String gatewayId, org.apache.airavata.model.workspace.Project project) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException;
 
     /**
      * Update a Project
@@ -121,76 +129,91 @@ import org.slf4j.LoggerFactory;
     public org.apache.airavata.model.workspace.Project getProject(String projectId) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.airavata.model.error.ProjectNotFoundException, org.apache.thrift.TException;
 
     /**
-     * Get all Project by user
-     * 
+     *   * Get all Project by user
+     *   *
+     *   * @param gatewayId
+     *   *    The identifier for the requested gateway.
+     *   *
+     *   * @param userName
+     *   *    The Project Object described in the workspaceModel
+     *   *
+     * *
      * 
+     * @param gatewayId
      * @param userName
      */
-    public List<org.apache.airavata.model.workspace.Project> getAllUserProjects(String userName) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException;
+    public List<org.apache.airavata.model.workspace.Project> getAllUserProjects(String gatewayId, String userName) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException;
 
     /**
      * Get all Project for user by project name
      * 
      * 
+     * @param gatewayId
      * @param userName
      * @param projectName
      */
-    public List<org.apache.airavata.model.workspace.Project> searchProjectsByProjectName(String userName, String projectName) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException;
+    public List<org.apache.airavata.model.workspace.Project> searchProjectsByProjectName(String gatewayId, String userName, String projectName) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException;
 
     /**
      * Get all Project for user by project description
      * 
      * 
+     * @param gatewayId
      * @param userName
      * @param description
      */
-    public List<org.apache.airavata.model.workspace.Project> searchProjectsByProjectDesc(String userName, String description) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException;
+    public List<org.apache.airavata.model.workspace.Project> searchProjectsByProjectDesc(String gatewayId, String userName, String description) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException;
 
     /**
      * Search Experiments by experiment name
      * 
      * 
+     * @param gatewayId
      * @param userName
      * @param expName
      */
-    public List<org.apache.airavata.model.workspace.experiment.ExperimentSummary> searchExperimentsByName(String userName, String expName) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException;
+    public List<org.apache.airavata.model.workspace.experiment.ExperimentSummary> searchExperimentsByName(String gatewayId, String userName, String expName) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException;
 
     /**
      * Search Experiments by experiment name
      * 
      * 
+     * @param gatewayId
      * @param userName
      * @param description
      */
-    public List<org.apache.airavata.model.workspace.experiment.ExperimentSummary> searchExperimentsByDesc(String userName, String description) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException;
+    public List<org.apache.airavata.model.workspace.experiment.ExperimentSummary> searchExperimentsByDesc(String gatewayId, String userName, String description) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException;
 
     /**
      * Search Experiments by application id
      * 
      * 
+     * @param gatewayId
      * @param userName
      * @param applicationId
      */
-    public List<org.apache.airavata.model.workspace.experiment.ExperimentSummary> searchExperimentsByApplication(String userName, String applicationId) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException;
+    public List<org.apache.airavata.model.workspace.experiment.ExperimentSummary> searchExperimentsByApplication(String gatewayId, String userName, String applicationId) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException;
 
     /**
      * Search Experiments by experiment status
      * 
      * 
+     * @param gatewayId
      * @param userName
      * @param experimentState
      */
-    public List<org.apache.airavata.model.workspace.experiment.ExperimentSummary> searchExperimentsByStatus(String userName, org.apache.airavata.model.workspace.experiment.ExperimentState experimentState) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException;
+    public List<org.apache.airavata.model.workspace.experiment.ExperimentSummary> searchExperimentsByStatus(String gatewayId, String userName, org.apache.airavata.model.workspace.experiment.ExperimentState experimentState) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException;
 
     /**
      * Search Experiments by experiment status
      * 
      * 
+     * @param gatewayId
      * @param userName
      * @param fromTime
      * @param toTime
      */
-    public List<org.apache.airavata.model.workspace.experiment.ExperimentSummary> searchExperimentsByCreationTime(String userName, long fromTime, long toTime) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException;
+    public List<org.apache.airavata.model.workspace.experiment.ExperimentSummary> searchExperimentsByCreationTime(String gatewayId, String userName, long fromTime, long toTime) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException;
 
     /**
      * Get all Experiments within a Project
@@ -204,9 +227,10 @@ import org.slf4j.LoggerFactory;
      * Get all Experiments by user
      * 
      * 
+     * @param gatewayId
      * @param userName
      */
-    public List<org.apache.airavata.model.workspace.experiment.Experiment> getAllUserExperiments(String userName) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException;
+    public List<org.apache.airavata.model.workspace.experiment.Experiment> getAllUserExperiments(String gatewayId, String userName) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException;
 
     /**
      * Create an experiment for the specified user belonging to the gateway. The gateway identity is not explicitly passed
@@ -243,9 +267,10 @@ import org.slf4j.LoggerFactory;
      *       rather an Airavata Administrator will be notified to take corrective action.
      * 
      * 
+     * @param gatewayId
      * @param experiment
      */
-    public String createExperiment(org.apache.airavata.model.workspace.experiment.Experiment experiment) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException;
+    public String createExperiment(String gatewayId, org.apache.airavata.model.workspace.experiment.Experiment experiment) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException;
 
     /**
      * Fetch previously created experiment metadata.
@@ -496,9 +521,10 @@ import org.slf4j.LoggerFactory;
      *   Returns a server-side generated airavata appModule globally unique identifier.
      * 
      * 
+     * @param gatewayId
      * @param applicationModule
      */
-    public String registerApplicationModule(org.apache.airavata.model.appcatalog.appdeployment.ApplicationModule applicationModule) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException;
+    public String registerApplicationModule(String gatewayId, org.apache.airavata.model.appcatalog.appdeployment.ApplicationModule applicationModule) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException;
 
     /**
      * Fetch a Application Module.
@@ -532,7 +558,7 @@ import org.slf4j.LoggerFactory;
      */
     public boolean updateApplicationModule(String appModuleId, org.apache.airavata.model.appcatalog.appdeployment.ApplicationModule applicationModule) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException;
 
-    public List<org.apache.airavata.model.appcatalog.appdeployment.ApplicationModule> getAllAppModules() throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException;
+    public List<org.apache.airavata.model.appcatalog.appdeployment.ApplicationModule> getAllAppModules(String gatewayId) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException;
 
     /**
      * Delete a Application Module.
@@ -558,9 +584,10 @@ import org.slf4j.LoggerFactory;
      *   Returns a server-side generated airavata appDeployment globally unique identifier.
      * 
      * 
+     * @param gatewayId
      * @param applicationDeployment
      */
-    public String registerApplicationDeployment(org.apache.airavata.model.appcatalog.appdeployment.ApplicationDeploymentDescription applicationDeployment) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException;
+    public String registerApplicationDeployment(String gatewayId, org.apache.airavata.model.appcatalog.appdeployment.ApplicationDeploymentDescription applicationDeployment) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException;
 
     /**
      * Fetch a Application Deployment.
@@ -614,8 +641,10 @@ import org.slf4j.LoggerFactory;
      * @return list<applicationDeployment.
      *   Returns the list of all application Deployment Objects.
      * 
+     * 
+     * @param gatewayId
      */
-    public List<org.apache.airavata.model.appcatalog.appdeployment.ApplicationDeploymentDescription> getAllApplicationDeployments() throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException;
+    public List<org.apache.airavata.model.appcatalog.appdeployment.ApplicationDeploymentDescription> getAllApplicationDeployments(String gatewayId) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException;
 
     /**
      * Fetch a list of Deployed Compute Hosts.
@@ -641,9 +670,10 @@ import org.slf4j.LoggerFactory;
      *   Returns a server-side generated airavata application interface globally unique identifier.
      * 
      * 
+     * @param gatewayId
      * @param applicationInterface
      */
-    public String registerApplicationInterface(org.apache.airavata.model.appcatalog.appinterface.ApplicationInterfaceDescription applicationInterface) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException;
+    public String registerApplicationInterface(String gatewayId, org.apache.airavata.model.appcatalog.appinterface.ApplicationInterfaceDescription applicationInterface) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException;
 
     /**
      * Fetch a Application Interface.
@@ -701,8 +731,10 @@ import org.slf4j.LoggerFactory;
      * @return map<applicationId, applicationInterfaceNames>
      *   Returns a list of application interfaces with corresponsing id's
      * 
+     * 
+     * @param gatewayId
      */
-    public Map<String,String> getAllApplicationInterfaceNames() throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException;
+    public Map<String,String> getAllApplicationInterfaceNames(String gatewayId) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException;
 
     /**
      * Fetch all Application Interface documents.
@@ -711,8 +743,10 @@ import org.slf4j.LoggerFactory;
      * @return map<applicationId, applicationInterfaceNames>
      *   Returns a list of application interfaces documents
      * 
+     * 
+     * @param gatewayId
      */
-    public List<org.apache.airavata.model.appcatalog.appinterface.ApplicationInterfaceDescription> getAllApplicationInterfaces() throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException;
+    public List<org.apache.airavata.model.appcatalog.appinterface.ApplicationInterfaceDescription> getAllApplicationInterfaces(String gatewayId) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException;
 
     /**
      * Fetch the list of Application Inputs.
@@ -1449,13 +1483,13 @@ import org.slf4j.LoggerFactory;
      */
     public boolean deleteGatewayComputeResourcePreference(String gatewayID, String computeResourceId) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException;
 
-    public List<String> getAllWorkflows() throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException;
+    public List<String> getAllWorkflows(String gatewayId) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException;
 
     public org.apache.airavata.model.Workflow getWorkflow(String workflowTemplateId) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException;
 
     public void deleteWorkflow(String workflowTemplateId) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException;
 
-    public String registerWorkflow(org.apache.airavata.model.Workflow workflow) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException;
+    public String registerWorkflow(String gatewayId, org.apache.airavata.model.Workflow workflow) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException;
 
     public void updateWorkflow(String workflowTemplateId, org.apache.airavata.model.Workflow workflow) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException;
 
@@ -1487,33 +1521,33 @@ import org.slf4j.LoggerFactory;
 
     public void getAllUserSSHPubKeys(String userName, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
-    public void createProject(org.apache.airavata.model.workspace.Project project, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+    public void createProject(String gatewayId, org.apache.airavata.model.workspace.Project project, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
     public void updateProject(String projectId, org.apache.airavata.model.workspace.Project updatedProject, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
     public void getProject(String projectId, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
-    public void getAllUserProjects(String userName, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+    public void getAllUserProjects(String gatewayId, String userName, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
-    public void searchProjectsByProjectName(String userName, String projectName, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+    public void searchProjectsByProjectName(String gatewayId, String userName, String projectName, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
-    public void searchProjectsByProjectDesc(String userName, String description, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+    public void searchProjectsByProjectDesc(String gatewayId, String userName, String description, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
-    public void searchExperimentsByName(String userName, String expName, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+    public void searchExperimentsByName(String gatewayId, String userName, String expName, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
-    public void searchExperimentsByDesc(String userName, String description, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+    public void searchExperimentsByDesc(String gatewayId, String userName, String description, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
-    public void searchExperimentsByApplication(String userName, String applicationId, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+    public void searchExperimentsByApplication(String gatewayId, String userName, String applicationId, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
-    public void searchExperimentsByStatus(String userName, org.apache.airavata.model.workspace.experiment.ExperimentState experimentState, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+    public void searchExperimentsByStatus(String gatewayId, String userName, org.apache.airavata.model.workspace.experiment.ExperimentState experimentState, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
-    public void searchExperimentsByCreationTime(String userName, long fromTime, long toTime, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+    public void searchExperimentsByCreationTime(String gatewayId, String userName, long fromTime, long toTime, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
     public void getAllExperimentsInProject(String projectId, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
-    public void getAllUserExperiments(String userName, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+    public void getAllUserExperiments(String gatewayId, String userName, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
-    public void createExperiment(org.apache.airavata.model.workspace.experiment.Experiment experiment, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+    public void createExperiment(String gatewayId, org.apache.airavata.model.workspace.experiment.Experiment experiment, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
     public void getExperiment(String airavataExperimentId, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
@@ -1543,17 +1577,17 @@ import org.slf4j.LoggerFactory;
 
     public void terminateExperiment(String airavataExperimentId, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
-    public void registerApplicationModule(org.apache.airavata.model.appcatalog.appdeployment.ApplicationModule applicationModule, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+    public void registerApplicationModule(String gatewayId, org.apache.airavata.model.appcatalog.appdeployment.ApplicationModule applicationModule, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
     public void getApplicationModule(String appModuleId, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
     public void updateApplicationModule(String appModuleId, org.apache.airavata.model.appcatalog.appdeployment.ApplicationModule applicationModule, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
-    public void getAllAppModules(org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+    public void getAllAppModules(String gatewayId, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
     public void deleteApplicationModule(String appModuleId, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
-    public void registerApplicationDeployment(org.apache.airavata.model.appcatalog.appdeployment.ApplicationDeploymentDescription applicationDeployment, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+    public void registerApplicationDeployment(String gatewayId, org.apache.airavata.model.appcatalog.appdeployment.ApplicationDeploymentDescription applicationDeployment, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
     public void getApplicationDeployment(String appDeploymentId, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
@@ -1561,11 +1595,11 @@ import org.slf4j.LoggerFactory;
 
     public void deleteApplicationDeployment(String appDeploymentId, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
-    public void getAllApplicationDeployments(org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+    public void getAllApplicationDeployments(String gatewayId, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
     public void getAppModuleDeployedResources(String appModuleId, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
-    public void registerApplicationInterface(org.apache.airavata.model.appcatalog.appinterface.ApplicationInterfaceDescription applicationInterface, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+    public void registerApplicationInterface(String gatewayId, org.apache.airavata.model.appcatalog.appinterface.ApplicationInterfaceDescription applicationInterface, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
     public void getApplicationInterface(String appInterfaceId, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
@@ -1573,9 +1607,9 @@ import org.slf4j.LoggerFactory;
 
     public void deleteApplicationInterface(String appInterfaceId, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
-    public void getAllApplicationInterfaceNames(org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+    public void getAllApplicationInterfaceNames(String gatewayId, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
-    public void getAllApplicationInterfaces(org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+    public void getAllApplicationInterfaces(String gatewayId, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
     public void getApplicationInputs(String appInterfaceId, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
@@ -1683,13 +1717,13 @@ import org.slf4j.LoggerFactory;
 
     public void deleteGatewayComputeResourcePreference(String gatewayID, String computeResourceId, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
-    public void getAllWorkflows(org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+    public void getAllWorkflows(String gatewayId, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
     public void getWorkflow(String workflowTemplateId, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
     public void deleteWorkflow(String workflowTemplateId, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
-    public void registerWorkflow(org.apache.airavata.model.Workflow workflow, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+    public void registerWorkflow(String gatewayId, org.apache.airavata.model.Workflow workflow, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
     public void updateWorkflow(String workflowTemplateId, org.apache.airavata.model.Workflow workflow, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
@@ -2036,15 +2070,16 @@ import org.slf4j.LoggerFactory;
       throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "getAllUserSSHPubKeys failed: unknown result");
     }
 
-    public String createProject(org.apache.airavata.model.workspace.Project project) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
+    public String createProject(String gatewayId, org.apache.airavata.model.workspace.Project project) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
     {
-      send_createProject(project);
+      send_createProject(gatewayId, project);
       return recv_createProject();
     }
 
-    public void send_createProject(org.apache.airavata.model.workspace.Project project) throws org.apache.thrift.TException
+    public void send_createProject(String gatewayId, org.apache.airavata.model.workspace.Project project) throws org.apache.thrift.TException
     {
       createProject_args args = new createProject_args();
+      args.setGatewayId(gatewayId);
       args.setProject(project);
       sendBase("createProject", args);
     }
@@ -2136,15 +2171,16 @@ import org.slf4j.LoggerFactory;
       throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "getProject failed: unknown result");
     }
 
-    public List<org.apache.airavata.model.workspace.Project> getAllUserProjects(String userName) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
+    public List<org.apache.airavata.model.workspace.Project> getAllUserProjects(String gatewayId, String userName) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
     {
-      send_getAllUserProjects(userName);
+      send_getAllUserProjects(gatewayId, userName);
       return recv_getAllUserProjects();
     }
 
-    public void send_getAllUserProjects(String userName) throws org.apache.thrift.TException
+    public void send_getAllUserProjects(String gatewayId, String userName) throws org.apache.thrift.TException
     {
       getAllUserProjects_args args = new getAllUserProjects_args();
+      args.setGatewayId(gatewayId);
       args.setUserName(userName);
       sendBase("getAllUserProjects", args);
     }
@@ -2168,15 +2204,16 @@ import org.slf4j.LoggerFactory;
       throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "getAllUserProjects failed: unknown result");
     }
 
-    public List<org.apache.airavata.model.workspace.Project> searchProjectsByProjectName(String userName, String projectName) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
+    public List<org.apache.airavata.model.workspace.Project> searchProjectsByProjectName(String gatewayId, String userName, String projectName) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
     {
-      send_searchProjectsByProjectName(userName, projectName);
+      send_searchProjectsByProjectName(gatewayId, userName, projectName);
       return recv_searchProjectsByProjectName();
     }
 
-    public void send_searchProjectsByProjectName(String userName, String projectName) throws org.apache.thrift.TException
+    public void send_searchProjectsByProjectName(String gatewayId, String userName, String projectName) throws org.apache.thrift.TException
     {
       searchProjectsByProjectName_args args = new searchProjectsByProjectName_args();
+      args.setGatewayId(gatewayId);
       args.setUserName(userName);
       args.setProjectName(projectName);
       sendBase("searchProjectsByProjectName", args);
@@ -2201,15 +2238,16 @@ import org.slf4j.LoggerFactory;
       throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "searchProjectsByProjectName failed: unknown result");
     }
 
-    public List<org.apache.airavata.model.workspace.Project> searchProjectsByProjectDesc(String userName, String description) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
+    public List<org.apache.airavata.model.workspace.Project> searchProjectsByProjectDesc(String gatewayId, String userName, String description) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
     {
-      send_searchProjectsByProjectDesc(userName, description);
+      send_searchProjectsByProjectDesc(gatewayId, userName, description);
       return recv_searchProjectsByProjectDesc();
     }
 
-    public void send_searchProjectsByProjectDesc(String userName, String description) throws org.apache.thrift.TException
+    public void send_searchProjectsByProjectDesc(String gatewayId, String userName, String description) throws org.apache.thrift.TException
     {
       searchProjectsByProjectDesc_args args = new searchProjectsByProjectDesc_args();
+      args.setGatewayId(gatewayId);
       args.setUserName(userName);
       args.setDescription(description);
       sendBase("searchProjectsByProjectDesc", args);
@@ -2234,15 +2272,16 @@ import org.slf4j.LoggerFactory;
       throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "searchProjectsByProjectDesc failed: unknown result");
     }
 
-    public List<org.apache.airavata.model.workspace.experiment.ExperimentSummary> searchExperimentsByName(String userName, String expName) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
+    public List<org.apache.airavata.model.workspace.experiment.ExperimentSummary> searchExperimentsByName(String gatewayId, String userName, String expName) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
     {
-      send_searchExperimentsByName(userName, expName);
+      send_searchExperimentsByName(gatewayId, userName, expName);
       return recv_searchExperimentsByName();
     }
 
-    public void send_searchExperimentsByName(String userName, String expName) throws org.apache.thrift.TException
+    public void send_searchExperimentsByName(String gatewayId, String userName, String expName) throws org.apache.thrift.TException
     {
       searchExperimentsByName_args args = new searchExperimentsByName_args();
+      args.setGatewayId(gatewayId);
       args.setUserName(userName);
       args.setExpName(expName);
       sendBase("searchExperimentsByName", args);
@@ -2267,15 +2306,16 @@ import org.slf4j.LoggerFactory;
       throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "searchExperimentsByName failed: unknown result");
     }
 
-    public List<org.apache.airavata.model.workspace.experiment.ExperimentSummary> searchExperimentsByDesc(String userName, String description) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
+    public List<org.apache.airavata.model.workspace.experiment.ExperimentSummary> searchExperimentsByDesc(String gatewayId, String userName, String description) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
     {
-      send_searchExperimentsByDesc(userName, description);
+      send_searchExperimentsByDesc(gatewayId, userName, description);
       return recv_searchExperimentsByDesc();
     }
 
-    public void send_searchExperimentsByDesc(String userName, String description) throws org.apache.thrift.TException
+    public void send_searchExperimentsByDesc(String gatewayId, String userName, String description) throws org.apache.thrift.TException
     {
       searchExperimentsByDesc_args args = new searchExperimentsByDesc_args();
+      args.setGatewayId(gatewayId);
       args.setUserName(userName);
       args.setDescription(description);
       sendBase("searchExperimentsByDesc", args);
@@ -2300,15 +2340,16 @@ import org.slf4j.LoggerFactory;
       throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "searchExperimentsByDesc failed: unknown result");
     }
 
-    public List<org.apache.airavata.model.workspace.experiment.ExperimentSummary> searchExperimentsByApplication(String userName, String applicationId) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
+    public List<org.apache.airavata.model.workspace.experiment.ExperimentSummary> searchExperimentsByApplication(String gatewayId, String userName, String applicationId) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
     {
-      send_searchExperimentsByApplication(userName, applicationId);
+      send_searchExperimentsByApplication(gatewayId, userName, applicationId);
       return recv_searchExperimentsByApplication();
     }
 
-    public void send_searchExperimentsByApplication(String userName, String applicationId) throws org.apache.thrift.TException
+    public void send_searchExperimentsByApplication(String gatewayId, String userName, String applicationId) throws org.apache.thrift.TException
     {
       searchExperimentsByApplication_args args = new searchExperimentsByApplication_args();
+      args.setGatewayId(gatewayId);
       args.setUserName(userName);
       args.setApplicationId(applicationId);
       sendBase("searchExperimentsByApplication", args);
@@ -2333,15 +2374,16 @@ import org.slf4j.LoggerFactory;
       throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "searchExperimentsByApplication failed: unknown result");
     }
 
-    public List<org.apache.airavata.model.workspace.experiment.ExperimentSummary> searchExperimentsByStatus(String userName, org.apache.airavata.model.workspace.experiment.ExperimentState experimentState) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
+    public List<org.apache.airavata.model.workspace.experiment.ExperimentSummary> searchExperimentsByStatus(String gatewayId, String userName, org.apache.airavata.model.workspace.experiment.ExperimentState experimentState) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
     {
-      send_searchExperimentsByStatus(userName, experimentState);
+      send_searchExperimentsByStatus(gatewayId, userName, experimentState);
       return recv_searchExperimentsByStatus();
     }
 
-    public void send_searchExperimentsByStatus(String userName, org.apache.airavata.model.workspace.experiment.ExperimentState experimentState) throws org.apache.thrift.TException
+    public void send_searchExperimentsByStatus(String gatewayId, String userName, org.apache.airavata.model.workspace.experiment.ExperimentState experimentState) throws org.apache.thrift.TException
     {
       searchExperimentsByStatus_args args = new searchExperimentsByStatus_args();
+      args.setGatewayId(gatewayId);
       args.setUserName(userName);
       args.setExperimentState(experimentState);
       sendBase("searchExperimentsByStatus", args);
@@ -2366,15 +2408,16 @@ import org.slf4j.LoggerFactory;
       throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "searchExperimentsByStatus failed: unknown result");
     }
 
-    public List<org.apache.airavata.model.workspace.experiment.ExperimentSummary> searchExperimentsByCreationTime(String userName, long fromTime, long toTime) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
+    public List<org.apache.airavata.model.workspace.experiment.ExperimentSummary> searchExperimentsByCreationTime(String gatewayId, String userName, long fromTime, long toTime) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
     {
-      send_searchExperimentsByCreationTime(userName, fromTime, toTime);
+      send_searchExperimentsByCreationTime(gatewayId, userName, fromTime, toTime);
       return recv_searchExperimentsByCreationTime();
     }
 
-    public void send_searchExperimentsByCreationTime(String userName, long fromTime, long toTime) throws org.apache.thrift.TException
+    public void send_searchExperimentsByCreationTime(String gatewayId, String userName, long fromTime, long toTime) throws org.apache.thrift.TException
     {
       searchExperimentsByCreationTime_args args = new searchExperimentsByCreationTime_args();
+      args.setGatewayId(gatewayId);
       args.setUserName(userName);
       args.setFromTime(fromTime);
       args.setToTime(toTime);
@@ -2435,15 +2478,16 @@ import org.slf4j.LoggerFactory;
       throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "getAllExperimentsInProject failed: unknown result");
     }
 
-    public List<org.apache.airavata.model.workspace.experiment.Experiment> getAllUserExperiments(String userName) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
+    public List<org.apache.airavata.model.workspace.experiment.Experiment> getAllUserExperiments(String gatewayId, String userName) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
     {
-      send_getAllUserExperiments(userName);
+      send_getAllUserExperiments(gatewayId, userName);
       return recv_getAllUserExperiments();
     }
 
-    public void send_getAllUserExperiments(String userName) throws org.apache.thrift.TException
+    public void send_getAllUserExperiments(String gatewayId, String userName) throws org.apache.thrift.TException
     {
       getAllUserExperiments_args args = new getAllUserExperiments_args();
+      args.setGatewayId(gatewayId);
       args.setUserName(userName);
       sendBase("getAllUserExperiments", args);
     }
@@ -2467,15 +2511,16 @@ import org.slf4j.LoggerFactory;
       throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "getAllUserExperiments failed: unknown result");
     }
 
-    public String createExperiment(org.apache.airavata.model.workspace.experiment.Experiment experiment) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
+    public String createExperiment(String gatewayId, org.apache.airavata.model.workspace.experiment.Experiment experiment) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
     {
-      send_createExperiment(experiment);
+      send_createExperiment(gatewayId, experiment);
       return recv_createExperiment();
     }
 
-    public void send_createExperiment(org.apache.airavata.model.workspace.experiment.Experiment experiment) throws org.apache.thrift.TException
+    public void send_createExperiment(String gatewayId, org.apache.airavata.model.workspace.experiment.Experiment experiment) throws org.apache.thrift.TException
     {
       createExperiment_args args = new createExperiment_args();
+      args.setGatewayId(gatewayId);
       args.setExperiment(experiment);
       sendBase("createExperiment", args);
     }
@@ -2958,15 +3003,16 @@ import org.slf4j.LoggerFactory;
       return;
     }
 
-    public String registerApplicationModule(org.apache.airavata.model.appcatalog.appdeployment.ApplicationModule applicationModule) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
+    public String registerApplicationModule(String gatewayId, org.apache.airavata.model.appcatalog.appdeployment.ApplicationModule applicationModule) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
     {
-      send_registerApplicationModule(applicationModule);
+      send_registerApplicationModule(gatewayId, applicationModule);
       return recv_registerApplicationModule();
     }
 
-    public void send_registerApplicationModule(org.apache.airavata.model.appcatalog.appdeployment.ApplicationModule applicationModule) throws org.apache.thrift.TException
+    public void send_registerApplicationModule(String gatewayId, org.apache.airavata.model.appcatalog.appdeployment.ApplicationModule applicationModule) throws org.apache.thrift.TException
     {
       registerApplicationModule_args args = new registerApplicationModule_args();
+      args.setGatewayId(gatewayId);
       args.setApplicationModule(applicationModule);
       sendBase("registerApplicationModule", args);
     }
@@ -3055,15 +3101,16 @@ import org.slf4j.LoggerFactory;
       throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "updateApplicationModule failed: unknown result");
     }
 
-    public List<org.apache.airavata.model.appcatalog.appdeployment.ApplicationModule> getAllAppModules() throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
+    public List<org.apache.airavata.model.appcatalog.appdeployment.ApplicationModule> getAllAppModules(String gatewayId) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
     {
-      send_getAllAppModules();
+      send_getAllAppModules(gatewayId);
       return recv_getAllAppModules();
     }
 
-    public void send_getAllAppModules() throws org.apache.thrift.TException
+    public void send_getAllAppModules(String gatewayId) throws org.apache.thrift.TException
     {
       getAllAppModules_args args = new getAllAppModules_args();
+      args.setGatewayId(gatewayId);
       sendBase("getAllAppModules", args);
     }
 
@@ -3118,15 +3165,16 @@ import org.slf4j.LoggerFactory;
       throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "deleteApplicationModule failed: unknown result");
     }
 
-    public String registerApplicationDeployment(org.apache.airavata.model.appcatalog.appdeployment.ApplicationDeploymentDescription applicationDeployment) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
+    public String registerApplicationDeployment(String gatewayId, org.apache.airavata.model.appcatalog.appdeployment.ApplicationDeploymentDescription applicationDeployment) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
     {
-      send_registerApplicationDeployment(applicationDeployment);
+      send_registerApplicationDeployment(gatewayId, applicationDeployment);
       return recv_registerApplicationDeployment();
     }
 
-    public void send_registerApplicationDeployment(org.apache.airavata.model.appcatalog.appdeployment.ApplicationDeploymentDescription applicationDeployment) throws org.apache.thrift.TException
+    public void send_registerApplicationDeployment(String gatewayId, org.apache.airavata.model.appcatalog.appdeployment.ApplicationDeploymentDescription applicationDeployment) throws org.apache.thrift.TException
     {
       registerApplicationDeployment_args args = new registerApplicationDeployment_args();
+      args.setGatewayId(gatewayId);
       args.setApplicationDeployment(applicationDeployment);
       sendBase("registerApplicationDeployment", args);
     }
@@ -3247,15 +3295,16 @@ import org.slf4j.LoggerFactory;
       throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "deleteApplicationDeployment failed: unknown result");
     }
 
-    public List<org.apache.airavata.model.appcatalog.appdeployment.ApplicationDeploymentDescription> getAllApplicationDeployments() throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
+    public List<org.apache.airavata.model.appcatalog.appdeployment.ApplicationDeploymentDescription> getAllApplicationDeployments(String gatewayId) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
     {
-      send_getAllApplicationDeployments();
+      send_getAllApplicationDeployments(gatewayId);
       return recv_getAllApplicationDeployments();
     }
 
-    public void send_getAllApplicationDeployments() throws org.apache.thrift.TException
+    public void send_getAllApplicationDeployments(String gatewayId) throws org.apache.thrift.TException
     {
       getAllApplicationDeployments_args args = new getAllApplicationDeployments_args();
+      args.setGatewayId(gatewayId);
       sendBase("getAllApplicationDeployments", args);
     }
 
@@ -3310,15 +3359,16 @@ import org.slf4j.LoggerFactory;
       throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "getAppModuleDeployedResources failed: unknown result");
     }
 
-    public String registerApplicationInterface(org.apache.airavata.model.appcatalog.appinterface.ApplicationInterfaceDescription applicationInterface) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
+    public String registerApplicationInterface(String gatewayId, org.apache.airavata.model.appcatalog.appinterface.ApplicationInterfaceDescription applicationInterface) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
     {
-      send_registerApplicationInterface(applicationInterface);
+      send_registerApplicationInterface(gatewayId, applicationInterface);
       return recv_registerApplicationInterface();
     }
 
-    public void send_registerApplicationInterface(org.apache.airavata.model.appcatalog.appinterface.ApplicationInterfaceDescription applicationInterface) throws org.apache.thrift.TException
+    public void send_registerApplicationInterface(String gatewayId, org.apache.airavata.model.appcatalog.appinterface.ApplicationInterfaceDescription applicationInterface) throws org.apache.thrift.TException
     {
       registerApplicationInterface_args args = new registerApplicationInterface_args();
+      args.setGatewayId(gatewayId);
       args.setApplicationInterface(applicationInterface);
       sendBase("registerApplicationInterface", args);
     }
@@ -3439,15 +3489,16 @@ import org.slf4j.LoggerFactory;
       throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "deleteApplicationInterface failed: unknown result");
     }
 
-    public Map<String,String> getAllApplicationInterfaceNames() throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
+    public Map<String,String> getAllApplicationInterfaceNames(String gatewayId) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
     {
-      send_getAllApplicationInterfaceNames();
+      send_getAllApplicationInterfaceNames(gatewayId);
       return recv_getAllApplicationInterfaceNames();
     }
 
-    public void send_getAllApplicationInterfaceNames() throws org.apache.thrift.TException
+    public void send_getAllApplicationInterfaceNames(String gatewayId) throws org.apache.thrift.TException
     {
       getAllApplicationInterfaceNames_args args = new getAllApplicationInterfaceNames_args();
+      args.setGatewayId(gatewayId);
       sendBase("getAllApplicationInterfaceNames", args);
     }
 
@@ -3470,15 +3521,16 @@ import org.slf4j.LoggerFactory;
       throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "getAllApplicationInterfaceNames failed: unknown result");
     }
 
-    public List<org.apache.airavata.model.appcatalog.appinterface.ApplicationInterfaceDescription> getAllApplicationInterfaces() throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
+    public List<org.apache.airavata.model.appcatalog.appinterface.ApplicationInterfaceDescription> getAllApplicationInterfaces(String gatewayId) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
     {
-      send_getAllApplicationInterfaces();
+      send_getAllApplicationInterfaces(gatewayId);
       return recv_getAllApplicationInterfaces();
     }
 
-    public void send_getAllApplicationInterfaces() throws org.apache.thrift.TException
+    public void send_getAllApplicationInterfaces(String gatewayId) throws org.apache.thrift.TException
     {
       getAllApplicationInterfaces_args args = new getAllApplicationInterfaces_args();
+      args.setGatewayId(gatewayId);
       sendBase("getAllApplicationInterfaces", args);
     }
 
@@ -5233,15 +5285,16 @@ import org.slf4j.LoggerFactory;
       throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "deleteGatewayComputeResourcePreference failed: unknown result");
     }
 
-    public List<String> getAllWorkflows() throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
+    public List<String> getAllWorkflows(String gatewayId) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
     {
-      send_getAllWorkflows();
+      send_getAllWorkflows(gatewayId);
       return recv_getAllWorkflows();
     }
 
-    public void send_getAllWorkflows() throws org.apache.thrift.TException
+    public void send_getAllWorkflows(String gatewayId) throws org.apache.thrift.TException
     {
       getAllWorkflows_args args = new getAllWorkflows_args();
+      args.setGatewayId(gatewayId);
       sendBase("getAllWorkflows", args);
     }
 
@@ -5325,15 +5378,16 @@ import org.slf4j.LoggerFactory;
       return;
     }
 
-    public String registerWorkflow(org.apache.airavata.model.Workflow workflow) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
+    public String registerWorkflow(String gatewayId, org.apache.airavata.model.Workflow workflow) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
     {
-      send_registerWorkflow(workflow);
+      send_registerWorkflow(gatewayId, workflow);
       return recv_registerWorkflow();
     }
 
-    public void send_registerWorkflow(org.apache.airavata.model.Workflow workflow) throws org.apache.thrift.TException
+    public void send_registerWorkflow(String gatewayId, org.apache.airavata.model.Workflow workflow) throws org.apache.thrift.TException
     {
       registerWorkflow_args args = new registerWorkflow_args();
+      args.setGatewayId(gatewayId);
       args.setWorkflow(workflow);
       sendBase("registerWorkflow", args);
     }
@@ -5789,23 +5843,26 @@ import org.slf4j.LoggerFactory;
       }
     }
 
-    public void createProject(org.apache.airavata.model.workspace.Project project, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+    public void createProject(String gatewayId, org.apache.airavata.model.workspace.Project project, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
       checkReady();
-      createProject_call method_call = new createProject_call(project, resultHandler, this, ___protocolFactory, ___transport);
+      createProject_call method_call = new createProject_call(gatewayId, project, resultHandler, this, ___protocolFactory, ___transport);
       this.___currentMethod = method_call;
       ___manager.call(method_call);
     }
 
     public static class createProject_call extends org.apache.thrift.async.TAsyncMethodCall {
+      private String gatewayId;
       private org.apache.airavata.model.workspace.Project project;
-      public createProject_call(org.apache.airavata.model.workspace.Project project, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+      public createProject_call(String gatewayId, org.apache.airavata.model.workspace.Project project, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
         super(client, protocolFactory, transport, resultHandler, false);
+        this.gatewayId = gatewayId;
         this.project = project;
       }
 
       public void write_args(org.apache.thrift.protocol.TProtocol prot) throws org.apache.thrift.TException {
         prot.writeMessageBegin(new org.apache.thrift.protocol.TMessage("createProject", org.apache.thrift.protocol.TMessageType.CALL, 0));
         createProject_args args = new createProject_args();
+        args.setGatewayId(gatewayId);
         args.setProject(project);
         args.write(prot);
         prot.writeMessageEnd();
@@ -5888,23 +5945,26 @@ import org.slf4j.LoggerFactory;
       }
     }
 
-    public void getAllUserProjects(String userName, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+    public void getAllUserProjects(String gatewayId, String userName, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
       checkReady();
-      getAllUserProjects_call method_call = new getAllUserProjects_call(userName, resultHandler, this, ___protocolFactory, ___transport);
+      getAllUserProjects_call method_call = new getAllUserProjects_call(gatewayId, userName, resultHandler, this, ___protocolFactory, ___transport);
       this.___currentMethod = method_call;
       ___manager.call(method_call);
     }
 
     public static class getAllUserProjects_call extends org.apache.thrift.async.TAsyncMethodCall {
+      private String gatewayId;
       private String userName;
-      public getAllUserProjects_call(String userName, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+      public getAllUserProjects_call(String gatewayId, String userName, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
         super(client, protocolFactory, transport, resultHandler, false);
+        this.gatewayId = gatewayId;
         this.userName = userName;
       }
 
       public void write_args(org.apache.thrift.protocol.TProtocol prot) throws org.apache.thrift.TException {
         prot.writeMessageBegin(new org.apache.thrift.protocol.TMessage("getAllUserProjects", org.apache.thrift.protocol.TMessageType.CALL, 0));
         getAllUserProjects_args args = new getAllUserProjects_args();
+        args.setGatewayId(gatewayId);
         args.setUserName(userName);
         args.write(prot);
         prot.writeMessageEnd();
@@ -5920,18 +5980,20 @@ import org.slf4j.LoggerFactory;
       }
     }
 
-    public void searchProjectsByProjectName(String userName, String projectName, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+    public void searchProjectsByProjectName(String gatewayId, String userName, String projectName, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
       checkReady();
-      searchProjectsByProjectName_call method_call = new searchProjectsByProjectName_call(userName, projectName, resultHandler, this, ___protocolFactory, ___transport);
+      searchProjectsByProjectName_call method_call = new searchProjectsByProjectName_call(gatewayId, userName, projectName, resultHandler, this, ___protocolFactory, ___transport);
       this.___currentMethod = method_call;
       ___manager.call(method_call);
     }
 
     public static class searchProjectsByProjectName_call extends org.apache.thrift.async.TAsyncMethodCall {
+      private String gatewayId;
       private String userName;
       private String projectName;
-      public searchProjectsByProjectName_call(String userName, String projectName, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+      public searchProjectsByProjectName_call(String gatewayId, String userName, String projectName, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
         super(client, protocolFactory, transport, resultHandler, false);
+        this.gatewayId = gatewayId;
         this.userName = userName;
         this.projectName = projectName;
       }
@@ -5939,6 +6001,7 @@ import org.slf4j.LoggerFactory;
       public void write_args(org.apache.thrift.protocol.TProtocol prot) throws org.apache.thrift.TException {
         prot.writeMessageBegin(new org.apache.thrift.protocol.TMessage("searchProjectsByProjectName", org.apache.thrift.protocol.TMessageType.CALL, 0));
         searchProjectsByProjectName_args args = new searchProjectsByProjectName_args();
+        args.setGatewayId(gatewayId);
         args.setUserName(userName);
         args.setProjectName(projectName);
         args.write(prot);
@@ -5955,18 +6018,20 @@ import org.slf4j.LoggerFactory;
       }
     }
 
-    public void searchProjectsByProjectDesc(String userName, String description, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+    public void searchProjectsByProjectDesc(String gatewayId, String userName, String description, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
       checkReady();
-      searchProjectsByProjectDesc_call method_call = new searchProjectsByProjectDesc_call(userName, description, resultHandler, this, ___protocolFactory, ___transport);
+      searchProjectsByProjectDesc_call method_call = new searchProjectsByProjectDesc_call(gatewayId, userName, description, resultHandler, this, ___protocolFactory, ___transport);
       this.___currentMethod = method_call;
       ___manager.call(method_call);
     }
 
     public static class searchProjectsByProjectDesc_call extends org.apache.thrift.async.TAsyncMethodCall {
+      private String gatewayId;
       private String userName;
       private String description;
-      public searchProjectsByProjectDesc_call(String userName, String description, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+      public searchProjectsByProjectDesc_call(String gatewayId, String userName, String description, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
         super(client, protocolFactory, transport, resultHandler, false);
+        this.gatewayId = gatewayId;
         this.userName = userName;
         this.description = description;
       }
@@ -5974,6 +6039,7 @@ import org.slf4j.LoggerFactory;
       public void write_args(org.apache.thrift.protocol.TProtocol prot) throws org.apache.thrift.TException {
         prot.writeMessageBegin(new org.apache.thrift.protocol.TMessage("searchProjectsByProjectDesc", org.apache.thrift.protocol.TMessageType.CALL, 0));
         searchProjectsByProjectDesc_args args = new searchProjectsByProjectDesc_args();
+        args.setGatewayId(gatewayId);
         args.setUserName(userName);
         args.setDescription(description);
         args.write(prot);
@@ -5990,18 +6056,20 @@ import org.slf4j.LoggerFactory;
       }
     }
 
-    public void searchExperimentsByName(String userName, String expName, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+    public void searchExperimentsByName(String gatewayId, String userName, String expName, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
       checkReady();
-      searchExperimentsByName_call method_call = new searchExperimentsByName_call(userName, expName, resultHandler, this, ___protocolFactory, ___transport);
+      searchExperimentsByName_call method_call = new searchExperimentsByName_call(gatewayId, userName, expName, resultHandler, this, ___protocolFactory, ___transport);
       this.___currentMethod = method_call;
       ___manager.call(method_call);
     }
 
     public static class searchExperimentsByName_call extends org.apache.thrift.async.TAsyncMethodCall {
+      private String gatewayId;
       private String userName;
       private String expName;
-      public searchExperimentsByName_call(String userName, String expName, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+      public searchExperimentsByName_call(String gatewayId, String userName, String expName, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
         super(client, protocolFactory, transport, resultHandler, false);
+        this.gatewayId = gatewayId;
         this.userName = userName;
         this.expName = expName;
       }
@@ -6009,6 +6077,7 @@ import org.slf4j.LoggerFactory;
       public void write_args(org.apache.thrift.protocol.TProtocol prot) throws org.apache.thrift.TException {
         prot.writeMessageBegin(new org.apache.thrift.protocol.TMessage("searchExperimentsByName", org.apache.thrift.protocol.TMessageType.CALL, 0));
         searchExperimentsByName_args args = new searchExperimentsByName_args();
+        args.setGatewayId(gatewayId);
         args.setUserName(userName);
         args.setExpName(expName);
         args.write(prot);
@@ -6025,18 +6094,20 @@ import org.slf4j.LoggerFactory;
       }
     }
 
-    public void searchExperimentsByDesc(String userName, String description, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+    public void searchExperimentsByDesc(String gatewayId, String userName, String description, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
       checkReady();
-      searchExperimentsByDesc_call method_call = new searchExperimentsByDesc_call(userName, description, resultHandler, this, ___protocolFactory, ___transport);
+      searchExperimentsByDesc_call method_call = new searchExperimentsByDesc_call(gatewayId, userName, description, resultHandler, this, ___protocolFactory, ___transport);
       this.___currentMethod = method_call;
       ___manager.call(method_call);
     }
 
     public static class searchExperimentsByDesc_call extends org.apache.thrift.async.TAsyncMethodCall {
+      private String gatewayId;
       private String userName;
       private String description;
-      public searchExperimentsByDesc_call(String userName, String description, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+      public searchExperimentsByDesc_call(String gatewayId, String userName, String description, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
         super(client, protocolFactory, transport, resultHandler, false);
+        this.gatewayId = gatewayId;
         this.userName = userName;
         this.description = description;
       }
@@ -6044,6 +6115,7 @@ import org.slf4j.LoggerFactory;
       public void write_args(org.apache.thrift.protocol.TProtocol prot) throws org.apache.thrift.TException {
         prot.writeMessageBegin(new org.apache.thrift.protocol.TMessage("searchExperimentsByDesc", org.apache.thrift.protocol.TMessageType.CALL, 0));
         searchExperimentsByDesc_args args = new searchExperimentsByDesc_args();
+        args.setGatewayId(gatewayId);
         args.setUserName(userName);
         args.setDescription(description);
         args.write(prot);
@@ -6060,18 +6132,20 @@ import org.slf4j.LoggerFactory;
       }
     }
 
-    public void searchExperimentsByApplication(String userName, String applicationId, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+    public void searchExperimentsByApplication(String gatewayId, String userName, String applicationId, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
       checkReady();
-      searchExperimentsByApplication_call method_call = new searchExperimentsByApplication_call(userName, applicationId, resultHandler, this, ___protocolFactory, ___transport);
+      searchExperimentsByApplication_call method_call = new searchExperimentsByApplication_call(gatewayId, userName, applicationId, resultHandler, this, ___protocolFactory, ___transport);
       this.___currentMethod = method_call;
       ___manager.call(method_call);
     }
 
     public static class searchExperimentsByApplication_call extends org.apache.thrift.async.TAsyncMethodCall {
+      private String gatewayId;
       private String userName;
       private String applicationId;
-      public searchExperimentsByApplication_call(String userName, String applicationId, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+      public searchExperimentsByApplication_call(String gatewayId, String userName, String applicationId, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
         super(client, protocolFactory, transport, resultHandler, false);
+        this.gatewayId = gatewayId;
         this.userName = userName;
         this.applicationId = applicationId;
       }
@@ -6079,6 +6153,7 @@ import org.slf4j.LoggerFactory;
       public void write_args(org.apache.thrift.protocol.TProtocol prot) throws org.apache.thrift.TException {
         prot.writeMessageBegin(new org.apache.thrift.protocol.TMessage("searchExperimentsByApplication", org.apache.thrift.protocol.TMessageType.CALL, 0));
         searchExperimentsByApplication_args args = new searchExperimentsByApplication_args();
+        args.setGatewayId(gatewayId);
         args.setUserName(userName);
         args.setApplicationId(applicationId);
         args.write(prot);
@@ -6095,18 +6170,20 @@ import org.slf4j.LoggerFactory;
       }
     }
 
-    public void searchExperimentsByStatus(String userName, org.apache.airavata.model.workspace.experiment.ExperimentState experimentState, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+    public void searchExperimentsByStatus(String gatewayId, String userName, org.apache.airavata.model.workspace.experiment.ExperimentState experimentState, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
       checkReady();
-      searchExperimentsByStatus_call method_call = new searchExperimentsByStatus_call(userName, experimentState, resultHandler, this, ___protocolFactory, ___transport);
+      searchExperimentsByStatus_call method_call = new searchExperimentsByStatus_call(gatewayId, userName, experimentState, resultHandler, this, ___protocolFactory, ___transport);
       this.___currentMethod = method_call;
       ___manager.call(method_call);
     }
 
     public static class searchExperimentsByStatus_call extends org.apache.thrift.async.TAsyncMethodCall {
+      private String gatewayId;
       private String userName;
       private org.apache.airavata.model.workspace.experiment.ExperimentState experimentState;
-      public searchExperimentsByStatus_call(String userName, org.apache.airavata.model.workspace.experiment.ExperimentState experimentState, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+      public searchExperimentsByStatus_call(String gatewayId, String userName, org.apache.airavata.model.workspace.experiment.ExperimentState experimentState, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
         super(client, protocolFactory, transport, resultHandler, false);
+        this.gatewayId = gatewayId;
         this.userName = userName;
         this.experimentState = experimentState;
       }
@@ -6114,6 +6191,7 @@ import org.slf4j.LoggerFactory;
       public void write_args(org.apache.thrift.protocol.TProtocol prot) throws org.apache.thrift.TException {
         prot.writeMessageBegin(new org.apache.thrift.protocol.TMessage("searchExperimentsByStatus", org.apache.thrift.protocol.TMessageType.CALL, 0));
         searchExperimentsByStatus_args args = new searchExperimentsByStatus_args();
+        args.setGatewayId(gatewayId);
         args.setUserName(userName);
         args.setExperimentState(experimentState);
         args.write(prot);
@@ -6130,19 +6208,21 @@ import org.slf4j.LoggerFactory;
       }
     }
 
-    public void searchExperimentsByCreationTime(String userName, long fromTime, long toTime, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+    public void searchExperimentsByCreationTime(String gatewayId, String userName, long fromTime, long toTime, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
       checkReady();
-      searchExperimentsByCreationTime_call method_call = new searchExperimentsByCreationTime_call(userName, fromTime, toTime, resultHandler, this, ___protocolFactory, ___transport);
+      searchExperimentsByCreationTime_call method_call = new searchExperimentsByCreationTime_call(gatewayId, userName, fromTime, toTime, resultHandler, this, ___protocolFactory, ___transport);
       this.___currentMethod = method_call;
       ___manager.call(method_call);
     }
 
     public static class searchExperimentsByCreationTime_call extends org.apache.thrift.async.TAsyncMethodCall {
+      private String gatewayId;
       private String userName;
       private long fromTime;
       private long toTime;
-      public searchExperimentsByCreationTime_call(String userName, long fromTime, long toTime, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+      public searchExperimentsByCreationTime_call(String gatewayId, String userName, long fromTime, long toTime, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
         super(client, protocolFactory, transport, resultHandler, false);
+        this.gatewayId = gatewayId;
         this.userName = userName;
         this.fromTime = fromTime;
         this.toTime = toTime;
@@ -6151,6 +6231,7 @@ import org.slf4j.LoggerFactory;
       public void write_args(org.apache.thrift.protocol.TProtocol prot) throws org.apache.thrift.TException {
         prot.writeMessageBegin(new org.apache.thrift.protocol.TMessage("searchExperimentsByCreationTime", org.apache.thrift.protocol.TMessageType.CALL, 0));
         searchExperimentsByCreationTime_args args = new searchExperimentsByCreationTime_args();
+        args.setGatewayId(gatewayId);
         args.setUserName(userName);
         args.setFromTime(fromTime);
         args.setToTime(toTime);
@@ -6200,23 +6281,26 @@ import org.slf4j.LoggerFactory;
       }
     }
 
-    public void getAllUserExperiments(String userName, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+    public void getAllUserExperiments(String gatewayId, String userName, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
       checkReady();
-      getAllUserExperiments_call method_call = new getAllUserExperiments_call(userName, resultHandler, this, ___protocolFactory, ___transport);
+      getAllUserExperiments_call method_call = new getAllUserExperiments_call(gatewayId, userName, resultHandler, this, ___protocolFactory, ___transport);
       this.___currentMethod = method_call;
       ___manager.call(method_call);
     }
 
     public static class getAllUserExperiments_call extends org.apache.thrift.async.TAsyncMethodCall {
+      private String gatewayId;
       private String userName;
-      public getAllUserExperiments_call(String userName, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+      public getAllUserExperiments_call(String gatewayId, String userName, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
         super(client, protocolFactory, transport, resultHandler, false);
+        this.gatewayId = gatewayId;
         this.userName = userName;
       }
 
       public void write_args(org.apache.thrift.protocol.TProtocol prot) throws org.apache.thrift.TException {
         prot.writeMessageBegin(new org.apache.thrift.protocol.TMessage("getAllUserExperiments", org.apache.thrift.protocol.TMessageType.CALL, 0));
         getAllUserExperiments_args args = new getAllUserExperiments_args();
+        args.setGatewayId(gatewayId);
         args.setUserName(userName);
         args.write(prot);
         prot.writeMessageEnd();
@@ -6232,23 +6316,26 @@ import org.slf4j.LoggerFactory;
       }
     }
 
-    public void createExperiment(org.apache.airavata.model.workspace.experiment.Experiment experiment, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+    public void createExperiment(String gatewayId, org.apache.airavata.model.workspace.experiment.Experiment experiment, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TE

<TRUNCATED>