You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airavata.apache.org by ch...@apache.org on 2014/06/29 00:46:05 UTC

[11/12] adding generated code for app-catalog

http://git-wip-us.apache.org/repos/asf/airavata/blob/8ebb254f/airavata-api/airavata-api-stubs/src/main/java/org/apache/airavata/api/appcatalog/ApplicationCatalogAPI.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-api-stubs/src/main/java/org/apache/airavata/api/appcatalog/ApplicationCatalogAPI.java b/airavata-api/airavata-api-stubs/src/main/java/org/apache/airavata/api/appcatalog/ApplicationCatalogAPI.java
index 541eafd..ae8c533 100644
--- a/airavata-api/airavata-api-stubs/src/main/java/org/apache/airavata/api/appcatalog/ApplicationCatalogAPI.java
+++ b/airavata-api/airavata-api-stubs/src/main/java/org/apache/airavata/api/appcatalog/ApplicationCatalogAPI.java
@@ -62,58 +62,72 @@ import org.slf4j.LoggerFactory;
      * 
      * @param computeResourceDescription
      */
-    public String addComputeResourceDescription(org.apache.airavata.model.appcatalog.ComputeResourceDescription computeResourceDescription) 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 addComputeResourceDescription(org.apache.airavata.model.computehost.ComputeResourceDescription computeResourceDescription) 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 addSSHJobSubmissionProtocol(String computeResourceId, org.apache.airavata.model.appcatalog.SSHJobSubmission jobSubmission) 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 addSSHJobSubmissionProtocol(String computeResourceId, org.apache.airavata.model.computehost.SSHJobSubmission jobSubmission) 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 addGSISSHJobSubmissionProtocol(String computeResourceId, org.apache.airavata.model.appcatalog.GSISSHJobSubmission jobSubmission) 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 addGSISSHJobSubmissionProtocol(String computeResourceId, org.apache.airavata.model.computehost.GSISSHJobSubmission jobSubmission) 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 addGlobusJobSubmissionProtocol(String computeResourceId, org.apache.airavata.model.appcatalog.GlobusJobSubmission jobSubmission) 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 addGlobusJobSubmissionProtocol(String computeResourceId, org.apache.airavata.model.computehost.GlobusJobSubmission jobSubmission) 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 addSCPDataMovementProtocol(String computeResourceId, org.apache.airavata.model.appcatalog.SCPDataMovement dataMovement) 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 addSCPDataMovementProtocol(String computeResourceId, org.apache.airavata.model.computehost.SCPDataMovement dataMovement) 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 addGridFTPDataMovementProtocol(String computeResourceId, org.apache.airavata.model.appcatalog.GridFTPDataMovement dataMovement) 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 addGridFTPDataMovementProtocol(String computeResourceId, org.apache.airavata.model.computehost.GridFTPDataMovement dataMovement) 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> listComputeResourceDescriptions() 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.appcatalog.ComputeResourceDescription getComputeResourceDescription(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 org.apache.airavata.model.computehost.ComputeResourceDescription getComputeResourceDescription(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 org.apache.airavata.model.appcatalog.SSHJobSubmission getSSHJobSubmissionProtocol(String sshJobSubmissionProtocolResourceId) 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.computehost.SSHJobSubmission getSSHJobSubmissionProtocol(String sshJobSubmissionProtocolResourceId) 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.appcatalog.GSISSHJobSubmission getGSISSHJobSubmissionProtocol(String gsisshJobSubmissionProtocolResourceId) 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.computehost.GSISSHJobSubmission getGSISSHJobSubmissionProtocol(String gsisshJobSubmissionProtocolResourceId) 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.appcatalog.GlobusJobSubmission getGlobusJobSubmissionProtocol(String globusJobSubmissionProtocolResourceId) 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.computehost.GlobusJobSubmission getGlobusJobSubmissionProtocol(String globusJobSubmissionProtocolResourceId) 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.appcatalog.SCPDataMovement getSCPDataMovementProtocol(String scpDataMovementResourceId) 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.computehost.SCPDataMovement getSCPDataMovementProtocol(String scpDataMovementResourceId) 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.appcatalog.GridFTPDataMovement getGridFTPDataMovementProtocol(String gridFTPDataMovementResourceId) 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.computehost.GridFTPDataMovement getGridFTPDataMovementProtocol(String gridFTPDataMovementResourceId) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException;
 
     public boolean isComputeResourceDescriptionRegistered(String hostName) 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.appcatalog.ComputeResourceDescription getComputeResourceDescriptionFromHostName(String hostName) 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.computehost.ComputeResourceDescription getComputeResourceDescriptionFromHostName(String hostName) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException;
 
     /**
      * Manage Application Interfaces
      * 
      * @param applicationInterface
      */
-    public String addApplicationInterface(org.apache.airavata.model.appcatalog.ApplicationInterface 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 addApplicationInterface(org.apache.airavata.model.application.interface.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 List<String> listApplicationInterfaceIds() 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.appcatalog.ApplicationInterface getApplicationInterface(String applicationInterfaceId) 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.application.interface.ApplicationInterfaceDescription getApplicationInterface(String applicationInterfaceId) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException;
 
     /**
-     * Manage application deployments
+     * Manage application modules
+     * 
+     * @param applicationModule
+     * @param publish
+     */
+    public String registerAppicationModule(org.apache.airavata.model.application.deployment.ApplicationModule applicationModule, boolean publish) 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.application.deployment.ApplicationModule getAppicationModule(String appModuleId) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException;
+
+    public boolean updateAppicationModule(String appModuleId, org.apache.airavata.model.application.deployment.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 boolean deleteAppicationModule(String appModuleId) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException;
+
+    /**
+     * Manage application modules
      * 
      * @param applicationInterfaceId
      * @param applicationDeployment
      */
-    public String addApplicationDeployment(String applicationInterfaceId, org.apache.airavata.model.appcatalog.ApplicationDeployment 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 addApplicationDeployment(String applicationInterfaceId, org.apache.airavata.model.application.deployment.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 List<String> listApplicationDeploymentIds(String applicationInterfaceId) 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.appcatalog.ApplicationDeployment getApplicationDeployment(String applicationInterfaceId, String applicationDeploymentId) 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.application.deployment.ApplicationDeploymentDescription getApplicationDeployment(String applicationInterfaceId, String applicationDeploymentId) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException;
 
   }
 
@@ -121,17 +135,17 @@ import org.slf4j.LoggerFactory;
 
     public void GetAPIVersion(org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
-    public void addComputeResourceDescription(org.apache.airavata.model.appcatalog.ComputeResourceDescription computeResourceDescription, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+    public void addComputeResourceDescription(org.apache.airavata.model.computehost.ComputeResourceDescription computeResourceDescription, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
-    public void addSSHJobSubmissionProtocol(String computeResourceId, org.apache.airavata.model.appcatalog.SSHJobSubmission jobSubmission, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+    public void addSSHJobSubmissionProtocol(String computeResourceId, org.apache.airavata.model.computehost.SSHJobSubmission jobSubmission, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
-    public void addGSISSHJobSubmissionProtocol(String computeResourceId, org.apache.airavata.model.appcatalog.GSISSHJobSubmission jobSubmission, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+    public void addGSISSHJobSubmissionProtocol(String computeResourceId, org.apache.airavata.model.computehost.GSISSHJobSubmission jobSubmission, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
-    public void addGlobusJobSubmissionProtocol(String computeResourceId, org.apache.airavata.model.appcatalog.GlobusJobSubmission jobSubmission, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+    public void addGlobusJobSubmissionProtocol(String computeResourceId, org.apache.airavata.model.computehost.GlobusJobSubmission jobSubmission, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
-    public void addSCPDataMovementProtocol(String computeResourceId, org.apache.airavata.model.appcatalog.SCPDataMovement dataMovement, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+    public void addSCPDataMovementProtocol(String computeResourceId, org.apache.airavata.model.computehost.SCPDataMovement dataMovement, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
-    public void addGridFTPDataMovementProtocol(String computeResourceId, org.apache.airavata.model.appcatalog.GridFTPDataMovement dataMovement, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+    public void addGridFTPDataMovementProtocol(String computeResourceId, org.apache.airavata.model.computehost.GridFTPDataMovement dataMovement, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
     public void listComputeResourceDescriptions(org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
@@ -151,13 +165,21 @@ import org.slf4j.LoggerFactory;
 
     public void getComputeResourceDescriptionFromHostName(String hostName, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
-    public void addApplicationInterface(org.apache.airavata.model.appcatalog.ApplicationInterface applicationInterface, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+    public void addApplicationInterface(org.apache.airavata.model.application.interface.ApplicationInterfaceDescription applicationInterface, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
     public void listApplicationInterfaceIds(org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
     public void getApplicationInterface(String applicationInterfaceId, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
-    public void addApplicationDeployment(String applicationInterfaceId, org.apache.airavata.model.appcatalog.ApplicationDeployment applicationDeployment, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+    public void registerAppicationModule(org.apache.airavata.model.application.deployment.ApplicationModule applicationModule, boolean publish, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+
+    public void getAppicationModule(String appModuleId, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+
+    public void updateAppicationModule(String appModuleId, org.apache.airavata.model.application.deployment.ApplicationModule applicationModule, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+
+    public void deleteAppicationModule(String appModuleId, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+
+    public void addApplicationDeployment(String applicationInterfaceId, org.apache.airavata.model.application.deployment.ApplicationDeploymentDescription applicationDeployment, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
     public void listApplicationDeploymentIds(String applicationInterfaceId, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
@@ -207,13 +229,13 @@ import org.slf4j.LoggerFactory;
       throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "GetAPIVersion failed: unknown result");
     }
 
-    public String addComputeResourceDescription(org.apache.airavata.model.appcatalog.ComputeResourceDescription computeResourceDescription) 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 addComputeResourceDescription(org.apache.airavata.model.computehost.ComputeResourceDescription computeResourceDescription) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
     {
       send_addComputeResourceDescription(computeResourceDescription);
       return recv_addComputeResourceDescription();
     }
 
-    public void send_addComputeResourceDescription(org.apache.airavata.model.appcatalog.ComputeResourceDescription computeResourceDescription) throws org.apache.thrift.TException
+    public void send_addComputeResourceDescription(org.apache.airavata.model.computehost.ComputeResourceDescription computeResourceDescription) throws org.apache.thrift.TException
     {
       addComputeResourceDescription_args args = new addComputeResourceDescription_args();
       args.setComputeResourceDescription(computeResourceDescription);
@@ -239,13 +261,13 @@ import org.slf4j.LoggerFactory;
       throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "addComputeResourceDescription failed: unknown result");
     }
 
-    public String addSSHJobSubmissionProtocol(String computeResourceId, org.apache.airavata.model.appcatalog.SSHJobSubmission jobSubmission) 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 addSSHJobSubmissionProtocol(String computeResourceId, org.apache.airavata.model.computehost.SSHJobSubmission jobSubmission) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
     {
       send_addSSHJobSubmissionProtocol(computeResourceId, jobSubmission);
       return recv_addSSHJobSubmissionProtocol();
     }
 
-    public void send_addSSHJobSubmissionProtocol(String computeResourceId, org.apache.airavata.model.appcatalog.SSHJobSubmission jobSubmission) throws org.apache.thrift.TException
+    public void send_addSSHJobSubmissionProtocol(String computeResourceId, org.apache.airavata.model.computehost.SSHJobSubmission jobSubmission) throws org.apache.thrift.TException
     {
       addSSHJobSubmissionProtocol_args args = new addSSHJobSubmissionProtocol_args();
       args.setComputeResourceId(computeResourceId);
@@ -272,13 +294,13 @@ import org.slf4j.LoggerFactory;
       throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "addSSHJobSubmissionProtocol failed: unknown result");
     }
 
-    public String addGSISSHJobSubmissionProtocol(String computeResourceId, org.apache.airavata.model.appcatalog.GSISSHJobSubmission jobSubmission) 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 addGSISSHJobSubmissionProtocol(String computeResourceId, org.apache.airavata.model.computehost.GSISSHJobSubmission jobSubmission) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
     {
       send_addGSISSHJobSubmissionProtocol(computeResourceId, jobSubmission);
       return recv_addGSISSHJobSubmissionProtocol();
     }
 
-    public void send_addGSISSHJobSubmissionProtocol(String computeResourceId, org.apache.airavata.model.appcatalog.GSISSHJobSubmission jobSubmission) throws org.apache.thrift.TException
+    public void send_addGSISSHJobSubmissionProtocol(String computeResourceId, org.apache.airavata.model.computehost.GSISSHJobSubmission jobSubmission) throws org.apache.thrift.TException
     {
       addGSISSHJobSubmissionProtocol_args args = new addGSISSHJobSubmissionProtocol_args();
       args.setComputeResourceId(computeResourceId);
@@ -305,13 +327,13 @@ import org.slf4j.LoggerFactory;
       throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "addGSISSHJobSubmissionProtocol failed: unknown result");
     }
 
-    public String addGlobusJobSubmissionProtocol(String computeResourceId, org.apache.airavata.model.appcatalog.GlobusJobSubmission jobSubmission) 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 addGlobusJobSubmissionProtocol(String computeResourceId, org.apache.airavata.model.computehost.GlobusJobSubmission jobSubmission) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
     {
       send_addGlobusJobSubmissionProtocol(computeResourceId, jobSubmission);
       return recv_addGlobusJobSubmissionProtocol();
     }
 
-    public void send_addGlobusJobSubmissionProtocol(String computeResourceId, org.apache.airavata.model.appcatalog.GlobusJobSubmission jobSubmission) throws org.apache.thrift.TException
+    public void send_addGlobusJobSubmissionProtocol(String computeResourceId, org.apache.airavata.model.computehost.GlobusJobSubmission jobSubmission) throws org.apache.thrift.TException
     {
       addGlobusJobSubmissionProtocol_args args = new addGlobusJobSubmissionProtocol_args();
       args.setComputeResourceId(computeResourceId);
@@ -338,13 +360,13 @@ import org.slf4j.LoggerFactory;
       throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "addGlobusJobSubmissionProtocol failed: unknown result");
     }
 
-    public String addSCPDataMovementProtocol(String computeResourceId, org.apache.airavata.model.appcatalog.SCPDataMovement dataMovement) 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 addSCPDataMovementProtocol(String computeResourceId, org.apache.airavata.model.computehost.SCPDataMovement dataMovement) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
     {
       send_addSCPDataMovementProtocol(computeResourceId, dataMovement);
       return recv_addSCPDataMovementProtocol();
     }
 
-    public void send_addSCPDataMovementProtocol(String computeResourceId, org.apache.airavata.model.appcatalog.SCPDataMovement dataMovement) throws org.apache.thrift.TException
+    public void send_addSCPDataMovementProtocol(String computeResourceId, org.apache.airavata.model.computehost.SCPDataMovement dataMovement) throws org.apache.thrift.TException
     {
       addSCPDataMovementProtocol_args args = new addSCPDataMovementProtocol_args();
       args.setComputeResourceId(computeResourceId);
@@ -371,13 +393,13 @@ import org.slf4j.LoggerFactory;
       throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "addSCPDataMovementProtocol failed: unknown result");
     }
 
-    public String addGridFTPDataMovementProtocol(String computeResourceId, org.apache.airavata.model.appcatalog.GridFTPDataMovement dataMovement) 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 addGridFTPDataMovementProtocol(String computeResourceId, org.apache.airavata.model.computehost.GridFTPDataMovement dataMovement) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
     {
       send_addGridFTPDataMovementProtocol(computeResourceId, dataMovement);
       return recv_addGridFTPDataMovementProtocol();
     }
 
-    public void send_addGridFTPDataMovementProtocol(String computeResourceId, org.apache.airavata.model.appcatalog.GridFTPDataMovement dataMovement) throws org.apache.thrift.TException
+    public void send_addGridFTPDataMovementProtocol(String computeResourceId, org.apache.airavata.model.computehost.GridFTPDataMovement dataMovement) throws org.apache.thrift.TException
     {
       addGridFTPDataMovementProtocol_args args = new addGridFTPDataMovementProtocol_args();
       args.setComputeResourceId(computeResourceId);
@@ -435,7 +457,7 @@ import org.slf4j.LoggerFactory;
       throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "listComputeResourceDescriptions failed: unknown result");
     }
 
-    public org.apache.airavata.model.appcatalog.ComputeResourceDescription getComputeResourceDescription(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 org.apache.airavata.model.computehost.ComputeResourceDescription getComputeResourceDescription(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
     {
       send_getComputeResourceDescription(computeResourceId);
       return recv_getComputeResourceDescription();
@@ -448,7 +470,7 @@ import org.slf4j.LoggerFactory;
       sendBase("getComputeResourceDescription", args);
     }
 
-    public org.apache.airavata.model.appcatalog.ComputeResourceDescription recv_getComputeResourceDescription() 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.computehost.ComputeResourceDescription recv_getComputeResourceDescription() throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
     {
       getComputeResourceDescription_result result = new getComputeResourceDescription_result();
       receiveBase(result, "getComputeResourceDescription");
@@ -467,7 +489,7 @@ import org.slf4j.LoggerFactory;
       throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "getComputeResourceDescription failed: unknown result");
     }
 
-    public org.apache.airavata.model.appcatalog.SSHJobSubmission getSSHJobSubmissionProtocol(String sshJobSubmissionProtocolResourceId) 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.computehost.SSHJobSubmission getSSHJobSubmissionProtocol(String sshJobSubmissionProtocolResourceId) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
     {
       send_getSSHJobSubmissionProtocol(sshJobSubmissionProtocolResourceId);
       return recv_getSSHJobSubmissionProtocol();
@@ -480,7 +502,7 @@ import org.slf4j.LoggerFactory;
       sendBase("getSSHJobSubmissionProtocol", args);
     }
 
-    public org.apache.airavata.model.appcatalog.SSHJobSubmission recv_getSSHJobSubmissionProtocol() 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.computehost.SSHJobSubmission recv_getSSHJobSubmissionProtocol() throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
     {
       getSSHJobSubmissionProtocol_result result = new getSSHJobSubmissionProtocol_result();
       receiveBase(result, "getSSHJobSubmissionProtocol");
@@ -499,7 +521,7 @@ import org.slf4j.LoggerFactory;
       throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "getSSHJobSubmissionProtocol failed: unknown result");
     }
 
-    public org.apache.airavata.model.appcatalog.GSISSHJobSubmission getGSISSHJobSubmissionProtocol(String gsisshJobSubmissionProtocolResourceId) 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.computehost.GSISSHJobSubmission getGSISSHJobSubmissionProtocol(String gsisshJobSubmissionProtocolResourceId) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
     {
       send_getGSISSHJobSubmissionProtocol(gsisshJobSubmissionProtocolResourceId);
       return recv_getGSISSHJobSubmissionProtocol();
@@ -512,7 +534,7 @@ import org.slf4j.LoggerFactory;
       sendBase("getGSISSHJobSubmissionProtocol", args);
     }
 
-    public org.apache.airavata.model.appcatalog.GSISSHJobSubmission recv_getGSISSHJobSubmissionProtocol() 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.computehost.GSISSHJobSubmission recv_getGSISSHJobSubmissionProtocol() throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
     {
       getGSISSHJobSubmissionProtocol_result result = new getGSISSHJobSubmissionProtocol_result();
       receiveBase(result, "getGSISSHJobSubmissionProtocol");
@@ -531,7 +553,7 @@ import org.slf4j.LoggerFactory;
       throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "getGSISSHJobSubmissionProtocol failed: unknown result");
     }
 
-    public org.apache.airavata.model.appcatalog.GlobusJobSubmission getGlobusJobSubmissionProtocol(String globusJobSubmissionProtocolResourceId) 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.computehost.GlobusJobSubmission getGlobusJobSubmissionProtocol(String globusJobSubmissionProtocolResourceId) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
     {
       send_getGlobusJobSubmissionProtocol(globusJobSubmissionProtocolResourceId);
       return recv_getGlobusJobSubmissionProtocol();
@@ -544,7 +566,7 @@ import org.slf4j.LoggerFactory;
       sendBase("getGlobusJobSubmissionProtocol", args);
     }
 
-    public org.apache.airavata.model.appcatalog.GlobusJobSubmission recv_getGlobusJobSubmissionProtocol() 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.computehost.GlobusJobSubmission recv_getGlobusJobSubmissionProtocol() throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
     {
       getGlobusJobSubmissionProtocol_result result = new getGlobusJobSubmissionProtocol_result();
       receiveBase(result, "getGlobusJobSubmissionProtocol");
@@ -563,7 +585,7 @@ import org.slf4j.LoggerFactory;
       throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "getGlobusJobSubmissionProtocol failed: unknown result");
     }
 
-    public org.apache.airavata.model.appcatalog.SCPDataMovement getSCPDataMovementProtocol(String scpDataMovementResourceId) 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.computehost.SCPDataMovement getSCPDataMovementProtocol(String scpDataMovementResourceId) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
     {
       send_getSCPDataMovementProtocol(scpDataMovementResourceId);
       return recv_getSCPDataMovementProtocol();
@@ -576,7 +598,7 @@ import org.slf4j.LoggerFactory;
       sendBase("getSCPDataMovementProtocol", args);
     }
 
-    public org.apache.airavata.model.appcatalog.SCPDataMovement recv_getSCPDataMovementProtocol() 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.computehost.SCPDataMovement recv_getSCPDataMovementProtocol() throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
     {
       getSCPDataMovementProtocol_result result = new getSCPDataMovementProtocol_result();
       receiveBase(result, "getSCPDataMovementProtocol");
@@ -595,7 +617,7 @@ import org.slf4j.LoggerFactory;
       throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "getSCPDataMovementProtocol failed: unknown result");
     }
 
-    public org.apache.airavata.model.appcatalog.GridFTPDataMovement getGridFTPDataMovementProtocol(String gridFTPDataMovementResourceId) 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.computehost.GridFTPDataMovement getGridFTPDataMovementProtocol(String gridFTPDataMovementResourceId) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
     {
       send_getGridFTPDataMovementProtocol(gridFTPDataMovementResourceId);
       return recv_getGridFTPDataMovementProtocol();
@@ -608,7 +630,7 @@ import org.slf4j.LoggerFactory;
       sendBase("getGridFTPDataMovementProtocol", args);
     }
 
-    public org.apache.airavata.model.appcatalog.GridFTPDataMovement recv_getGridFTPDataMovementProtocol() 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.computehost.GridFTPDataMovement recv_getGridFTPDataMovementProtocol() throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
     {
       getGridFTPDataMovementProtocol_result result = new getGridFTPDataMovementProtocol_result();
       receiveBase(result, "getGridFTPDataMovementProtocol");
@@ -659,7 +681,7 @@ import org.slf4j.LoggerFactory;
       throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "isComputeResourceDescriptionRegistered failed: unknown result");
     }
 
-    public org.apache.airavata.model.appcatalog.ComputeResourceDescription getComputeResourceDescriptionFromHostName(String hostName) 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.computehost.ComputeResourceDescription getComputeResourceDescriptionFromHostName(String hostName) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
     {
       send_getComputeResourceDescriptionFromHostName(hostName);
       return recv_getComputeResourceDescriptionFromHostName();
@@ -672,7 +694,7 @@ import org.slf4j.LoggerFactory;
       sendBase("getComputeResourceDescriptionFromHostName", args);
     }
 
-    public org.apache.airavata.model.appcatalog.ComputeResourceDescription recv_getComputeResourceDescriptionFromHostName() 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.computehost.ComputeResourceDescription recv_getComputeResourceDescriptionFromHostName() throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
     {
       getComputeResourceDescriptionFromHostName_result result = new getComputeResourceDescriptionFromHostName_result();
       receiveBase(result, "getComputeResourceDescriptionFromHostName");
@@ -691,13 +713,13 @@ import org.slf4j.LoggerFactory;
       throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "getComputeResourceDescriptionFromHostName failed: unknown result");
     }
 
-    public String addApplicationInterface(org.apache.airavata.model.appcatalog.ApplicationInterface 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 addApplicationInterface(org.apache.airavata.model.application.interface.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_addApplicationInterface(applicationInterface);
       return recv_addApplicationInterface();
     }
 
-    public void send_addApplicationInterface(org.apache.airavata.model.appcatalog.ApplicationInterface applicationInterface) throws org.apache.thrift.TException
+    public void send_addApplicationInterface(org.apache.airavata.model.application.interface.ApplicationInterfaceDescription applicationInterface) throws org.apache.thrift.TException
     {
       addApplicationInterface_args args = new addApplicationInterface_args();
       args.setApplicationInterface(applicationInterface);
@@ -754,7 +776,7 @@ import org.slf4j.LoggerFactory;
       throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "listApplicationInterfaceIds failed: unknown result");
     }
 
-    public org.apache.airavata.model.appcatalog.ApplicationInterface getApplicationInterface(String applicationInterfaceId) 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.application.interface.ApplicationInterfaceDescription getApplicationInterface(String applicationInterfaceId) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
     {
       send_getApplicationInterface(applicationInterfaceId);
       return recv_getApplicationInterface();
@@ -767,7 +789,7 @@ import org.slf4j.LoggerFactory;
       sendBase("getApplicationInterface", args);
     }
 
-    public org.apache.airavata.model.appcatalog.ApplicationInterface recv_getApplicationInterface() 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.application.interface.ApplicationInterfaceDescription recv_getApplicationInterface() throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
     {
       getApplicationInterface_result result = new getApplicationInterface_result();
       receiveBase(result, "getApplicationInterface");
@@ -786,13 +808,143 @@ import org.slf4j.LoggerFactory;
       throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "getApplicationInterface failed: unknown result");
     }
 
-    public String addApplicationDeployment(String applicationInterfaceId, org.apache.airavata.model.appcatalog.ApplicationDeployment 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 registerAppicationModule(org.apache.airavata.model.application.deployment.ApplicationModule applicationModule, boolean publish) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
+    {
+      send_registerAppicationModule(applicationModule, publish);
+      return recv_registerAppicationModule();
+    }
+
+    public void send_registerAppicationModule(org.apache.airavata.model.application.deployment.ApplicationModule applicationModule, boolean publish) throws org.apache.thrift.TException
+    {
+      registerAppicationModule_args args = new registerAppicationModule_args();
+      args.setApplicationModule(applicationModule);
+      args.setPublish(publish);
+      sendBase("registerAppicationModule", args);
+    }
+
+    public String recv_registerAppicationModule() throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
+    {
+      registerAppicationModule_result result = new registerAppicationModule_result();
+      receiveBase(result, "registerAppicationModule");
+      if (result.isSetSuccess()) {
+        return result.success;
+      }
+      if (result.ire != null) {
+        throw result.ire;
+      }
+      if (result.ace != null) {
+        throw result.ace;
+      }
+      if (result.ase != null) {
+        throw result.ase;
+      }
+      throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "registerAppicationModule failed: unknown result");
+    }
+
+    public org.apache.airavata.model.application.deployment.ApplicationModule getAppicationModule(String appModuleId) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
+    {
+      send_getAppicationModule(appModuleId);
+      return recv_getAppicationModule();
+    }
+
+    public void send_getAppicationModule(String appModuleId) throws org.apache.thrift.TException
+    {
+      getAppicationModule_args args = new getAppicationModule_args();
+      args.setAppModuleId(appModuleId);
+      sendBase("getAppicationModule", args);
+    }
+
+    public org.apache.airavata.model.application.deployment.ApplicationModule recv_getAppicationModule() throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
+    {
+      getAppicationModule_result result = new getAppicationModule_result();
+      receiveBase(result, "getAppicationModule");
+      if (result.isSetSuccess()) {
+        return result.success;
+      }
+      if (result.ire != null) {
+        throw result.ire;
+      }
+      if (result.ace != null) {
+        throw result.ace;
+      }
+      if (result.ase != null) {
+        throw result.ase;
+      }
+      throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "getAppicationModule failed: unknown result");
+    }
+
+    public boolean updateAppicationModule(String appModuleId, org.apache.airavata.model.application.deployment.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_updateAppicationModule(appModuleId, applicationModule);
+      return recv_updateAppicationModule();
+    }
+
+    public void send_updateAppicationModule(String appModuleId, org.apache.airavata.model.application.deployment.ApplicationModule applicationModule) throws org.apache.thrift.TException
+    {
+      updateAppicationModule_args args = new updateAppicationModule_args();
+      args.setAppModuleId(appModuleId);
+      args.setApplicationModule(applicationModule);
+      sendBase("updateAppicationModule", args);
+    }
+
+    public boolean recv_updateAppicationModule() throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
+    {
+      updateAppicationModule_result result = new updateAppicationModule_result();
+      receiveBase(result, "updateAppicationModule");
+      if (result.isSetSuccess()) {
+        return result.success;
+      }
+      if (result.ire != null) {
+        throw result.ire;
+      }
+      if (result.ace != null) {
+        throw result.ace;
+      }
+      if (result.ase != null) {
+        throw result.ase;
+      }
+      throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "updateAppicationModule failed: unknown result");
+    }
+
+    public boolean deleteAppicationModule(String appModuleId) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
+    {
+      send_deleteAppicationModule(appModuleId);
+      return recv_deleteAppicationModule();
+    }
+
+    public void send_deleteAppicationModule(String appModuleId) throws org.apache.thrift.TException
+    {
+      deleteAppicationModule_args args = new deleteAppicationModule_args();
+      args.setAppModuleId(appModuleId);
+      sendBase("deleteAppicationModule", args);
+    }
+
+    public boolean recv_deleteAppicationModule() throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
+    {
+      deleteAppicationModule_result result = new deleteAppicationModule_result();
+      receiveBase(result, "deleteAppicationModule");
+      if (result.isSetSuccess()) {
+        return result.success;
+      }
+      if (result.ire != null) {
+        throw result.ire;
+      }
+      if (result.ace != null) {
+        throw result.ace;
+      }
+      if (result.ase != null) {
+        throw result.ase;
+      }
+      throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "deleteAppicationModule failed: unknown result");
+    }
+
+    public String addApplicationDeployment(String applicationInterfaceId, org.apache.airavata.model.application.deployment.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_addApplicationDeployment(applicationInterfaceId, applicationDeployment);
       return recv_addApplicationDeployment();
     }
 
-    public void send_addApplicationDeployment(String applicationInterfaceId, org.apache.airavata.model.appcatalog.ApplicationDeployment applicationDeployment) throws org.apache.thrift.TException
+    public void send_addApplicationDeployment(String applicationInterfaceId, org.apache.airavata.model.application.deployment.ApplicationDeploymentDescription applicationDeployment) throws org.apache.thrift.TException
     {
       addApplicationDeployment_args args = new addApplicationDeployment_args();
       args.setApplicationInterfaceId(applicationInterfaceId);
@@ -851,7 +1003,7 @@ import org.slf4j.LoggerFactory;
       throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "listApplicationDeploymentIds failed: unknown result");
     }
 
-    public org.apache.airavata.model.appcatalog.ApplicationDeployment getApplicationDeployment(String applicationInterfaceId, String applicationDeploymentId) 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.application.deployment.ApplicationDeploymentDescription getApplicationDeployment(String applicationInterfaceId, String applicationDeploymentId) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
     {
       send_getApplicationDeployment(applicationInterfaceId, applicationDeploymentId);
       return recv_getApplicationDeployment();
@@ -865,7 +1017,7 @@ import org.slf4j.LoggerFactory;
       sendBase("getApplicationDeployment", args);
     }
 
-    public org.apache.airavata.model.appcatalog.ApplicationDeployment recv_getApplicationDeployment() 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.application.deployment.ApplicationDeploymentDescription recv_getApplicationDeployment() throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
     {
       getApplicationDeployment_result result = new getApplicationDeployment_result();
       receiveBase(result, "getApplicationDeployment");
@@ -931,7 +1083,7 @@ import org.slf4j.LoggerFactory;
       }
     }
 
-    public void addComputeResourceDescription(org.apache.airavata.model.appcatalog.ComputeResourceDescription computeResourceDescription, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+    public void addComputeResourceDescription(org.apache.airavata.model.computehost.ComputeResourceDescription computeResourceDescription, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
       checkReady();
       addComputeResourceDescription_call method_call = new addComputeResourceDescription_call(computeResourceDescription, resultHandler, this, ___protocolFactory, ___transport);
       this.___currentMethod = method_call;
@@ -939,8 +1091,8 @@ import org.slf4j.LoggerFactory;
     }
 
     public static class addComputeResourceDescription_call extends org.apache.thrift.async.TAsyncMethodCall {
-      private org.apache.airavata.model.appcatalog.ComputeResourceDescription computeResourceDescription;
-      public addComputeResourceDescription_call(org.apache.airavata.model.appcatalog.ComputeResourceDescription computeResourceDescription, 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 {
+      private org.apache.airavata.model.computehost.ComputeResourceDescription computeResourceDescription;
+      public addComputeResourceDescription_call(org.apache.airavata.model.computehost.ComputeResourceDescription computeResourceDescription, 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.computeResourceDescription = computeResourceDescription;
       }
@@ -963,7 +1115,7 @@ import org.slf4j.LoggerFactory;
       }
     }
 
-    public void addSSHJobSubmissionProtocol(String computeResourceId, org.apache.airavata.model.appcatalog.SSHJobSubmission jobSubmission, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+    public void addSSHJobSubmissionProtocol(String computeResourceId, org.apache.airavata.model.computehost.SSHJobSubmission jobSubmission, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
       checkReady();
       addSSHJobSubmissionProtocol_call method_call = new addSSHJobSubmissionProtocol_call(computeResourceId, jobSubmission, resultHandler, this, ___protocolFactory, ___transport);
       this.___currentMethod = method_call;
@@ -972,8 +1124,8 @@ import org.slf4j.LoggerFactory;
 
     public static class addSSHJobSubmissionProtocol_call extends org.apache.thrift.async.TAsyncMethodCall {
       private String computeResourceId;
-      private org.apache.airavata.model.appcatalog.SSHJobSubmission jobSubmission;
-      public addSSHJobSubmissionProtocol_call(String computeResourceId, org.apache.airavata.model.appcatalog.SSHJobSubmission jobSubmission, 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 {
+      private org.apache.airavata.model.computehost.SSHJobSubmission jobSubmission;
+      public addSSHJobSubmissionProtocol_call(String computeResourceId, org.apache.airavata.model.computehost.SSHJobSubmission jobSubmission, 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.computeResourceId = computeResourceId;
         this.jobSubmission = jobSubmission;
@@ -998,7 +1150,7 @@ import org.slf4j.LoggerFactory;
       }
     }
 
-    public void addGSISSHJobSubmissionProtocol(String computeResourceId, org.apache.airavata.model.appcatalog.GSISSHJobSubmission jobSubmission, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+    public void addGSISSHJobSubmissionProtocol(String computeResourceId, org.apache.airavata.model.computehost.GSISSHJobSubmission jobSubmission, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
       checkReady();
       addGSISSHJobSubmissionProtocol_call method_call = new addGSISSHJobSubmissionProtocol_call(computeResourceId, jobSubmission, resultHandler, this, ___protocolFactory, ___transport);
       this.___currentMethod = method_call;
@@ -1007,8 +1159,8 @@ import org.slf4j.LoggerFactory;
 
     public static class addGSISSHJobSubmissionProtocol_call extends org.apache.thrift.async.TAsyncMethodCall {
       private String computeResourceId;
-      private org.apache.airavata.model.appcatalog.GSISSHJobSubmission jobSubmission;
-      public addGSISSHJobSubmissionProtocol_call(String computeResourceId, org.apache.airavata.model.appcatalog.GSISSHJobSubmission jobSubmission, 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 {
+      private org.apache.airavata.model.computehost.GSISSHJobSubmission jobSubmission;
+      public addGSISSHJobSubmissionProtocol_call(String computeResourceId, org.apache.airavata.model.computehost.GSISSHJobSubmission jobSubmission, 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.computeResourceId = computeResourceId;
         this.jobSubmission = jobSubmission;
@@ -1033,7 +1185,7 @@ import org.slf4j.LoggerFactory;
       }
     }
 
-    public void addGlobusJobSubmissionProtocol(String computeResourceId, org.apache.airavata.model.appcatalog.GlobusJobSubmission jobSubmission, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+    public void addGlobusJobSubmissionProtocol(String computeResourceId, org.apache.airavata.model.computehost.GlobusJobSubmission jobSubmission, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
       checkReady();
       addGlobusJobSubmissionProtocol_call method_call = new addGlobusJobSubmissionProtocol_call(computeResourceId, jobSubmission, resultHandler, this, ___protocolFactory, ___transport);
       this.___currentMethod = method_call;
@@ -1042,8 +1194,8 @@ import org.slf4j.LoggerFactory;
 
     public static class addGlobusJobSubmissionProtocol_call extends org.apache.thrift.async.TAsyncMethodCall {
       private String computeResourceId;
-      private org.apache.airavata.model.appcatalog.GlobusJobSubmission jobSubmission;
-      public addGlobusJobSubmissionProtocol_call(String computeResourceId, org.apache.airavata.model.appcatalog.GlobusJobSubmission jobSubmission, 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 {
+      private org.apache.airavata.model.computehost.GlobusJobSubmission jobSubmission;
+      public addGlobusJobSubmissionProtocol_call(String computeResourceId, org.apache.airavata.model.computehost.GlobusJobSubmission jobSubmission, 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.computeResourceId = computeResourceId;
         this.jobSubmission = jobSubmission;
@@ -1068,7 +1220,7 @@ import org.slf4j.LoggerFactory;
       }
     }
 
-    public void addSCPDataMovementProtocol(String computeResourceId, org.apache.airavata.model.appcatalog.SCPDataMovement dataMovement, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+    public void addSCPDataMovementProtocol(String computeResourceId, org.apache.airavata.model.computehost.SCPDataMovement dataMovement, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
       checkReady();
       addSCPDataMovementProtocol_call method_call = new addSCPDataMovementProtocol_call(computeResourceId, dataMovement, resultHandler, this, ___protocolFactory, ___transport);
       this.___currentMethod = method_call;
@@ -1077,8 +1229,8 @@ import org.slf4j.LoggerFactory;
 
     public static class addSCPDataMovementProtocol_call extends org.apache.thrift.async.TAsyncMethodCall {
       private String computeResourceId;
-      private org.apache.airavata.model.appcatalog.SCPDataMovement dataMovement;
-      public addSCPDataMovementProtocol_call(String computeResourceId, org.apache.airavata.model.appcatalog.SCPDataMovement dataMovement, 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 {
+      private org.apache.airavata.model.computehost.SCPDataMovement dataMovement;
+      public addSCPDataMovementProtocol_call(String computeResourceId, org.apache.airavata.model.computehost.SCPDataMovement dataMovement, 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.computeResourceId = computeResourceId;
         this.dataMovement = dataMovement;
@@ -1103,7 +1255,7 @@ import org.slf4j.LoggerFactory;
       }
     }
 
-    public void addGridFTPDataMovementProtocol(String computeResourceId, org.apache.airavata.model.appcatalog.GridFTPDataMovement dataMovement, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+    public void addGridFTPDataMovementProtocol(String computeResourceId, org.apache.airavata.model.computehost.GridFTPDataMovement dataMovement, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
       checkReady();
       addGridFTPDataMovementProtocol_call method_call = new addGridFTPDataMovementProtocol_call(computeResourceId, dataMovement, resultHandler, this, ___protocolFactory, ___transport);
       this.___currentMethod = method_call;
@@ -1112,8 +1264,8 @@ import org.slf4j.LoggerFactory;
 
     public static class addGridFTPDataMovementProtocol_call extends org.apache.thrift.async.TAsyncMethodCall {
       private String computeResourceId;
-      private org.apache.airavata.model.appcatalog.GridFTPDataMovement dataMovement;
-      public addGridFTPDataMovementProtocol_call(String computeResourceId, org.apache.airavata.model.appcatalog.GridFTPDataMovement dataMovement, 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 {
+      private org.apache.airavata.model.computehost.GridFTPDataMovement dataMovement;
+      public addGridFTPDataMovementProtocol_call(String computeResourceId, org.apache.airavata.model.computehost.GridFTPDataMovement dataMovement, 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.computeResourceId = computeResourceId;
         this.dataMovement = dataMovement;
@@ -1189,7 +1341,7 @@ import org.slf4j.LoggerFactory;
         prot.writeMessageEnd();
       }
 
-      public org.apache.airavata.model.appcatalog.ComputeResourceDescription getResult() 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.computehost.ComputeResourceDescription getResult() throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException {
         if (getState() != org.apache.thrift.async.TAsyncMethodCall.State.RESPONSE_READ) {
           throw new IllegalStateException("Method call not finished!");
         }
@@ -1221,7 +1373,7 @@ import org.slf4j.LoggerFactory;
         prot.writeMessageEnd();
       }
 
-      public org.apache.airavata.model.appcatalog.SSHJobSubmission getResult() 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.computehost.SSHJobSubmission getResult() throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException {
         if (getState() != org.apache.thrift.async.TAsyncMethodCall.State.RESPONSE_READ) {
           throw new IllegalStateException("Method call not finished!");
         }
@@ -1253,7 +1405,7 @@ import org.slf4j.LoggerFactory;
         prot.writeMessageEnd();
       }
 
-      public org.apache.airavata.model.appcatalog.GSISSHJobSubmission getResult() 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.computehost.GSISSHJobSubmission getResult() throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException {
         if (getState() != org.apache.thrift.async.TAsyncMethodCall.State.RESPONSE_READ) {
           throw new IllegalStateException("Method call not finished!");
         }
@@ -1285,7 +1437,7 @@ import org.slf4j.LoggerFactory;
         prot.writeMessageEnd();
       }
 
-      public org.apache.airavata.model.appcatalog.GlobusJobSubmission getResult() 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.computehost.GlobusJobSubmission getResult() throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException {
         if (getState() != org.apache.thrift.async.TAsyncMethodCall.State.RESPONSE_READ) {
           throw new IllegalStateException("Method call not finished!");
         }
@@ -1317,7 +1469,7 @@ import org.slf4j.LoggerFactory;
         prot.writeMessageEnd();
       }
 
-      public org.apache.airavata.model.appcatalog.SCPDataMovement getResult() 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.computehost.SCPDataMovement getResult() throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException {
         if (getState() != org.apache.thrift.async.TAsyncMethodCall.State.RESPONSE_READ) {
           throw new IllegalStateException("Method call not finished!");
         }
@@ -1349,7 +1501,7 @@ import org.slf4j.LoggerFactory;
         prot.writeMessageEnd();
       }
 
-      public org.apache.airavata.model.appcatalog.GridFTPDataMovement getResult() 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.computehost.GridFTPDataMovement getResult() throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException {
         if (getState() != org.apache.thrift.async.TAsyncMethodCall.State.RESPONSE_READ) {
           throw new IllegalStateException("Method call not finished!");
         }
@@ -1413,7 +1565,7 @@ import org.slf4j.LoggerFactory;
         prot.writeMessageEnd();
       }
 
-      public org.apache.airavata.model.appcatalog.ComputeResourceDescription getResult() 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.computehost.ComputeResourceDescription getResult() throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException {
         if (getState() != org.apache.thrift.async.TAsyncMethodCall.State.RESPONSE_READ) {
           throw new IllegalStateException("Method call not finished!");
         }
@@ -1423,7 +1575,7 @@ import org.slf4j.LoggerFactory;
       }
     }
 
-    public void addApplicationInterface(org.apache.airavata.model.appcatalog.ApplicationInterface applicationInterface, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+    public void addApplicationInterface(org.apache.airavata.model.application.interface.ApplicationInterfaceDescription applicationInterface, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
       checkReady();
       addApplicationInterface_call method_call = new addApplicationInterface_call(applicationInterface, resultHandler, this, ___protocolFactory, ___transport);
       this.___currentMethod = method_call;
@@ -1431,8 +1583,8 @@ import org.slf4j.LoggerFactory;
     }
 
     public static class addApplicationInterface_call extends org.apache.thrift.async.TAsyncMethodCall {
-      private org.apache.airavata.model.appcatalog.ApplicationInterface applicationInterface;
-      public addApplicationInterface_call(org.apache.airavata.model.appcatalog.ApplicationInterface applicationInterface, 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 {
+      private org.apache.airavata.model.application.interface.ApplicationInterfaceDescription applicationInterface;
+      public addApplicationInterface_call(org.apache.airavata.model.application.interface.ApplicationInterfaceDescription applicationInterface, 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.applicationInterface = applicationInterface;
       }
@@ -1506,7 +1658,7 @@ import org.slf4j.LoggerFactory;
         prot.writeMessageEnd();
       }
 
-      public org.apache.airavata.model.appcatalog.ApplicationInterface getResult() 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.application.interface.ApplicationInterfaceDescription getResult() throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException {
         if (getState() != org.apache.thrift.async.TAsyncMethodCall.State.RESPONSE_READ) {
           throw new IllegalStateException("Method call not finished!");
         }
@@ -1516,7 +1668,141 @@ import org.slf4j.LoggerFactory;
       }
     }
 
-    public void addApplicationDeployment(String applicationInterfaceId, org.apache.airavata.model.appcatalog.ApplicationDeployment applicationDeployment, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+    public void registerAppicationModule(org.apache.airavata.model.application.deployment.ApplicationModule applicationModule, boolean publish, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+      checkReady();
+      registerAppicationModule_call method_call = new registerAppicationModule_call(applicationModule, publish, resultHandler, this, ___protocolFactory, ___transport);
+      this.___currentMethod = method_call;
+      ___manager.call(method_call);
+    }
+
+    public static class registerAppicationModule_call extends org.apache.thrift.async.TAsyncMethodCall {
+      private org.apache.airavata.model.application.deployment.ApplicationModule applicationModule;
+      private boolean publish;
+      public registerAppicationModule_call(org.apache.airavata.model.application.deployment.ApplicationModule applicationModule, boolean publish, 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.applicationModule = applicationModule;
+        this.publish = publish;
+      }
+
+      public void write_args(org.apache.thrift.protocol.TProtocol prot) throws org.apache.thrift.TException {
+        prot.writeMessageBegin(new org.apache.thrift.protocol.TMessage("registerAppicationModule", org.apache.thrift.protocol.TMessageType.CALL, 0));
+        registerAppicationModule_args args = new registerAppicationModule_args();
+        args.setApplicationModule(applicationModule);
+        args.setPublish(publish);
+        args.write(prot);
+        prot.writeMessageEnd();
+      }
+
+      public String getResult() throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException {
+        if (getState() != org.apache.thrift.async.TAsyncMethodCall.State.RESPONSE_READ) {
+          throw new IllegalStateException("Method call not finished!");
+        }
+        org.apache.thrift.transport.TMemoryInputTransport memoryTransport = new org.apache.thrift.transport.TMemoryInputTransport(getFrameBuffer().array());
+        org.apache.thrift.protocol.TProtocol prot = client.getProtocolFactory().getProtocol(memoryTransport);
+        return (new Client(prot)).recv_registerAppicationModule();
+      }
+    }
+
+    public void getAppicationModule(String appModuleId, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+      checkReady();
+      getAppicationModule_call method_call = new getAppicationModule_call(appModuleId, resultHandler, this, ___protocolFactory, ___transport);
+      this.___currentMethod = method_call;
+      ___manager.call(method_call);
+    }
+
+    public static class getAppicationModule_call extends org.apache.thrift.async.TAsyncMethodCall {
+      private String appModuleId;
+      public getAppicationModule_call(String appModuleId, 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.appModuleId = appModuleId;
+      }
+
+      public void write_args(org.apache.thrift.protocol.TProtocol prot) throws org.apache.thrift.TException {
+        prot.writeMessageBegin(new org.apache.thrift.protocol.TMessage("getAppicationModule", org.apache.thrift.protocol.TMessageType.CALL, 0));
+        getAppicationModule_args args = new getAppicationModule_args();
+        args.setAppModuleId(appModuleId);
+        args.write(prot);
+        prot.writeMessageEnd();
+      }
+
+      public org.apache.airavata.model.application.deployment.ApplicationModule getResult() throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException {
+        if (getState() != org.apache.thrift.async.TAsyncMethodCall.State.RESPONSE_READ) {
+          throw new IllegalStateException("Method call not finished!");
+        }
+        org.apache.thrift.transport.TMemoryInputTransport memoryTransport = new org.apache.thrift.transport.TMemoryInputTransport(getFrameBuffer().array());
+        org.apache.thrift.protocol.TProtocol prot = client.getProtocolFactory().getProtocol(memoryTransport);
+        return (new Client(prot)).recv_getAppicationModule();
+      }
+    }
+
+    public void updateAppicationModule(String appModuleId, org.apache.airavata.model.application.deployment.ApplicationModule applicationModule, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+      checkReady();
+      updateAppicationModule_call method_call = new updateAppicationModule_call(appModuleId, applicationModule, resultHandler, this, ___protocolFactory, ___transport);
+      this.___currentMethod = method_call;
+      ___manager.call(method_call);
+    }
+
+    public static class updateAppicationModule_call extends org.apache.thrift.async.TAsyncMethodCall {
+      private String appModuleId;
+      private org.apache.airavata.model.application.deployment.ApplicationModule applicationModule;
+      public updateAppicationModule_call(String appModuleId, org.apache.airavata.model.application.deployment.ApplicationModule applicationModule, 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.appModuleId = appModuleId;
+        this.applicationModule = applicationModule;
+      }
+
+      public void write_args(org.apache.thrift.protocol.TProtocol prot) throws org.apache.thrift.TException {
+        prot.writeMessageBegin(new org.apache.thrift.protocol.TMessage("updateAppicationModule", org.apache.thrift.protocol.TMessageType.CALL, 0));
+        updateAppicationModule_args args = new updateAppicationModule_args();
+        args.setAppModuleId(appModuleId);
+        args.setApplicationModule(applicationModule);
+        args.write(prot);
+        prot.writeMessageEnd();
+      }
+
+      public boolean getResult() throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException {
+        if (getState() != org.apache.thrift.async.TAsyncMethodCall.State.RESPONSE_READ) {
+          throw new IllegalStateException("Method call not finished!");
+        }
+        org.apache.thrift.transport.TMemoryInputTransport memoryTransport = new org.apache.thrift.transport.TMemoryInputTransport(getFrameBuffer().array());
+        org.apache.thrift.protocol.TProtocol prot = client.getProtocolFactory().getProtocol(memoryTransport);
+        return (new Client(prot)).recv_updateAppicationModule();
+      }
+    }
+
+    public void deleteAppicationModule(String appModuleId, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+      checkReady();
+      deleteAppicationModule_call method_call = new deleteAppicationModule_call(appModuleId, resultHandler, this, ___protocolFactory, ___transport);
+      this.___currentMethod = method_call;
+      ___manager.call(method_call);
+    }
+
+    public static class deleteAppicationModule_call extends org.apache.thrift.async.TAsyncMethodCall {
+      private String appModuleId;
+      public deleteAppicationModule_call(String appModuleId, 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.appModuleId = appModuleId;
+      }
+
+      public void write_args(org.apache.thr

<TRUNCATED>