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 2015/11/03 20:47:53 UTC

[28/51] [abbrv] airavata git commit: merge with master

http://git-wip-us.apache.org/repos/asf/airavata/blob/3398ec17/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 f8f5b5e..385198c 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
@@ -51,7 +51,7 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 @SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"})
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-10-12")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-10-20")
 public class Airavata {
 
   public interface Iface {
@@ -454,6 +454,20 @@ public class Airavata {
     public String createExperiment(org.apache.airavata.model.security.AuthzToken authzToken, String gatewayId, org.apache.airavata.model.experiment.ExperimentModel experiment) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.airavata.model.error.AuthorizationException, org.apache.thrift.TException;
 
     /**
+     * If the experiment is not already launched experiment can be deleted.
+     * 
+     * @param authzToken
+     * @param experiementId
+     * 
+     * @return boolean identifier for the success or failure of the deletion operation
+     * 
+     * 
+     * @param authzToken
+     * @param experimentId
+     */
+    public boolean deleteExperiment(org.apache.airavata.model.security.AuthzToken authzToken, String experimentId) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.airavata.model.error.AuthorizationException, org.apache.thrift.TException;
+
+    /**
      * Fetch previously created experiment metadata.
      * 
      * @param airavataExperimentId
@@ -1828,6 +1842,8 @@ public class Airavata {
 
     public void createExperiment(org.apache.airavata.model.security.AuthzToken authzToken, String gatewayId, org.apache.airavata.model.experiment.ExperimentModel experiment, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
+    public void deleteExperiment(org.apache.airavata.model.security.AuthzToken authzToken, String experimentId, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+
     public void getExperiment(org.apache.airavata.model.security.AuthzToken authzToken, String airavataExperimentId, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
     public void updateExperiment(org.apache.airavata.model.security.AuthzToken authzToken, String airavataExperimentId, org.apache.airavata.model.experiment.ExperimentModel experiment, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
@@ -3058,6 +3074,42 @@ public class Airavata {
       throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "createExperiment failed: unknown result");
     }
 
+    public boolean deleteExperiment(org.apache.airavata.model.security.AuthzToken authzToken, String experimentId) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.airavata.model.error.AuthorizationException, org.apache.thrift.TException
+    {
+      send_deleteExperiment(authzToken, experimentId);
+      return recv_deleteExperiment();
+    }
+
+    public void send_deleteExperiment(org.apache.airavata.model.security.AuthzToken authzToken, String experimentId) throws org.apache.thrift.TException
+    {
+      deleteExperiment_args args = new deleteExperiment_args();
+      args.setAuthzToken(authzToken);
+      args.setExperimentId(experimentId);
+      sendBase("deleteExperiment", args);
+    }
+
+    public boolean recv_deleteExperiment() throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.airavata.model.error.AuthorizationException, org.apache.thrift.TException
+    {
+      deleteExperiment_result result = new deleteExperiment_result();
+      receiveBase(result, "deleteExperiment");
+      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;
+      }
+      if (result.ae != null) {
+        throw result.ae;
+      }
+      throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "deleteExperiment failed: unknown result");
+    }
+
     public org.apache.airavata.model.experiment.ExperimentModel getExperiment(org.apache.airavata.model.security.AuthzToken authzToken, String airavataExperimentId) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.ExperimentNotFoundException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.airavata.model.error.AuthorizationException, org.apache.thrift.TException
     {
       send_getExperiment(authzToken, airavataExperimentId);
@@ -7670,6 +7722,41 @@ public class Airavata {
       }
     }
 
+    public void deleteExperiment(org.apache.airavata.model.security.AuthzToken authzToken, String experimentId, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+      checkReady();
+      deleteExperiment_call method_call = new deleteExperiment_call(authzToken, experimentId, resultHandler, this, ___protocolFactory, ___transport);
+      this.___currentMethod = method_call;
+      ___manager.call(method_call);
+    }
+
+    public static class deleteExperiment_call extends org.apache.thrift.async.TAsyncMethodCall {
+      private org.apache.airavata.model.security.AuthzToken authzToken;
+      private String experimentId;
+      public deleteExperiment_call(org.apache.airavata.model.security.AuthzToken authzToken, String experimentId, 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.authzToken = authzToken;
+        this.experimentId = experimentId;
+      }
+
+      public void write_args(org.apache.thrift.protocol.TProtocol prot) throws org.apache.thrift.TException {
+        prot.writeMessageBegin(new org.apache.thrift.protocol.TMessage("deleteExperiment", org.apache.thrift.protocol.TMessageType.CALL, 0));
+        deleteExperiment_args args = new deleteExperiment_args();
+        args.setAuthzToken(authzToken);
+        args.setExperimentId(experimentId);
+        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.airavata.model.error.AuthorizationException, 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_deleteExperiment();
+      }
+    }
+
     public void getExperiment(org.apache.airavata.model.security.AuthzToken authzToken, String airavataExperimentId, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
       checkReady();
       getExperiment_call method_call = new getExperiment_call(authzToken, airavataExperimentId, resultHandler, this, ___protocolFactory, ___transport);
@@ -11244,6 +11331,7 @@ public class Airavata {
       processMap.put("getExperimentsInProject", new getExperimentsInProject());
       processMap.put("getUserExperiments", new getUserExperiments());
       processMap.put("createExperiment", new createExperiment());
+      processMap.put("deleteExperiment", new deleteExperiment());
       processMap.put("getExperiment", new getExperiment());
       processMap.put("updateExperiment", new updateExperiment());
       processMap.put("updateExperimentConfiguration", new updateExperimentConfiguration());
@@ -12158,6 +12246,37 @@ public class Airavata {
       }
     }
 
+    public static class deleteExperiment<I extends Iface> extends org.apache.thrift.ProcessFunction<I, deleteExperiment_args> {
+      public deleteExperiment() {
+        super("deleteExperiment");
+      }
+
+      public deleteExperiment_args getEmptyArgsInstance() {
+        return new deleteExperiment_args();
+      }
+
+      protected boolean isOneway() {
+        return false;
+      }
+
+      public deleteExperiment_result getResult(I iface, deleteExperiment_args args) throws org.apache.thrift.TException {
+        deleteExperiment_result result = new deleteExperiment_result();
+        try {
+          result.success = iface.deleteExperiment(args.authzToken, args.experimentId);
+          result.setSuccessIsSet(true);
+        } catch (org.apache.airavata.model.error.InvalidRequestException ire) {
+          result.ire = ire;
+        } catch (org.apache.airavata.model.error.AiravataClientException ace) {
+          result.ace = ace;
+        } catch (org.apache.airavata.model.error.AiravataSystemException ase) {
+          result.ase = ase;
+        } catch (org.apache.airavata.model.error.AuthorizationException ae) {
+          result.ae = ae;
+        }
+        return result;
+      }
+    }
+
     public static class getExperiment<I extends Iface> extends org.apache.thrift.ProcessFunction<I, getExperiment_args> {
       public getExperiment() {
         super("getExperiment");
@@ -15123,6 +15242,7 @@ public class Airavata {
       processMap.put("getExperimentsInProject", new getExperimentsInProject());
       processMap.put("getUserExperiments", new getUserExperiments());
       processMap.put("createExperiment", new createExperiment());
+      processMap.put("deleteExperiment", new deleteExperiment());
       processMap.put("getExperiment", new getExperiment());
       processMap.put("updateExperiment", new updateExperiment());
       processMap.put("updateExperimentConfiguration", new updateExperimentConfiguration());
@@ -17172,21 +17292,22 @@ public class Airavata {
       }
     }
 
-    public static class getExperiment<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, getExperiment_args, org.apache.airavata.model.experiment.ExperimentModel> {
-      public getExperiment() {
-        super("getExperiment");
+    public static class deleteExperiment<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, deleteExperiment_args, Boolean> {
+      public deleteExperiment() {
+        super("deleteExperiment");
       }
 
-      public getExperiment_args getEmptyArgsInstance() {
-        return new getExperiment_args();
+      public deleteExperiment_args getEmptyArgsInstance() {
+        return new deleteExperiment_args();
       }
 
-      public AsyncMethodCallback<org.apache.airavata.model.experiment.ExperimentModel> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
+      public AsyncMethodCallback<Boolean> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
         final org.apache.thrift.AsyncProcessFunction fcall = this;
-        return new AsyncMethodCallback<org.apache.airavata.model.experiment.ExperimentModel>() { 
-          public void onComplete(org.apache.airavata.model.experiment.ExperimentModel o) {
-            getExperiment_result result = new getExperiment_result();
+        return new AsyncMethodCallback<Boolean>() { 
+          public void onComplete(Boolean o) {
+            deleteExperiment_result result = new deleteExperiment_result();
             result.success = o;
+            result.setSuccessIsSet(true);
             try {
               fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
               return;
@@ -17198,17 +17319,12 @@ public class Airavata {
           public void onError(Exception e) {
             byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
             org.apache.thrift.TBase msg;
-            getExperiment_result result = new getExperiment_result();
+            deleteExperiment_result result = new deleteExperiment_result();
             if (e instanceof org.apache.airavata.model.error.InvalidRequestException) {
                         result.ire = (org.apache.airavata.model.error.InvalidRequestException) e;
                         result.setIreIsSet(true);
                         msg = result;
             }
-            else             if (e instanceof org.apache.airavata.model.error.ExperimentNotFoundException) {
-                        result.enf = (org.apache.airavata.model.error.ExperimentNotFoundException) e;
-                        result.setEnfIsSet(true);
-                        msg = result;
-            }
             else             if (e instanceof org.apache.airavata.model.error.AiravataClientException) {
                         result.ace = (org.apache.airavata.model.error.AiravataClientException) e;
                         result.setAceIsSet(true);
@@ -17244,25 +17360,26 @@ public class Airavata {
         return false;
       }
 
-      public void start(I iface, getExperiment_args args, org.apache.thrift.async.AsyncMethodCallback<org.apache.airavata.model.experiment.ExperimentModel> resultHandler) throws TException {
-        iface.getExperiment(args.authzToken, args.airavataExperimentId,resultHandler);
+      public void start(I iface, deleteExperiment_args args, org.apache.thrift.async.AsyncMethodCallback<Boolean> resultHandler) throws TException {
+        iface.deleteExperiment(args.authzToken, args.experimentId,resultHandler);
       }
     }
 
-    public static class updateExperiment<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, updateExperiment_args, Void> {
-      public updateExperiment() {
-        super("updateExperiment");
+    public static class getExperiment<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, getExperiment_args, org.apache.airavata.model.experiment.ExperimentModel> {
+      public getExperiment() {
+        super("getExperiment");
       }
 
-      public updateExperiment_args getEmptyArgsInstance() {
-        return new updateExperiment_args();
+      public getExperiment_args getEmptyArgsInstance() {
+        return new getExperiment_args();
       }
 
-      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
+      public AsyncMethodCallback<org.apache.airavata.model.experiment.ExperimentModel> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
         final org.apache.thrift.AsyncProcessFunction fcall = this;
-        return new AsyncMethodCallback<Void>() { 
-          public void onComplete(Void o) {
-            updateExperiment_result result = new updateExperiment_result();
+        return new AsyncMethodCallback<org.apache.airavata.model.experiment.ExperimentModel>() { 
+          public void onComplete(org.apache.airavata.model.experiment.ExperimentModel o) {
+            getExperiment_result result = new getExperiment_result();
+            result.success = o;
             try {
               fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
               return;
@@ -17274,7 +17391,7 @@ public class Airavata {
           public void onError(Exception e) {
             byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
             org.apache.thrift.TBase msg;
-            updateExperiment_result result = new updateExperiment_result();
+            getExperiment_result result = new getExperiment_result();
             if (e instanceof org.apache.airavata.model.error.InvalidRequestException) {
                         result.ire = (org.apache.airavata.model.error.InvalidRequestException) e;
                         result.setIreIsSet(true);
@@ -17320,139 +17437,25 @@ public class Airavata {
         return false;
       }
 
-      public void start(I iface, updateExperiment_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
-        iface.updateExperiment(args.authzToken, args.airavataExperimentId, args.experiment,resultHandler);
-      }
-    }
-
-    public static class updateExperimentConfiguration<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, updateExperimentConfiguration_args, Void> {
-      public updateExperimentConfiguration() {
-        super("updateExperimentConfiguration");
-      }
-
-      public updateExperimentConfiguration_args getEmptyArgsInstance() {
-        return new updateExperimentConfiguration_args();
-      }
-
-      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
-        final org.apache.thrift.AsyncProcessFunction fcall = this;
-        return new AsyncMethodCallback<Void>() { 
-          public void onComplete(Void o) {
-            updateExperimentConfiguration_result result = new updateExperimentConfiguration_result();
-            try {
-              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
-              return;
-            } catch (Exception e) {
-              LOGGER.error("Exception writing to internal frame buffer", e);
-            }
-            fb.close();
-          }
-          public void onError(Exception e) {
-            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
-            org.apache.thrift.TBase msg;
-            updateExperimentConfiguration_result result = new updateExperimentConfiguration_result();
-            if (e instanceof org.apache.airavata.model.error.AuthorizationException) {
-                        result.ae = (org.apache.airavata.model.error.AuthorizationException) e;
-                        result.setAeIsSet(true);
-                        msg = result;
-            }
-             else 
-            {
-              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
-              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
-            }
-            try {
-              fcall.sendResponse(fb,msg,msgType,seqid);
-              return;
-            } catch (Exception ex) {
-              LOGGER.error("Exception writing to internal frame buffer", ex);
-            }
-            fb.close();
-          }
-        };
-      }
-
-      protected boolean isOneway() {
-        return false;
-      }
-
-      public void start(I iface, updateExperimentConfiguration_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
-        iface.updateExperimentConfiguration(args.authzToken, args.airavataExperimentId, args.userConfiguration,resultHandler);
+      public void start(I iface, getExperiment_args args, org.apache.thrift.async.AsyncMethodCallback<org.apache.airavata.model.experiment.ExperimentModel> resultHandler) throws TException {
+        iface.getExperiment(args.authzToken, args.airavataExperimentId,resultHandler);
       }
     }
 
-    public static class updateResourceScheduleing<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, updateResourceScheduleing_args, Void> {
-      public updateResourceScheduleing() {
-        super("updateResourceScheduleing");
+    public static class updateExperiment<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, updateExperiment_args, Void> {
+      public updateExperiment() {
+        super("updateExperiment");
       }
 
-      public updateResourceScheduleing_args getEmptyArgsInstance() {
-        return new updateResourceScheduleing_args();
+      public updateExperiment_args getEmptyArgsInstance() {
+        return new updateExperiment_args();
       }
 
       public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
         final org.apache.thrift.AsyncProcessFunction fcall = this;
         return new AsyncMethodCallback<Void>() { 
           public void onComplete(Void o) {
-            updateResourceScheduleing_result result = new updateResourceScheduleing_result();
-            try {
-              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
-              return;
-            } catch (Exception e) {
-              LOGGER.error("Exception writing to internal frame buffer", e);
-            }
-            fb.close();
-          }
-          public void onError(Exception e) {
-            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
-            org.apache.thrift.TBase msg;
-            updateResourceScheduleing_result result = new updateResourceScheduleing_result();
-            if (e instanceof org.apache.airavata.model.error.AuthorizationException) {
-                        result.ae = (org.apache.airavata.model.error.AuthorizationException) e;
-                        result.setAeIsSet(true);
-                        msg = result;
-            }
-             else 
-            {
-              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
-              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
-            }
-            try {
-              fcall.sendResponse(fb,msg,msgType,seqid);
-              return;
-            } catch (Exception ex) {
-              LOGGER.error("Exception writing to internal frame buffer", ex);
-            }
-            fb.close();
-          }
-        };
-      }
-
-      protected boolean isOneway() {
-        return false;
-      }
-
-      public void start(I iface, updateResourceScheduleing_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
-        iface.updateResourceScheduleing(args.authzToken, args.airavataExperimentId, args.resourceScheduling,resultHandler);
-      }
-    }
-
-    public static class validateExperiment<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, validateExperiment_args, Boolean> {
-      public validateExperiment() {
-        super("validateExperiment");
-      }
-
-      public validateExperiment_args getEmptyArgsInstance() {
-        return new validateExperiment_args();
-      }
-
-      public AsyncMethodCallback<Boolean> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
-        final org.apache.thrift.AsyncProcessFunction fcall = this;
-        return new AsyncMethodCallback<Boolean>() { 
-          public void onComplete(Boolean o) {
-            validateExperiment_result result = new validateExperiment_result();
-            result.success = o;
-            result.setSuccessIsSet(true);
+            updateExperiment_result result = new updateExperiment_result();
             try {
               fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
               return;
@@ -17464,7 +17467,7 @@ public class Airavata {
           public void onError(Exception e) {
             byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
             org.apache.thrift.TBase msg;
-            validateExperiment_result result = new validateExperiment_result();
+            updateExperiment_result result = new updateExperiment_result();
             if (e instanceof org.apache.airavata.model.error.InvalidRequestException) {
                         result.ire = (org.apache.airavata.model.error.InvalidRequestException) e;
                         result.setIreIsSet(true);
@@ -17510,25 +17513,25 @@ public class Airavata {
         return false;
       }
 
-      public void start(I iface, validateExperiment_args args, org.apache.thrift.async.AsyncMethodCallback<Boolean> resultHandler) throws TException {
-        iface.validateExperiment(args.authzToken, args.airavataExperimentId,resultHandler);
+      public void start(I iface, updateExperiment_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
+        iface.updateExperiment(args.authzToken, args.airavataExperimentId, args.experiment,resultHandler);
       }
     }
 
-    public static class launchExperiment<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, launchExperiment_args, Void> {
-      public launchExperiment() {
-        super("launchExperiment");
+    public static class updateExperimentConfiguration<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, updateExperimentConfiguration_args, Void> {
+      public updateExperimentConfiguration() {
+        super("updateExperimentConfiguration");
       }
 
-      public launchExperiment_args getEmptyArgsInstance() {
-        return new launchExperiment_args();
+      public updateExperimentConfiguration_args getEmptyArgsInstance() {
+        return new updateExperimentConfiguration_args();
       }
 
       public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
         final org.apache.thrift.AsyncProcessFunction fcall = this;
         return new AsyncMethodCallback<Void>() { 
           public void onComplete(Void o) {
-            launchExperiment_result result = new launchExperiment_result();
+            updateExperimentConfiguration_result result = new updateExperimentConfiguration_result();
             try {
               fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
               return;
@@ -17540,28 +17543,64 @@ public class Airavata {
           public void onError(Exception e) {
             byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
             org.apache.thrift.TBase msg;
-            launchExperiment_result result = new launchExperiment_result();
-            if (e instanceof org.apache.airavata.model.error.InvalidRequestException) {
-                        result.ire = (org.apache.airavata.model.error.InvalidRequestException) e;
-                        result.setIreIsSet(true);
+            updateExperimentConfiguration_result result = new updateExperimentConfiguration_result();
+            if (e instanceof org.apache.airavata.model.error.AuthorizationException) {
+                        result.ae = (org.apache.airavata.model.error.AuthorizationException) e;
+                        result.setAeIsSet(true);
                         msg = result;
             }
-            else             if (e instanceof org.apache.airavata.model.error.ExperimentNotFoundException) {
-                        result.enf = (org.apache.airavata.model.error.ExperimentNotFoundException) e;
-                        result.setEnfIsSet(true);
-                        msg = result;
+             else 
+            {
+              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
+              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
             }
-            else             if (e instanceof org.apache.airavata.model.error.AiravataClientException) {
-                        result.ace = (org.apache.airavata.model.error.AiravataClientException) e;
-                        result.setAceIsSet(true);
-                        msg = result;
+            try {
+              fcall.sendResponse(fb,msg,msgType,seqid);
+              return;
+            } catch (Exception ex) {
+              LOGGER.error("Exception writing to internal frame buffer", ex);
             }
-            else             if (e instanceof org.apache.airavata.model.error.AiravataSystemException) {
-                        result.ase = (org.apache.airavata.model.error.AiravataSystemException) e;
-                        result.setAseIsSet(true);
-                        msg = result;
+            fb.close();
+          }
+        };
+      }
+
+      protected boolean isOneway() {
+        return false;
+      }
+
+      public void start(I iface, updateExperimentConfiguration_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
+        iface.updateExperimentConfiguration(args.authzToken, args.airavataExperimentId, args.userConfiguration,resultHandler);
+      }
+    }
+
+    public static class updateResourceScheduleing<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, updateResourceScheduleing_args, Void> {
+      public updateResourceScheduleing() {
+        super("updateResourceScheduleing");
+      }
+
+      public updateResourceScheduleing_args getEmptyArgsInstance() {
+        return new updateResourceScheduleing_args();
+      }
+
+      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
+        final org.apache.thrift.AsyncProcessFunction fcall = this;
+        return new AsyncMethodCallback<Void>() { 
+          public void onComplete(Void o) {
+            updateResourceScheduleing_result result = new updateResourceScheduleing_result();
+            try {
+              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
+              return;
+            } catch (Exception e) {
+              LOGGER.error("Exception writing to internal frame buffer", e);
             }
-            else             if (e instanceof org.apache.airavata.model.error.AuthorizationException) {
+            fb.close();
+          }
+          public void onError(Exception e) {
+            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
+            org.apache.thrift.TBase msg;
+            updateResourceScheduleing_result result = new updateResourceScheduleing_result();
+            if (e instanceof org.apache.airavata.model.error.AuthorizationException) {
                         result.ae = (org.apache.airavata.model.error.AuthorizationException) e;
                         result.setAeIsSet(true);
                         msg = result;
@@ -17586,26 +17625,27 @@ public class Airavata {
         return false;
       }
 
-      public void start(I iface, launchExperiment_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
-        iface.launchExperiment(args.authzToken, args.airavataExperimentId, args.gatewayId,resultHandler);
+      public void start(I iface, updateResourceScheduleing_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
+        iface.updateResourceScheduleing(args.authzToken, args.airavataExperimentId, args.resourceScheduling,resultHandler);
       }
     }
 
-    public static class getExperimentStatus<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, getExperimentStatus_args, org.apache.airavata.model.status.ExperimentStatus> {
-      public getExperimentStatus() {
-        super("getExperimentStatus");
+    public static class validateExperiment<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, validateExperiment_args, Boolean> {
+      public validateExperiment() {
+        super("validateExperiment");
       }
 
-      public getExperimentStatus_args getEmptyArgsInstance() {
-        return new getExperimentStatus_args();
+      public validateExperiment_args getEmptyArgsInstance() {
+        return new validateExperiment_args();
       }
 
-      public AsyncMethodCallback<org.apache.airavata.model.status.ExperimentStatus> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
+      public AsyncMethodCallback<Boolean> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
         final org.apache.thrift.AsyncProcessFunction fcall = this;
-        return new AsyncMethodCallback<org.apache.airavata.model.status.ExperimentStatus>() { 
-          public void onComplete(org.apache.airavata.model.status.ExperimentStatus o) {
-            getExperimentStatus_result result = new getExperimentStatus_result();
+        return new AsyncMethodCallback<Boolean>() { 
+          public void onComplete(Boolean o) {
+            validateExperiment_result result = new validateExperiment_result();
             result.success = o;
+            result.setSuccessIsSet(true);
             try {
               fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
               return;
@@ -17617,7 +17657,7 @@ public class Airavata {
           public void onError(Exception e) {
             byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
             org.apache.thrift.TBase msg;
-            getExperimentStatus_result result = new getExperimentStatus_result();
+            validateExperiment_result result = new validateExperiment_result();
             if (e instanceof org.apache.airavata.model.error.InvalidRequestException) {
                         result.ire = (org.apache.airavata.model.error.InvalidRequestException) e;
                         result.setIreIsSet(true);
@@ -17663,26 +17703,25 @@ public class Airavata {
         return false;
       }
 
-      public void start(I iface, getExperimentStatus_args args, org.apache.thrift.async.AsyncMethodCallback<org.apache.airavata.model.status.ExperimentStatus> resultHandler) throws TException {
-        iface.getExperimentStatus(args.authzToken, args.airavataExperimentId,resultHandler);
+      public void start(I iface, validateExperiment_args args, org.apache.thrift.async.AsyncMethodCallback<Boolean> resultHandler) throws TException {
+        iface.validateExperiment(args.authzToken, args.airavataExperimentId,resultHandler);
       }
     }
 
-    public static class getExperimentOutputs<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, getExperimentOutputs_args, List<org.apache.airavata.model.application.io.OutputDataObjectType>> {
-      public getExperimentOutputs() {
-        super("getExperimentOutputs");
+    public static class launchExperiment<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, launchExperiment_args, Void> {
+      public launchExperiment() {
+        super("launchExperiment");
       }
 
-      public getExperimentOutputs_args getEmptyArgsInstance() {
-        return new getExperimentOutputs_args();
+      public launchExperiment_args getEmptyArgsInstance() {
+        return new launchExperiment_args();
       }
 
-      public AsyncMethodCallback<List<org.apache.airavata.model.application.io.OutputDataObjectType>> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
+      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
         final org.apache.thrift.AsyncProcessFunction fcall = this;
-        return new AsyncMethodCallback<List<org.apache.airavata.model.application.io.OutputDataObjectType>>() { 
-          public void onComplete(List<org.apache.airavata.model.application.io.OutputDataObjectType> o) {
-            getExperimentOutputs_result result = new getExperimentOutputs_result();
-            result.success = o;
+        return new AsyncMethodCallback<Void>() { 
+          public void onComplete(Void o) {
+            launchExperiment_result result = new launchExperiment_result();
             try {
               fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
               return;
@@ -17694,7 +17733,7 @@ public class Airavata {
           public void onError(Exception e) {
             byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
             org.apache.thrift.TBase msg;
-            getExperimentOutputs_result result = new getExperimentOutputs_result();
+            launchExperiment_result result = new launchExperiment_result();
             if (e instanceof org.apache.airavata.model.error.InvalidRequestException) {
                         result.ire = (org.apache.airavata.model.error.InvalidRequestException) e;
                         result.setIreIsSet(true);
@@ -17740,25 +17779,25 @@ public class Airavata {
         return false;
       }
 
-      public void start(I iface, getExperimentOutputs_args args, org.apache.thrift.async.AsyncMethodCallback<List<org.apache.airavata.model.application.io.OutputDataObjectType>> resultHandler) throws TException {
-        iface.getExperimentOutputs(args.authzToken, args.airavataExperimentId,resultHandler);
+      public void start(I iface, launchExperiment_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
+        iface.launchExperiment(args.authzToken, args.airavataExperimentId, args.gatewayId,resultHandler);
       }
     }
 
-    public static class getIntermediateOutputs<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, getIntermediateOutputs_args, List<org.apache.airavata.model.application.io.OutputDataObjectType>> {
-      public getIntermediateOutputs() {
-        super("getIntermediateOutputs");
+    public static class getExperimentStatus<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, getExperimentStatus_args, org.apache.airavata.model.status.ExperimentStatus> {
+      public getExperimentStatus() {
+        super("getExperimentStatus");
       }
 
-      public getIntermediateOutputs_args getEmptyArgsInstance() {
-        return new getIntermediateOutputs_args();
+      public getExperimentStatus_args getEmptyArgsInstance() {
+        return new getExperimentStatus_args();
       }
 
-      public AsyncMethodCallback<List<org.apache.airavata.model.application.io.OutputDataObjectType>> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
+      public AsyncMethodCallback<org.apache.airavata.model.status.ExperimentStatus> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
         final org.apache.thrift.AsyncProcessFunction fcall = this;
-        return new AsyncMethodCallback<List<org.apache.airavata.model.application.io.OutputDataObjectType>>() { 
-          public void onComplete(List<org.apache.airavata.model.application.io.OutputDataObjectType> o) {
-            getIntermediateOutputs_result result = new getIntermediateOutputs_result();
+        return new AsyncMethodCallback<org.apache.airavata.model.status.ExperimentStatus>() { 
+          public void onComplete(org.apache.airavata.model.status.ExperimentStatus o) {
+            getExperimentStatus_result result = new getExperimentStatus_result();
             result.success = o;
             try {
               fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
@@ -17771,7 +17810,7 @@ public class Airavata {
           public void onError(Exception e) {
             byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
             org.apache.thrift.TBase msg;
-            getIntermediateOutputs_result result = new getIntermediateOutputs_result();
+            getExperimentStatus_result result = new getExperimentStatus_result();
             if (e instanceof org.apache.airavata.model.error.InvalidRequestException) {
                         result.ire = (org.apache.airavata.model.error.InvalidRequestException) e;
                         result.setIreIsSet(true);
@@ -17817,25 +17856,25 @@ public class Airavata {
         return false;
       }
 
-      public void start(I iface, getIntermediateOutputs_args args, org.apache.thrift.async.AsyncMethodCallback<List<org.apache.airavata.model.application.io.OutputDataObjectType>> resultHandler) throws TException {
-        iface.getIntermediateOutputs(args.authzToken, args.airavataExperimentId,resultHandler);
+      public void start(I iface, getExperimentStatus_args args, org.apache.thrift.async.AsyncMethodCallback<org.apache.airavata.model.status.ExperimentStatus> resultHandler) throws TException {
+        iface.getExperimentStatus(args.authzToken, args.airavataExperimentId,resultHandler);
       }
     }
 
-    public static class getJobStatuses<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, getJobStatuses_args, Map<String,org.apache.airavata.model.status.JobStatus>> {
-      public getJobStatuses() {
-        super("getJobStatuses");
+    public static class getExperimentOutputs<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, getExperimentOutputs_args, List<org.apache.airavata.model.application.io.OutputDataObjectType>> {
+      public getExperimentOutputs() {
+        super("getExperimentOutputs");
       }
 
-      public getJobStatuses_args getEmptyArgsInstance() {
-        return new getJobStatuses_args();
+      public getExperimentOutputs_args getEmptyArgsInstance() {
+        return new getExperimentOutputs_args();
       }
 
-      public AsyncMethodCallback<Map<String,org.apache.airavata.model.status.JobStatus>> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
+      public AsyncMethodCallback<List<org.apache.airavata.model.application.io.OutputDataObjectType>> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
         final org.apache.thrift.AsyncProcessFunction fcall = this;
-        return new AsyncMethodCallback<Map<String,org.apache.airavata.model.status.JobStatus>>() { 
-          public void onComplete(Map<String,org.apache.airavata.model.status.JobStatus> o) {
-            getJobStatuses_result result = new getJobStatuses_result();
+        return new AsyncMethodCallback<List<org.apache.airavata.model.application.io.OutputDataObjectType>>() { 
+          public void onComplete(List<org.apache.airavata.model.application.io.OutputDataObjectType> o) {
+            getExperimentOutputs_result result = new getExperimentOutputs_result();
             result.success = o;
             try {
               fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
@@ -17848,7 +17887,7 @@ public class Airavata {
           public void onError(Exception e) {
             byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
             org.apache.thrift.TBase msg;
-            getJobStatuses_result result = new getJobStatuses_result();
+            getExperimentOutputs_result result = new getExperimentOutputs_result();
             if (e instanceof org.apache.airavata.model.error.InvalidRequestException) {
                         result.ire = (org.apache.airavata.model.error.InvalidRequestException) e;
                         result.setIreIsSet(true);
@@ -17894,25 +17933,25 @@ public class Airavata {
         return false;
       }
 
-      public void start(I iface, getJobStatuses_args args, org.apache.thrift.async.AsyncMethodCallback<Map<String,org.apache.airavata.model.status.JobStatus>> resultHandler) throws TException {
-        iface.getJobStatuses(args.authzToken, args.airavataExperimentId,resultHandler);
+      public void start(I iface, getExperimentOutputs_args args, org.apache.thrift.async.AsyncMethodCallback<List<org.apache.airavata.model.application.io.OutputDataObjectType>> resultHandler) throws TException {
+        iface.getExperimentOutputs(args.authzToken, args.airavataExperimentId,resultHandler);
       }
     }
 
-    public static class getJobDetails<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, getJobDetails_args, List<org.apache.airavata.model.job.JobModel>> {
-      public getJobDetails() {
-        super("getJobDetails");
+    public static class getIntermediateOutputs<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, getIntermediateOutputs_args, List<org.apache.airavata.model.application.io.OutputDataObjectType>> {
+      public getIntermediateOutputs() {
+        super("getIntermediateOutputs");
       }
 
-      public getJobDetails_args getEmptyArgsInstance() {
-        return new getJobDetails_args();
+      public getIntermediateOutputs_args getEmptyArgsInstance() {
+        return new getIntermediateOutputs_args();
       }
 
-      public AsyncMethodCallback<List<org.apache.airavata.model.job.JobModel>> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
+      public AsyncMethodCallback<List<org.apache.airavata.model.application.io.OutputDataObjectType>> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
         final org.apache.thrift.AsyncProcessFunction fcall = this;
-        return new AsyncMethodCallback<List<org.apache.airavata.model.job.JobModel>>() { 
-          public void onComplete(List<org.apache.airavata.model.job.JobModel> o) {
-            getJobDetails_result result = new getJobDetails_result();
+        return new AsyncMethodCallback<List<org.apache.airavata.model.application.io.OutputDataObjectType>>() { 
+          public void onComplete(List<org.apache.airavata.model.application.io.OutputDataObjectType> o) {
+            getIntermediateOutputs_result result = new getIntermediateOutputs_result();
             result.success = o;
             try {
               fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
@@ -17925,7 +17964,7 @@ public class Airavata {
           public void onError(Exception e) {
             byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
             org.apache.thrift.TBase msg;
-            getJobDetails_result result = new getJobDetails_result();
+            getIntermediateOutputs_result result = new getIntermediateOutputs_result();
             if (e instanceof org.apache.airavata.model.error.InvalidRequestException) {
                         result.ire = (org.apache.airavata.model.error.InvalidRequestException) e;
                         result.setIreIsSet(true);
@@ -17971,25 +18010,25 @@ public class Airavata {
         return false;
       }
 
-      public void start(I iface, getJobDetails_args args, org.apache.thrift.async.AsyncMethodCallback<List<org.apache.airavata.model.job.JobModel>> resultHandler) throws TException {
-        iface.getJobDetails(args.authzToken, args.airavataExperimentId,resultHandler);
+      public void start(I iface, getIntermediateOutputs_args args, org.apache.thrift.async.AsyncMethodCallback<List<org.apache.airavata.model.application.io.OutputDataObjectType>> resultHandler) throws TException {
+        iface.getIntermediateOutputs(args.authzToken, args.airavataExperimentId,resultHandler);
       }
     }
 
-    public static class cloneExperiment<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, cloneExperiment_args, String> {
-      public cloneExperiment() {
-        super("cloneExperiment");
+    public static class getJobStatuses<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, getJobStatuses_args, Map<String,org.apache.airavata.model.status.JobStatus>> {
+      public getJobStatuses() {
+        super("getJobStatuses");
       }
 
-      public cloneExperiment_args getEmptyArgsInstance() {
-        return new cloneExperiment_args();
+      public getJobStatuses_args getEmptyArgsInstance() {
+        return new getJobStatuses_args();
       }
 
-      public AsyncMethodCallback<String> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
+      public AsyncMethodCallback<Map<String,org.apache.airavata.model.status.JobStatus>> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
         final org.apache.thrift.AsyncProcessFunction fcall = this;
-        return new AsyncMethodCallback<String>() { 
-          public void onComplete(String o) {
-            cloneExperiment_result result = new cloneExperiment_result();
+        return new AsyncMethodCallback<Map<String,org.apache.airavata.model.status.JobStatus>>() { 
+          public void onComplete(Map<String,org.apache.airavata.model.status.JobStatus> o) {
+            getJobStatuses_result result = new getJobStatuses_result();
             result.success = o;
             try {
               fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
@@ -18002,7 +18041,7 @@ public class Airavata {
           public void onError(Exception e) {
             byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
             org.apache.thrift.TBase msg;
-            cloneExperiment_result result = new cloneExperiment_result();
+            getJobStatuses_result result = new getJobStatuses_result();
             if (e instanceof org.apache.airavata.model.error.InvalidRequestException) {
                         result.ire = (org.apache.airavata.model.error.InvalidRequestException) e;
                         result.setIreIsSet(true);
@@ -18048,25 +18087,26 @@ public class Airavata {
         return false;
       }
 
-      public void start(I iface, cloneExperiment_args args, org.apache.thrift.async.AsyncMethodCallback<String> resultHandler) throws TException {
-        iface.cloneExperiment(args.authzToken, args.existingExperimentID, args.newExperimentName,resultHandler);
+      public void start(I iface, getJobStatuses_args args, org.apache.thrift.async.AsyncMethodCallback<Map<String,org.apache.airavata.model.status.JobStatus>> resultHandler) throws TException {
+        iface.getJobStatuses(args.authzToken, args.airavataExperimentId,resultHandler);
       }
     }
 
-    public static class terminateExperiment<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, terminateExperiment_args, Void> {
-      public terminateExperiment() {
-        super("terminateExperiment");
+    public static class getJobDetails<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, getJobDetails_args, List<org.apache.airavata.model.job.JobModel>> {
+      public getJobDetails() {
+        super("getJobDetails");
       }
 
-      public terminateExperiment_args getEmptyArgsInstance() {
-        return new terminateExperiment_args();
+      public getJobDetails_args getEmptyArgsInstance() {
+        return new getJobDetails_args();
       }
 
-      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
+      public AsyncMethodCallback<List<org.apache.airavata.model.job.JobModel>> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
         final org.apache.thrift.AsyncProcessFunction fcall = this;
-        return new AsyncMethodCallback<Void>() { 
-          public void onComplete(Void o) {
-            terminateExperiment_result result = new terminateExperiment_result();
+        return new AsyncMethodCallback<List<org.apache.airavata.model.job.JobModel>>() { 
+          public void onComplete(List<org.apache.airavata.model.job.JobModel> o) {
+            getJobDetails_result result = new getJobDetails_result();
+            result.success = o;
             try {
               fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
               return;
@@ -18078,7 +18118,7 @@ public class Airavata {
           public void onError(Exception e) {
             byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
             org.apache.thrift.TBase msg;
-            terminateExperiment_result result = new terminateExperiment_result();
+            getJobDetails_result result = new getJobDetails_result();
             if (e instanceof org.apache.airavata.model.error.InvalidRequestException) {
                         result.ire = (org.apache.airavata.model.error.InvalidRequestException) e;
                         result.setIreIsSet(true);
@@ -18124,25 +18164,25 @@ public class Airavata {
         return false;
       }
 
-      public void start(I iface, terminateExperiment_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
-        iface.terminateExperiment(args.authzToken, args.airavataExperimentId, args.gatewayId,resultHandler);
+      public void start(I iface, getJobDetails_args args, org.apache.thrift.async.AsyncMethodCallback<List<org.apache.airavata.model.job.JobModel>> resultHandler) throws TException {
+        iface.getJobDetails(args.authzToken, args.airavataExperimentId,resultHandler);
       }
     }
 
-    public static class registerApplicationModule<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, registerApplicationModule_args, String> {
-      public registerApplicationModule() {
-        super("registerApplicationModule");
+    public static class cloneExperiment<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, cloneExperiment_args, String> {
+      public cloneExperiment() {
+        super("cloneExperiment");
       }
 
-      public registerApplicationModule_args getEmptyArgsInstance() {
-        return new registerApplicationModule_args();
+      public cloneExperiment_args getEmptyArgsInstance() {
+        return new cloneExperiment_args();
       }
 
       public AsyncMethodCallback<String> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
         final org.apache.thrift.AsyncProcessFunction fcall = this;
         return new AsyncMethodCallback<String>() { 
           public void onComplete(String o) {
-            registerApplicationModule_result result = new registerApplicationModule_result();
+            cloneExperiment_result result = new cloneExperiment_result();
             result.success = o;
             try {
               fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
@@ -18155,12 +18195,17 @@ public class Airavata {
           public void onError(Exception e) {
             byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
             org.apache.thrift.TBase msg;
-            registerApplicationModule_result result = new registerApplicationModule_result();
+            cloneExperiment_result result = new cloneExperiment_result();
             if (e instanceof org.apache.airavata.model.error.InvalidRequestException) {
                         result.ire = (org.apache.airavata.model.error.InvalidRequestException) e;
                         result.setIreIsSet(true);
                         msg = result;
             }
+            else             if (e instanceof org.apache.airavata.model.error.ExperimentNotFoundException) {
+                        result.enf = (org.apache.airavata.model.error.ExperimentNotFoundException) e;
+                        result.setEnfIsSet(true);
+                        msg = result;
+            }
             else             if (e instanceof org.apache.airavata.model.error.AiravataClientException) {
                         result.ace = (org.apache.airavata.model.error.AiravataClientException) e;
                         result.setAceIsSet(true);
@@ -18196,26 +18241,25 @@ public class Airavata {
         return false;
       }
 
-      public void start(I iface, registerApplicationModule_args args, org.apache.thrift.async.AsyncMethodCallback<String> resultHandler) throws TException {
-        iface.registerApplicationModule(args.authzToken, args.gatewayId, args.applicationModule,resultHandler);
+      public void start(I iface, cloneExperiment_args args, org.apache.thrift.async.AsyncMethodCallback<String> resultHandler) throws TException {
+        iface.cloneExperiment(args.authzToken, args.existingExperimentID, args.newExperimentName,resultHandler);
       }
     }
 
-    public static class getApplicationModule<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, getApplicationModule_args, org.apache.airavata.model.appcatalog.appdeployment.ApplicationModule> {
-      public getApplicationModule() {
-        super("getApplicationModule");
+    public static class terminateExperiment<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, terminateExperiment_args, Void> {
+      public terminateExperiment() {
+        super("terminateExperiment");
       }
 
-      public getApplicationModule_args getEmptyArgsInstance() {
-        return new getApplicationModule_args();
+      public terminateExperiment_args getEmptyArgsInstance() {
+        return new terminateExperiment_args();
       }
 
-      public AsyncMethodCallback<org.apache.airavata.model.appcatalog.appdeployment.ApplicationModule> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
+      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
         final org.apache.thrift.AsyncProcessFunction fcall = this;
-        return new AsyncMethodCallback<org.apache.airavata.model.appcatalog.appdeployment.ApplicationModule>() { 
-          public void onComplete(org.apache.airavata.model.appcatalog.appdeployment.ApplicationModule o) {
-            getApplicationModule_result result = new getApplicationModule_result();
-            result.success = o;
+        return new AsyncMethodCallback<Void>() { 
+          public void onComplete(Void o) {
+            terminateExperiment_result result = new terminateExperiment_result();
             try {
               fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
               return;
@@ -18227,12 +18271,17 @@ public class Airavata {
           public void onError(Exception e) {
             byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
             org.apache.thrift.TBase msg;
-            getApplicationModule_result result = new getApplicationModule_result();
+            terminateExperiment_result result = new terminateExperiment_result();
             if (e instanceof org.apache.airavata.model.error.InvalidRequestException) {
                         result.ire = (org.apache.airavata.model.error.InvalidRequestException) e;
                         result.setIreIsSet(true);
                         msg = result;
             }
+            else             if (e instanceof org.apache.airavata.model.error.ExperimentNotFoundException) {
+                        result.enf = (org.apache.airavata.model.error.ExperimentNotFoundException) e;
+                        result.setEnfIsSet(true);
+                        msg = result;
+            }
             else             if (e instanceof org.apache.airavata.model.error.AiravataClientException) {
                         result.ace = (org.apache.airavata.model.error.AiravataClientException) e;
                         result.setAceIsSet(true);
@@ -18268,27 +18317,26 @@ public class Airavata {
         return false;
       }
 
-      public void start(I iface, getApplicationModule_args args, org.apache.thrift.async.AsyncMethodCallback<org.apache.airavata.model.appcatalog.appdeployment.ApplicationModule> resultHandler) throws TException {
-        iface.getApplicationModule(args.authzToken, args.appModuleId,resultHandler);
+      public void start(I iface, terminateExperiment_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
+        iface.terminateExperiment(args.authzToken, args.airavataExperimentId, args.gatewayId,resultHandler);
       }
     }
 
-    public static class updateApplicationModule<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, updateApplicationModule_args, Boolean> {
-      public updateApplicationModule() {
-        super("updateApplicationModule");
+    public static class registerApplicationModule<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, registerApplicationModule_args, String> {
+      public registerApplicationModule() {
+        super("registerApplicationModule");
       }
 
-      public updateApplicationModule_args getEmptyArgsInstance() {
-        return new updateApplicationModule_args();
+      public registerApplicationModule_args getEmptyArgsInstance() {
+        return new registerApplicationModule_args();
       }
 
-      public AsyncMethodCallback<Boolean> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
+      public AsyncMethodCallback<String> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
         final org.apache.thrift.AsyncProcessFunction fcall = this;
-        return new AsyncMethodCallback<Boolean>() { 
-          public void onComplete(Boolean o) {
-            updateApplicationModule_result result = new updateApplicationModule_result();
+        return new AsyncMethodCallback<String>() { 
+          public void onComplete(String o) {
+            registerApplicationModule_result result = new registerApplicationModule_result();
             result.success = o;
-            result.setSuccessIsSet(true);
             try {
               fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
               return;
@@ -18300,7 +18348,7 @@ public class Airavata {
           public void onError(Exception e) {
             byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
             org.apache.thrift.TBase msg;
-            updateApplicationModule_result result = new updateApplicationModule_result();
+            registerApplicationModule_result result = new registerApplicationModule_result();
             if (e instanceof org.apache.airavata.model.error.InvalidRequestException) {
                         result.ire = (org.apache.airavata.model.error.InvalidRequestException) e;
                         result.setIreIsSet(true);
@@ -18341,25 +18389,25 @@ public class Airavata {
         return false;
       }
 
-      public void start(I iface, updateApplicationModule_args args, org.apache.thrift.async.AsyncMethodCallback<Boolean> resultHandler) throws TException {
-        iface.updateApplicationModule(args.authzToken, args.appModuleId, args.applicationModule,resultHandler);
+      public void start(I iface, registerApplicationModule_args args, org.apache.thrift.async.AsyncMethodCallback<String> resultHandler) throws TException {
+        iface.registerApplicationModule(args.authzToken, args.gatewayId, args.applicationModule,resultHandler);
       }
     }
 
-    public static class getAllAppModules<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, getAllAppModules_args, List<org.apache.airavata.model.appcatalog.appdeployment.ApplicationModule>> {
-      public getAllAppModules() {
-        super("getAllAppModules");
+    public static class getApplicationModule<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, getApplicationModule_args, org.apache.airavata.model.appcatalog.appdeployment.ApplicationModule> {
+      public getApplicationModule() {
+        super("getApplicationModule");
       }
 
-      public getAllAppModules_args getEmptyArgsInstance() {
-        return new getAllAppModules_args();
+      public getApplicationModule_args getEmptyArgsInstance() {
+        return new getApplicationModule_args();
       }
 
-      public AsyncMethodCallback<List<org.apache.airavata.model.appcatalog.appdeployment.ApplicationModule>> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
+      public AsyncMethodCallback<org.apache.airavata.model.appcatalog.appdeployment.ApplicationModule> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
         final org.apache.thrift.AsyncProcessFunction fcall = this;
-        return new AsyncMethodCallback<List<org.apache.airavata.model.appcatalog.appdeployment.ApplicationModule>>() { 
-          public void onComplete(List<org.apache.airavata.model.appcatalog.appdeployment.ApplicationModule> o) {
-            getAllAppModules_result result = new getAllAppModules_result();
+        return new AsyncMethodCallback<org.apache.airavata.model.appcatalog.appdeployment.ApplicationModule>() { 
+          public void onComplete(org.apache.airavata.model.appcatalog.appdeployment.ApplicationModule o) {
+            getApplicationModule_result result = new getApplicationModule_result();
             result.success = o;
             try {
               fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
@@ -18372,7 +18420,7 @@ public class Airavata {
           public void onError(Exception e) {
             byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
             org.apache.thrift.TBase msg;
-            getAllAppModules_result result = new getAllAppModules_result();
+            getApplicationModule_result result = new getApplicationModule_result();
             if (e instanceof org.apache.airavata.model.error.InvalidRequestException) {
                         result.ire = (org.apache.airavata.model.error.InvalidRequestException) e;
                         result.setIreIsSet(true);
@@ -18413,25 +18461,25 @@ public class Airavata {
         return false;
       }
 
-      public void start(I iface, getAllAppModules_args args, org.apache.thrift.async.AsyncMethodCallback<List<org.apache.airavata.model.appcatalog.appdeployment.ApplicationModule>> resultHandler) throws TException {
-        iface.getAllAppModules(args.authzToken, args.gatewayId,resultHandler);
+      public void start(I iface, getApplicationModule_args args, org.apache.thrift.async.AsyncMethodCallback<org.apache.airavata.model.appcatalog.appdeployment.ApplicationModule> resultHandler) throws TException {
+        iface.getApplicationModule(args.authzToken, args.appModuleId,resultHandler);
       }
     }
 
-    public static class deleteApplicationModule<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, deleteApplicationModule_args, Boolean> {
-      public deleteApplicationModule() {
-        super("deleteApplicationModule");
+    public static class updateApplicationModule<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, updateApplicationModule_args, Boolean> {
+      public updateApplicationModule() {
+        super("updateApplicationModule");
       }
 
-      public deleteApplicationModule_args getEmptyArgsInstance() {
-        return new deleteApplicationModule_args();
+      public updateApplicationModule_args getEmptyArgsInstance() {
+        return new updateApplicationModule_args();
       }
 
       public AsyncMethodCallback<Boolean> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
         final org.apache.thrift.AsyncProcessFunction fcall = this;
         return new AsyncMethodCallback<Boolean>() { 
           public void onComplete(Boolean o) {
-            deleteApplicationModule_result result = new deleteApplicationModule_result();
+            updateApplicationModule_result result = new updateApplicationModule_result();
             result.success = o;
             result.setSuccessIsSet(true);
             try {
@@ -18445,79 +18493,7 @@ public class Airavata {
           public void onError(Exception e) {
             byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
             org.apache.thrift.TBase msg;
-            deleteApplicationModule_result result = new deleteApplicationModule_result();
-            if (e instanceof org.apache.airavata.model.error.InvalidRequestException) {
-                        result.ire = (org.apache.airavata.model.error.InvalidRequestException) e;
-                        result.setIreIsSet(true);
-                        msg = result;
-            }
-            else             if (e instanceof org.apache.airavata.model.error.AiravataClientException) {
-                        result.ace = (org.apache.airavata.model.error.AiravataClientException) e;
-                        result.setAceIsSet(true);
-                        msg = result;
-            }
-            else             if (e instanceof org.apache.airavata.model.error.AiravataSystemException) {
-                        result.ase = (org.apache.airavata.model.error.AiravataSystemException) e;
-                        result.setAseIsSet(true);
-                        msg = result;
-            }
-            else             if (e instanceof org.apache.airavata.model.error.AuthorizationException) {
-                        result.ae = (org.apache.airavata.model.error.AuthorizationException) e;
-                        result.setAeIsSet(true);
-                        msg = result;
-            }
-             else 
-            {
-              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
-              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
-            }
-            try {
-              fcall.sendResponse(fb,msg,msgType,seqid);
-              return;
-            } catch (Exception ex) {
-              LOGGER.error("Exception writing to internal frame buffer", ex);
-            }
-            fb.close();
-          }
-        };
-      }
-
-      protected boolean isOneway() {
-        return false;
-      }
-
-      public void start(I iface, deleteApplicationModule_args args, org.apache.thrift.async.AsyncMethodCallback<Boolean> resultHandler) throws TException {
-        iface.deleteApplicationModule(args.authzToken, args.appModuleId,resultHandler);
-      }
-    }
-
-    public static class registerApplicationDeployment<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, registerApplicationDeployment_args, String> {
-      public registerApplicationDeployment() {
-        super("registerApplicationDeployment");
-      }
-
-      public registerApplicationDeployment_args getEmptyArgsInstance() {
-        return new registerApplicationDeployment_args();
-      }
-
-      public AsyncMethodCallback<String> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
-        final org.apache.thrift.AsyncProcessFunction fcall = this;
-        return new AsyncMethodCallback<String>() { 
-          public void onComplete(String o) {
-            registerApplicationDeployment_result result = new registerApplicationDeployment_result();
-            result.success = o;
-            try {
-              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
-              return;
-            } catch (Exception e) {
-              LOGGER.error("Exception writing to internal frame buffer", e);
-            }
-            fb.close();
-          }
-          public void onError(Exception e) {
-            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
-            org.apache.thrift.TBase msg;
-            registerApplicationDeployment_result result = new registerApplicationDeployment_result();
+            updateApplicationModule_result result = new updateApplicationModule_result();
             if (e instanceof org.apache.airavata.model.error.InvalidRequestException) {
                         result.ire = (org.apache.airavata.model.error.InvalidRequestException) e;
                         result.setIreIsSet(true);
@@ -18558,25 +18534,25 @@ public class Airavata {
         return false;
       }
 
-      public void start(I iface, registerApplicationDeployment_args args, org.apache.thrift.async.AsyncMethodCallback<String> resultHandler) throws TException {
-        iface.registerApplicationDeployment(args.authzToken, args.gatewayId, args.applicationDeployment,resultHandler);
+      public void start(I iface, updateApplicationModule_args args, org.apache.thrift.async.AsyncMethodCallback<Boolean> resultHandler) throws TException {
+        iface.updateApplicationModule(args.authzToken, args.appModuleId, args.applicationModule,resultHandler);
       }
     }
 
-    public static class getApplicationDeployment<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, getApplicationDeployment_args, org.apache.airavata.model.appcatalog.appdeployment.ApplicationDeploymentDescription> {
-      public getApplicationDeployment() {
-        super("getApplicationDeployment");
+    public static class getAllAppModules<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, getAllAppModules_args, List<org.apache.airavata.model.appcatalog.appdeployment.ApplicationModule>> {
+      public getAllAppModules() {
+        super("getAllAppModules");
       }
 
-      public getApplicationDeployment_args getEmptyArgsInstance() {
-        return new getApplicationDeployment_args();
+      public getAllAppModules_args getEmptyArgsInstance() {
+        return new getAllAppModules_args();
       }
 
-      public AsyncMethodCallback<org.apache.airavata.model.appcatalog.appdeployment.ApplicationDeploymentDescription> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
+      public AsyncMethodCallback<List<org.apache.airavata.model.appcatalog.appdeployment.ApplicationModule>> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
         final org.apache.thrift.AsyncProcessFunction fcall = this;
-        return new AsyncMethodCallback<org.apache.airavata.model.appcatalog.appdeployment.ApplicationDeploymentDescription>() { 
-          public void onComplete(org.apache.airavata.model.appcatalog.appdeployment.ApplicationDeploymentDescription o) {
-            getApplicationDeployment_result result = new getApplicationDeployment_result();
+        return new AsyncMethodCallback<List<org.apache.airavata.model.appcatalog.appdeployment.ApplicationModule>>() { 
+          public void onComplete(List<org.apache.airavata.model.appcatalog.appdeployment.ApplicationModule> o) {
+            getAllAppModules_result result = new getAllAppModules_result();
             result.success = o;
             try {
               fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
@@ -18589,7 +18565,7 @@ public class Airavata {
           public void onError(Exception e) {
             byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
             org.apache.thrift.TBase msg;
-            getApplicationDeployment_result result = new getApplicationDeployment_result();
+            getAllAppModules_result result = new getAllAppModules_result();
             if (e instanceof org.apache.airavata.model.error.InvalidRequestException) {
                         result.ire = (org.apache.airavata.model.error.InvalidRequestException) e;
                         result.setIreIsSet(true);
@@ -18630,25 +18606,25 @@ public class Airavata {
         return false;
       }
 
-      public void start(I iface, getApplicationDeployment_args args, org.apache.thrift.async.AsyncMethodCallback<org.apache.airavata.model.appcatalog.appdeployment.ApplicationDeploymentDescription> resultHandler) throws TException {
-        iface.getApplicationDeployment(args.authzToken, args.appDeploymentId,resultHandler);
+      public void start(I iface, getAllAppModules_args args, org.apache.thrift.async.AsyncMethodCallback<List<org.apache.airavata.model.appcatalog.appdeployment.ApplicationModule>> resultHandler) throws TException {
+        iface.getAllAppModules(args.authzToken, args.gatewayId,resultHandler);
       }
     }
 
-    public static class updateApplicationDeployment<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, updateApplicationDeployment_args, Boolean> {
-      public updateApplicationDeployment() {
-        super("updateApplicationDeployment");
+    public static class deleteApplicationModule<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, deleteApplicationModule_args, Boolean> {
+      public deleteApplicationModule() {
+        super("deleteApplicationModule");
       }
 
-      public updateApplicationDeployment_args getEmptyArgsInstance() {
-        return new updateApplicationDeployment_args();
+      public deleteApplicationModule_args getEmptyArgsInstance() {
+        return new deleteApplicationModule_args();
       }
 
       public AsyncMethodCallback<Boolean> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
         final org.apache.thrift.AsyncProcessFunction fcall = this;
         return new AsyncMethodCallback<Boolean>() { 
           public void onComplete(Boolean o) {
-            updateApplicationDeployment_result result = new updateApplicationDeployment_result();
+            deleteApplicationModule_result result = new deleteApplicationModule_result();
             result.success = o;
             result.setSuccessIsSet(true);
             try {
@@ -18662,7 +18638,7 @@ public class Airavata {
           public void onError(Exception e) {
             byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
             org.apache.thrift.TBase msg;
-            updateApplicationDeployment_result result = new updateApplicationDeployment_result();
+            deleteApplicationModule_result result = new deleteApplicationModule_result();
             if (e instanceof org.apache.airavata.model.error.InvalidRequestException) {
                         result.ire = (org.apache.airavata.model.error.InvalidRequestException) e;
                         result.setIreIsSet(true);
@@ -18703,27 +18679,26 @@ public class Airavata {
         return false;
       }
 
-      public void start(I iface, updateApplicationDeployment_args args, org.apache.thrift.async.AsyncMethodCallback<Boolean> resultHandler) throws TException {
-        iface.updateApplicationDeployment(args.authzToken, args.appDeploymentId, args.applicationDeployment,resultHandler);
+      public void start(I iface, deleteApplicationModule_args args, org.apache.thrift.async.AsyncMethodCallback<Boolean> resultHandler) throws TException {
+        iface.deleteApplicationModule(args.authzToken, args.appModuleId,resultHandler);
       }
     }
 
-    public static class deleteApplicationDeployment<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, deleteApplicationDeployment_args, Boolean> {
-      public deleteApplicationDeployment() {
-        super("deleteApplicationDeployment");
+    public static class registerApplicationDeployment<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, registerApplicationDeployment_args, String> {
+      public registerApplicationDeployment() {
+        super("registerApplicationDeployment");
       }
 
-      public deleteApplicationDeployment_args getEmptyArgsInstance() {
-        return new deleteApplicationDeployment_args();
+      public registerApplicationDeployment_args getEmptyArgsInstance() {
+        return new registerApplicationDeployment_args();
       }
 
-      public AsyncMethodCallback<Boolean> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
+      public AsyncMethodCallback<String> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
         final org.apache.thrift.AsyncProcessFunction fcall = this;
-        return new AsyncMethodCallback<Boolean>() { 
-          public void onComplete(Boolean o) {
-            deleteApplicationDeployment_result result = new deleteApplicationDeployment_result();
+        return new AsyncMethodCallback<String>() { 
+          public void onComplete(String o) {
+            registerApplicationDeployment_result result = new registerApplicationDeployment_result();
             result.success = o;
-            result.setSuccessIsSet(true);
             try {
               fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
               return;
@@ -18735,7 +18710,7 @@ public class Airavata {
           public void onError(Exception e) {
             byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
             org.apache.thrift.TBase msg;
-            deleteApplicationDeployment_result result = new deleteApplicationDeployment_result();
+            registerApplicationDeployment_result result = new registerApplicationDeployment_result();
             if (e instanceof org.apache.airavata.model.error.InvalidRequestException) {
                         result.ire = (org.apache.airavata.model.error.InvalidRequestException) e;
                         result.setIreIsSet(true);
@@ -18776,97 +18751,25 @@ public class Airavata {
         return false;
       }
 
-      public void start(I iface, deleteApplicationDeployment_args args, org.apache.thrift.async.AsyncMethodCallback<Boolean> resultHandler) throws TException {
-        iface.deleteApplicationDeployment(args.authzToken, args.appDeploymentId,resultHandler);
-      }
-    }
-
-    public static class getAllApplicationDeployments<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, getAllApplicationDeployments_args, List<org.apache.airavata.model.appcatalog.appdeployment.ApplicationDeploymentDescription>> {
-      public getAllApplicationDeployments() {
-        super("getAllApplicationDeployments");
-      }
-
-      public getAllApplicationDeployments_args getEmptyArgsInstance() {
-        return new getAllApplicationDeployments_args();
-      }
-
-      public AsyncMethodCallback<List<org.apache.airavata.model.appcatalog.appdeployment.ApplicationDeploymentDescription>> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
-        final org.apache.thrift.AsyncProcessFunction fcall = this;
-        return new AsyncMethodCallback<List<org.apache.airavata.model.appcatalog.appdeployment.ApplicationDeploymentDescription>>() { 
-          public void onComplete(List<org.apache.airavata.model.appcatalog.appdeployment.ApplicationDeploymentDescription> o) {
-            getAllApplicationDeployments_result result = new getAllApplicationDeployments_result();
-            result.success = o;
-            try {
-              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
-              return;
-            } catch (Exception e) {
-              LOGGER.error("Exception writing to internal frame buffer", e);
-            }
-            fb.close();
-          }
-          public void onError(Exception e) {
-            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
-            org.apache.thrift.TBase msg;
-            getAllApplicationDeployments_result result = new getAllApplicationDeployments_result();
-            if (e instanceof org.apache.airavata.model.error.InvalidRequestException) {
-                        result.ire = (org.apache.airavata.model.error.InvalidRequestException) e;
-                        result.setIreIsSet(true);
-                        msg = result;
-            }
-            else             if (e instanceof org.apache.airavata.model.error.AiravataClientException) {
-                        result.ace = (org.apache.airavata.model.error.AiravataClientException) e;
-                        result.setAceIsSet(true);
-                        msg = result;
-            }
-            else             if (e instanceof org.apache.airavata.model.error.AiravataSystemException) {
-                        result.ase = (org.apache.airavata.model.error.AiravataSystemException) e;
-                        result.setAseIsSet(true);
-                        msg = result;
-            }
-            else             if (e instanceof org.apache.airavata.model.error.AuthorizationException) {
-                        result.ae = (org.apache.airavata.model.error.AuthorizationException) e;
-                        result.setAeIsSet(true);
-                        msg = result;
-            }
-             else 
-            {
-              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
-              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
-            }
-            try {
-              fcall.sendResponse(fb,msg,msgType,seqid);
-              return;
-            } catch (Exception ex) {
-              LOGGER.error("Exception writing to internal frame buffer", ex);
-            }
-            fb.close();
-          }
-        };
-      }
-
-      protected boolean isOneway() {
-        return false;
-      }
-
-      public void start(I iface, getAllApplicationDeployments_args args, org.apache.thrift.async.AsyncMethodCallback<List<org.apache.airavata.model.appcatalog.appdeployment.ApplicationDeploymentDescription>> resultHandler) throws TException {
-        iface.getAllApplicationDeployments(args.authzToken, args.gatewayId,resultHandler);
+      public void start(I iface, registerApplicationDeployment_args args, org.apache.thrift.async.AsyncMethodCallback<String> resultHandler) throws TException {
+        iface.registerApplicationDeployment(args.authzToken, args.gatewayId, args.applicationDeployment,resultHandler);
       }
     }
 
-    public static class getAppModuleDeployedResources<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, getAppModuleDeployedResources_args, List<String>> {
-      public getAppModuleDeployedResources() {
-        super("getAppModuleDeployedResources");
+    public static class getApplicationDeployment<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, getApplicationDeployment_args, org.apache.airavata.model.appcatalog.appdeployment.ApplicationDeploymentDescription> {
+      public getApplicationDeployment() {
+        super("getApplicationDeployment");
       }
 
-      public getAppModuleDeployedResources_args getEmptyArgsInstance() {
-        return new getAppModuleDeployedResources_args();
+      public getApplicationDeployment_args getEmptyArgsInstance() {
+        return new getApplicationDeployment_args();
       }
 
-      public AsyncMethodCallback<List<String>> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
+      public AsyncMethodCallback<org.apache.airavata.model.appcatalog.appdeployment.ApplicationDeploymentDescription> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
         final org.apache.thrift.AsyncProcessFunction fcall = this;
-        return new AsyncMethodCallback<List<String>>() { 
-          public void onComplete(List<String> o) {
-            getAppModuleDeployedResources_result result = new getAppModuleDeployedResources_result();
+        return new AsyncMethodCallback<org.apache.airavata.model.appcatalog.appdeployment.ApplicationDeploymentDescription>() { 
+          public void onComplete(org.apache.airavata.model.appcatalog.appdeployment.ApplicationDeploymentDescription o) {
+            getApplicationDeployment_result result = new getApplicationDeployment_result();
             result.success = o;
             try {
               fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
@@ -18879,7 +18782,7 @@ public class Airavata {
           public void onError(Exception e) {
             byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
             org.apache.thrift.TBase msg;
-            getAppModuleDeployedResources_result result = new getAppModuleDeployedResources_result();
+            getApplicationDeployment_result result = new getApplicationDeployment_result();
             if (e instanceof org.apache.airavata.model.error.InvalidRequestException) {
                         result.ire = (org.apache.airavata.model.error.InvalidRequestException) e;
                         result.setIreIsSet(true);
@@ -18920,26 +18823,27 @@ public class Airavata {
         return false;
       }
 
-      public void start(I iface, getAppModuleDeployedResources_args args, org.apache.thrift.async.AsyncMethodCallback<List<String>> resultHandler) throws TException {
-        iface.getAppModuleDeployedResources(args.authzToken, args.appModuleId,resultHandler);
+      public void start(I iface, getApplicationDeployment_args args, org.apache.thrift.async.AsyncMethodCallback<org.apache.airavata.model.appcatalog.appdeployment.ApplicationDeploymentDescription> resultHandler) throws TException {
+        iface.getApplicationDeployment(args.authzToken, args.appDeploymentId,resultHandler);
       }
     }
 
-    public static class registerApplicationInterface<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, registerApplicationInterface_args, String> {
-      public registerApplicationInterface() {
-        super("registerApplicationInterface");
+    public static class updateApplicationDeployment<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, updateApplicationDeployment_args, Boolean> {
+      public updateApplicationDeployment() 

<TRUNCATED>