You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airavata.apache.org by sm...@apache.org on 2015/03/03 19:23:10 UTC

[1/2] airavata git commit: Fixing the stub build error - AIRAVATA-1616

Repository: airavata
Updated Branches:
  refs/heads/master 33b403fc7 -> 050ea840f


http://git-wip-us.apache.org/repos/asf/airavata/blob/050ea840/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 6419290..5cfbbc1 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
@@ -71,6 +71,31 @@ import org.slf4j.LoggerFactory;
     public boolean isGatewayExist(String gatewayId) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException;
 
     /**
+     * Generate and Register SSH Key Pair with Airavata Credential Store.
+     * 
+     * @param gatewayId
+     *    The identifier for the requested experiment. This is returned during the create experiment step.
+     * 
+     * @param userName
+     *    The User for which the credential should be registered. For community accounts, this user is the name of the
+     *    community user name. For computational resources, this user name need not be the same user name on resoruces.
+     * 
+     * @return airavataCredStoreToken
+     *   An SSH Key pair is generated and stored in the credential store and associated with users or community account
+     *   belonging to a gateway.
+     * 
+     * 
+     * 
+     * @param gatewayId
+     * @param userName
+     */
+    public String generateAndRegisterSSHKeys(String gatewayId, String userName) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException;
+
+    public String getSSHPubKey(String airavataCredStoreToken) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException;
+
+    public Map<String,String> getAllUserSSHPubKeys(String userName) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException;
+
+    /**
      * Create a Project
      * 
      * 
@@ -1456,6 +1481,12 @@ import org.slf4j.LoggerFactory;
 
     public void isGatewayExist(String gatewayId, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
+    public void generateAndRegisterSSHKeys(String gatewayId, String userName, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+
+    public void getSSHPubKey(String airavataCredStoreToken, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+
+    public void getAllUserSSHPubKeys(String userName, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+
     public void createProject(org.apache.airavata.model.workspace.Project project, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
     public void updateProject(String projectId, org.apache.airavata.model.workspace.Project updatedProject, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
@@ -1908,6 +1939,103 @@ import org.slf4j.LoggerFactory;
       throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "isGatewayExist failed: unknown result");
     }
 
+    public String generateAndRegisterSSHKeys(String gatewayId, String userName) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
+    {
+      send_generateAndRegisterSSHKeys(gatewayId, userName);
+      return recv_generateAndRegisterSSHKeys();
+    }
+
+    public void send_generateAndRegisterSSHKeys(String gatewayId, String userName) throws org.apache.thrift.TException
+    {
+      generateAndRegisterSSHKeys_args args = new generateAndRegisterSSHKeys_args();
+      args.setGatewayId(gatewayId);
+      args.setUserName(userName);
+      sendBase("generateAndRegisterSSHKeys", args);
+    }
+
+    public String recv_generateAndRegisterSSHKeys() throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
+    {
+      generateAndRegisterSSHKeys_result result = new generateAndRegisterSSHKeys_result();
+      receiveBase(result, "generateAndRegisterSSHKeys");
+      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, "generateAndRegisterSSHKeys failed: unknown result");
+    }
+
+    public String getSSHPubKey(String airavataCredStoreToken) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
+    {
+      send_getSSHPubKey(airavataCredStoreToken);
+      return recv_getSSHPubKey();
+    }
+
+    public void send_getSSHPubKey(String airavataCredStoreToken) throws org.apache.thrift.TException
+    {
+      getSSHPubKey_args args = new getSSHPubKey_args();
+      args.setAiravataCredStoreToken(airavataCredStoreToken);
+      sendBase("getSSHPubKey", args);
+    }
+
+    public String recv_getSSHPubKey() throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
+    {
+      getSSHPubKey_result result = new getSSHPubKey_result();
+      receiveBase(result, "getSSHPubKey");
+      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, "getSSHPubKey failed: unknown result");
+    }
+
+    public Map<String,String> getAllUserSSHPubKeys(String userName) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
+    {
+      send_getAllUserSSHPubKeys(userName);
+      return recv_getAllUserSSHPubKeys();
+    }
+
+    public void send_getAllUserSSHPubKeys(String userName) throws org.apache.thrift.TException
+    {
+      getAllUserSSHPubKeys_args args = new getAllUserSSHPubKeys_args();
+      args.setUserName(userName);
+      sendBase("getAllUserSSHPubKeys", args);
+    }
+
+    public Map<String,String> recv_getAllUserSSHPubKeys() throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
+    {
+      getAllUserSSHPubKeys_result result = new getAllUserSSHPubKeys_result();
+      receiveBase(result, "getAllUserSSHPubKeys");
+      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, "getAllUserSSHPubKeys failed: unknown result");
+    }
+
     public String createProject(org.apache.airavata.model.workspace.Project project) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
     {
       send_createProject(project);
@@ -5562,6 +5690,105 @@ import org.slf4j.LoggerFactory;
       }
     }
 
+    public void generateAndRegisterSSHKeys(String gatewayId, String userName, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+      checkReady();
+      generateAndRegisterSSHKeys_call method_call = new generateAndRegisterSSHKeys_call(gatewayId, userName, resultHandler, this, ___protocolFactory, ___transport);
+      this.___currentMethod = method_call;
+      ___manager.call(method_call);
+    }
+
+    public static class generateAndRegisterSSHKeys_call extends org.apache.thrift.async.TAsyncMethodCall {
+      private String gatewayId;
+      private String userName;
+      public generateAndRegisterSSHKeys_call(String gatewayId, String userName, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+        super(client, protocolFactory, transport, resultHandler, false);
+        this.gatewayId = gatewayId;
+        this.userName = userName;
+      }
+
+      public void write_args(org.apache.thrift.protocol.TProtocol prot) throws org.apache.thrift.TException {
+        prot.writeMessageBegin(new org.apache.thrift.protocol.TMessage("generateAndRegisterSSHKeys", org.apache.thrift.protocol.TMessageType.CALL, 0));
+        generateAndRegisterSSHKeys_args args = new generateAndRegisterSSHKeys_args();
+        args.setGatewayId(gatewayId);
+        args.setUserName(userName);
+        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_generateAndRegisterSSHKeys();
+      }
+    }
+
+    public void getSSHPubKey(String airavataCredStoreToken, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+      checkReady();
+      getSSHPubKey_call method_call = new getSSHPubKey_call(airavataCredStoreToken, resultHandler, this, ___protocolFactory, ___transport);
+      this.___currentMethod = method_call;
+      ___manager.call(method_call);
+    }
+
+    public static class getSSHPubKey_call extends org.apache.thrift.async.TAsyncMethodCall {
+      private String airavataCredStoreToken;
+      public getSSHPubKey_call(String airavataCredStoreToken, 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.airavataCredStoreToken = airavataCredStoreToken;
+      }
+
+      public void write_args(org.apache.thrift.protocol.TProtocol prot) throws org.apache.thrift.TException {
+        prot.writeMessageBegin(new org.apache.thrift.protocol.TMessage("getSSHPubKey", org.apache.thrift.protocol.TMessageType.CALL, 0));
+        getSSHPubKey_args args = new getSSHPubKey_args();
+        args.setAiravataCredStoreToken(airavataCredStoreToken);
+        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_getSSHPubKey();
+      }
+    }
+
+    public void getAllUserSSHPubKeys(String userName, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+      checkReady();
+      getAllUserSSHPubKeys_call method_call = new getAllUserSSHPubKeys_call(userName, resultHandler, this, ___protocolFactory, ___transport);
+      this.___currentMethod = method_call;
+      ___manager.call(method_call);
+    }
+
+    public static class getAllUserSSHPubKeys_call extends org.apache.thrift.async.TAsyncMethodCall {
+      private String userName;
+      public getAllUserSSHPubKeys_call(String userName, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+        super(client, protocolFactory, transport, resultHandler, false);
+        this.userName = userName;
+      }
+
+      public void write_args(org.apache.thrift.protocol.TProtocol prot) throws org.apache.thrift.TException {
+        prot.writeMessageBegin(new org.apache.thrift.protocol.TMessage("getAllUserSSHPubKeys", org.apache.thrift.protocol.TMessageType.CALL, 0));
+        getAllUserSSHPubKeys_args args = new getAllUserSSHPubKeys_args();
+        args.setUserName(userName);
+        args.write(prot);
+        prot.writeMessageEnd();
+      }
+
+      public Map<String,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_getAllUserSSHPubKeys();
+      }
+    }
+
     public void createProject(org.apache.airavata.model.workspace.Project project, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
       checkReady();
       createProject_call method_call = new createProject_call(project, resultHandler, this, ___protocolFactory, ___transport);
@@ -9089,6 +9316,9 @@ import org.slf4j.LoggerFactory;
       processMap.put("deleteGateway", new deleteGateway());
       processMap.put("getAllGateways", new getAllGateways());
       processMap.put("isGatewayExist", new isGatewayExist());
+      processMap.put("generateAndRegisterSSHKeys", new generateAndRegisterSSHKeys());
+      processMap.put("getSSHPubKey", new getSSHPubKey());
+      processMap.put("getAllUserSSHPubKeys", new getAllUserSSHPubKeys());
       processMap.put("createProject", new createProject());
       processMap.put("updateProject", new updateProject());
       processMap.put("getProject", new getProject());
@@ -9395,6 +9625,90 @@ import org.slf4j.LoggerFactory;
       }
     }
 
+    public static class generateAndRegisterSSHKeys<I extends Iface> extends org.apache.thrift.ProcessFunction<I, generateAndRegisterSSHKeys_args> {
+      public generateAndRegisterSSHKeys() {
+        super("generateAndRegisterSSHKeys");
+      }
+
+      public generateAndRegisterSSHKeys_args getEmptyArgsInstance() {
+        return new generateAndRegisterSSHKeys_args();
+      }
+
+      protected boolean isOneway() {
+        return false;
+      }
+
+      public generateAndRegisterSSHKeys_result getResult(I iface, generateAndRegisterSSHKeys_args args) throws org.apache.thrift.TException {
+        generateAndRegisterSSHKeys_result result = new generateAndRegisterSSHKeys_result();
+        try {
+          result.success = iface.generateAndRegisterSSHKeys(args.gatewayId, args.userName);
+        } 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;
+        }
+        return result;
+      }
+    }
+
+    public static class getSSHPubKey<I extends Iface> extends org.apache.thrift.ProcessFunction<I, getSSHPubKey_args> {
+      public getSSHPubKey() {
+        super("getSSHPubKey");
+      }
+
+      public getSSHPubKey_args getEmptyArgsInstance() {
+        return new getSSHPubKey_args();
+      }
+
+      protected boolean isOneway() {
+        return false;
+      }
+
+      public getSSHPubKey_result getResult(I iface, getSSHPubKey_args args) throws org.apache.thrift.TException {
+        getSSHPubKey_result result = new getSSHPubKey_result();
+        try {
+          result.success = iface.getSSHPubKey(args.airavataCredStoreToken);
+        } 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;
+        }
+        return result;
+      }
+    }
+
+    public static class getAllUserSSHPubKeys<I extends Iface> extends org.apache.thrift.ProcessFunction<I, getAllUserSSHPubKeys_args> {
+      public getAllUserSSHPubKeys() {
+        super("getAllUserSSHPubKeys");
+      }
+
+      public getAllUserSSHPubKeys_args getEmptyArgsInstance() {
+        return new getAllUserSSHPubKeys_args();
+      }
+
+      protected boolean isOneway() {
+        return false;
+      }
+
+      public getAllUserSSHPubKeys_result getResult(I iface, getAllUserSSHPubKeys_args args) throws org.apache.thrift.TException {
+        getAllUserSSHPubKeys_result result = new getAllUserSSHPubKeys_result();
+        try {
+          result.success = iface.getAllUserSSHPubKeys(args.userName);
+        } 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;
+        }
+        return result;
+      }
+    }
+
     public static class createProject<I extends Iface> extends org.apache.thrift.ProcessFunction<I, createProject_args> {
       public createProject() {
         super("createProject");
@@ -12403,6 +12717,9 @@ import org.slf4j.LoggerFactory;
       processMap.put("deleteGateway", new deleteGateway());
       processMap.put("getAllGateways", new getAllGateways());
       processMap.put("isGatewayExist", new isGatewayExist());
+      processMap.put("generateAndRegisterSSHKeys", new generateAndRegisterSSHKeys());
+      processMap.put("getSSHPubKey", new getSSHPubKey());
+      processMap.put("getAllUserSSHPubKeys", new getAllUserSSHPubKeys());
       processMap.put("createProject", new createProject());
       processMap.put("updateProject", new updateProject());
       processMap.put("getProject", new getProject());
@@ -12981,20 +13298,20 @@ import org.slf4j.LoggerFactory;
       }
     }
 
-    public static class createProject<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, createProject_args, String> {
-      public createProject() {
-        super("createProject");
+    public static class generateAndRegisterSSHKeys<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, generateAndRegisterSSHKeys_args, String> {
+      public generateAndRegisterSSHKeys() {
+        super("generateAndRegisterSSHKeys");
       }
 
-      public createProject_args getEmptyArgsInstance() {
-        return new createProject_args();
+      public generateAndRegisterSSHKeys_args getEmptyArgsInstance() {
+        return new generateAndRegisterSSHKeys_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) {
-            createProject_result result = new createProject_result();
+            generateAndRegisterSSHKeys_result result = new generateAndRegisterSSHKeys_result();
             result.success = o;
             try {
               fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
@@ -13007,7 +13324,7 @@ import org.slf4j.LoggerFactory;
           public void onError(Exception e) {
             byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
             org.apache.thrift.TBase msg;
-            createProject_result result = new createProject_result();
+            generateAndRegisterSSHKeys_result result = new generateAndRegisterSSHKeys_result();
             if (e instanceof org.apache.airavata.model.error.InvalidRequestException) {
                         result.ire = (org.apache.airavata.model.error.InvalidRequestException) e;
                         result.setIreIsSet(true);
@@ -13043,25 +13360,26 @@ import org.slf4j.LoggerFactory;
         return false;
       }
 
-      public void start(I iface, createProject_args args, org.apache.thrift.async.AsyncMethodCallback<String> resultHandler) throws TException {
-        iface.createProject(args.project,resultHandler);
+      public void start(I iface, generateAndRegisterSSHKeys_args args, org.apache.thrift.async.AsyncMethodCallback<String> resultHandler) throws TException {
+        iface.generateAndRegisterSSHKeys(args.gatewayId, args.userName,resultHandler);
       }
     }
 
-    public static class updateProject<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, updateProject_args, Void> {
-      public updateProject() {
-        super("updateProject");
+    public static class getSSHPubKey<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, getSSHPubKey_args, String> {
+      public getSSHPubKey() {
+        super("getSSHPubKey");
       }
 
-      public updateProject_args getEmptyArgsInstance() {
-        return new updateProject_args();
+      public getSSHPubKey_args getEmptyArgsInstance() {
+        return new getSSHPubKey_args();
       }
 
-      public AsyncMethodCallback<Void> 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<Void>() { 
-          public void onComplete(Void o) {
-            updateProject_result result = new updateProject_result();
+        return new AsyncMethodCallback<String>() { 
+          public void onComplete(String o) {
+            getSSHPubKey_result result = new getSSHPubKey_result();
+            result.success = o;
             try {
               fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
               return;
@@ -13073,7 +13391,7 @@ import org.slf4j.LoggerFactory;
           public void onError(Exception e) {
             byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
             org.apache.thrift.TBase msg;
-            updateProject_result result = new updateProject_result();
+            getSSHPubKey_result result = new getSSHPubKey_result();
             if (e instanceof org.apache.airavata.model.error.InvalidRequestException) {
                         result.ire = (org.apache.airavata.model.error.InvalidRequestException) e;
                         result.setIreIsSet(true);
@@ -13089,11 +13407,6 @@ import org.slf4j.LoggerFactory;
                         result.setAseIsSet(true);
                         msg = result;
             }
-            else             if (e instanceof org.apache.airavata.model.error.ProjectNotFoundException) {
-                        result.pnfe = (org.apache.airavata.model.error.ProjectNotFoundException) e;
-                        result.setPnfeIsSet(true);
-                        msg = result;
-            }
              else 
             {
               msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
@@ -13114,25 +13427,25 @@ import org.slf4j.LoggerFactory;
         return false;
       }
 
-      public void start(I iface, updateProject_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
-        iface.updateProject(args.projectId, args.updatedProject,resultHandler);
+      public void start(I iface, getSSHPubKey_args args, org.apache.thrift.async.AsyncMethodCallback<String> resultHandler) throws TException {
+        iface.getSSHPubKey(args.airavataCredStoreToken,resultHandler);
       }
     }
 
-    public static class getProject<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, getProject_args, org.apache.airavata.model.workspace.Project> {
-      public getProject() {
-        super("getProject");
+    public static class getAllUserSSHPubKeys<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, getAllUserSSHPubKeys_args, Map<String,String>> {
+      public getAllUserSSHPubKeys() {
+        super("getAllUserSSHPubKeys");
       }
 
-      public getProject_args getEmptyArgsInstance() {
-        return new getProject_args();
+      public getAllUserSSHPubKeys_args getEmptyArgsInstance() {
+        return new getAllUserSSHPubKeys_args();
       }
 
-      public AsyncMethodCallback<org.apache.airavata.model.workspace.Project> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
+      public AsyncMethodCallback<Map<String,String>> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
         final org.apache.thrift.AsyncProcessFunction fcall = this;
-        return new AsyncMethodCallback<org.apache.airavata.model.workspace.Project>() { 
-          public void onComplete(org.apache.airavata.model.workspace.Project o) {
-            getProject_result result = new getProject_result();
+        return new AsyncMethodCallback<Map<String,String>>() { 
+          public void onComplete(Map<String,String> o) {
+            getAllUserSSHPubKeys_result result = new getAllUserSSHPubKeys_result();
             result.success = o;
             try {
               fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
@@ -13145,7 +13458,7 @@ import org.slf4j.LoggerFactory;
           public void onError(Exception e) {
             byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
             org.apache.thrift.TBase msg;
-            getProject_result result = new getProject_result();
+            getAllUserSSHPubKeys_result result = new getAllUserSSHPubKeys_result();
             if (e instanceof org.apache.airavata.model.error.InvalidRequestException) {
                         result.ire = (org.apache.airavata.model.error.InvalidRequestException) e;
                         result.setIreIsSet(true);
@@ -13161,11 +13474,6 @@ import org.slf4j.LoggerFactory;
                         result.setAseIsSet(true);
                         msg = result;
             }
-            else             if (e instanceof org.apache.airavata.model.error.ProjectNotFoundException) {
-                        result.pnfe = (org.apache.airavata.model.error.ProjectNotFoundException) e;
-                        result.setPnfeIsSet(true);
-                        msg = result;
-            }
              else 
             {
               msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
@@ -13186,25 +13494,25 @@ import org.slf4j.LoggerFactory;
         return false;
       }
 
-      public void start(I iface, getProject_args args, org.apache.thrift.async.AsyncMethodCallback<org.apache.airavata.model.workspace.Project> resultHandler) throws TException {
-        iface.getProject(args.projectId,resultHandler);
+      public void start(I iface, getAllUserSSHPubKeys_args args, org.apache.thrift.async.AsyncMethodCallback<Map<String,String>> resultHandler) throws TException {
+        iface.getAllUserSSHPubKeys(args.userName,resultHandler);
       }
     }
 
-    public static class getAllUserProjects<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, getAllUserProjects_args, List<org.apache.airavata.model.workspace.Project>> {
-      public getAllUserProjects() {
-        super("getAllUserProjects");
+    public static class createProject<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, createProject_args, String> {
+      public createProject() {
+        super("createProject");
       }
 
-      public getAllUserProjects_args getEmptyArgsInstance() {
-        return new getAllUserProjects_args();
+      public createProject_args getEmptyArgsInstance() {
+        return new createProject_args();
       }
 
-      public AsyncMethodCallback<List<org.apache.airavata.model.workspace.Project>> 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<List<org.apache.airavata.model.workspace.Project>>() { 
-          public void onComplete(List<org.apache.airavata.model.workspace.Project> o) {
-            getAllUserProjects_result result = new getAllUserProjects_result();
+        return new AsyncMethodCallback<String>() { 
+          public void onComplete(String o) {
+            createProject_result result = new createProject_result();
             result.success = o;
             try {
               fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
@@ -13217,7 +13525,7 @@ import org.slf4j.LoggerFactory;
           public void onError(Exception e) {
             byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
             org.apache.thrift.TBase msg;
-            getAllUserProjects_result result = new getAllUserProjects_result();
+            createProject_result result = new createProject_result();
             if (e instanceof org.apache.airavata.model.error.InvalidRequestException) {
                         result.ire = (org.apache.airavata.model.error.InvalidRequestException) e;
                         result.setIreIsSet(true);
@@ -13253,25 +13561,96 @@ import org.slf4j.LoggerFactory;
         return false;
       }
 
-      public void start(I iface, getAllUserProjects_args args, org.apache.thrift.async.AsyncMethodCallback<List<org.apache.airavata.model.workspace.Project>> resultHandler) throws TException {
-        iface.getAllUserProjects(args.userName,resultHandler);
+      public void start(I iface, createProject_args args, org.apache.thrift.async.AsyncMethodCallback<String> resultHandler) throws TException {
+        iface.createProject(args.project,resultHandler);
       }
     }
 
-    public static class searchProjectsByProjectName<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, searchProjectsByProjectName_args, List<org.apache.airavata.model.workspace.Project>> {
-      public searchProjectsByProjectName() {
-        super("searchProjectsByProjectName");
+    public static class updateProject<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, updateProject_args, Void> {
+      public updateProject() {
+        super("updateProject");
       }
 
-      public searchProjectsByProjectName_args getEmptyArgsInstance() {
-        return new searchProjectsByProjectName_args();
+      public updateProject_args getEmptyArgsInstance() {
+        return new updateProject_args();
       }
 
-      public AsyncMethodCallback<List<org.apache.airavata.model.workspace.Project>> 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.workspace.Project>>() { 
-          public void onComplete(List<org.apache.airavata.model.workspace.Project> o) {
-            searchProjectsByProjectName_result result = new searchProjectsByProjectName_result();
+        return new AsyncMethodCallback<Void>() { 
+          public void onComplete(Void o) {
+            updateProject_result result = new updateProject_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;
+            updateProject_result result = new updateProject_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.ProjectNotFoundException) {
+                        result.pnfe = (org.apache.airavata.model.error.ProjectNotFoundException) e;
+                        result.setPnfeIsSet(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, updateProject_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
+        iface.updateProject(args.projectId, args.updatedProject,resultHandler);
+      }
+    }
+
+    public static class getProject<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, getProject_args, org.apache.airavata.model.workspace.Project> {
+      public getProject() {
+        super("getProject");
+      }
+
+      public getProject_args getEmptyArgsInstance() {
+        return new getProject_args();
+      }
+
+      public AsyncMethodCallback<org.apache.airavata.model.workspace.Project> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
+        final org.apache.thrift.AsyncProcessFunction fcall = this;
+        return new AsyncMethodCallback<org.apache.airavata.model.workspace.Project>() { 
+          public void onComplete(org.apache.airavata.model.workspace.Project o) {
+            getProject_result result = new getProject_result();
             result.success = o;
             try {
               fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
@@ -13284,7 +13663,7 @@ import org.slf4j.LoggerFactory;
           public void onError(Exception e) {
             byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
             org.apache.thrift.TBase msg;
-            searchProjectsByProjectName_result result = new searchProjectsByProjectName_result();
+            getProject_result result = new getProject_result();
             if (e instanceof org.apache.airavata.model.error.InvalidRequestException) {
                         result.ire = (org.apache.airavata.model.error.InvalidRequestException) e;
                         result.setIreIsSet(true);
@@ -13300,6 +13679,11 @@ import org.slf4j.LoggerFactory;
                         result.setAseIsSet(true);
                         msg = result;
             }
+            else             if (e instanceof org.apache.airavata.model.error.ProjectNotFoundException) {
+                        result.pnfe = (org.apache.airavata.model.error.ProjectNotFoundException) e;
+                        result.setPnfeIsSet(true);
+                        msg = result;
+            }
              else 
             {
               msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
@@ -13320,25 +13704,25 @@ import org.slf4j.LoggerFactory;
         return false;
       }
 
-      public void start(I iface, searchProjectsByProjectName_args args, org.apache.thrift.async.AsyncMethodCallback<List<org.apache.airavata.model.workspace.Project>> resultHandler) throws TException {
-        iface.searchProjectsByProjectName(args.userName, args.projectName,resultHandler);
+      public void start(I iface, getProject_args args, org.apache.thrift.async.AsyncMethodCallback<org.apache.airavata.model.workspace.Project> resultHandler) throws TException {
+        iface.getProject(args.projectId,resultHandler);
       }
     }
 
-    public static class searchProjectsByProjectDesc<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, searchProjectsByProjectDesc_args, List<org.apache.airavata.model.workspace.Project>> {
-      public searchProjectsByProjectDesc() {
-        super("searchProjectsByProjectDesc");
+    public static class getAllUserProjects<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, getAllUserProjects_args, List<org.apache.airavata.model.workspace.Project>> {
+      public getAllUserProjects() {
+        super("getAllUserProjects");
       }
 
-      public searchProjectsByProjectDesc_args getEmptyArgsInstance() {
-        return new searchProjectsByProjectDesc_args();
+      public getAllUserProjects_args getEmptyArgsInstance() {
+        return new getAllUserProjects_args();
       }
 
       public AsyncMethodCallback<List<org.apache.airavata.model.workspace.Project>> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
         final org.apache.thrift.AsyncProcessFunction fcall = this;
         return new AsyncMethodCallback<List<org.apache.airavata.model.workspace.Project>>() { 
           public void onComplete(List<org.apache.airavata.model.workspace.Project> o) {
-            searchProjectsByProjectDesc_result result = new searchProjectsByProjectDesc_result();
+            getAllUserProjects_result result = new getAllUserProjects_result();
             result.success = o;
             try {
               fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
@@ -13351,7 +13735,7 @@ import org.slf4j.LoggerFactory;
           public void onError(Exception e) {
             byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
             org.apache.thrift.TBase msg;
-            searchProjectsByProjectDesc_result result = new searchProjectsByProjectDesc_result();
+            getAllUserProjects_result result = new getAllUserProjects_result();
             if (e instanceof org.apache.airavata.model.error.InvalidRequestException) {
                         result.ire = (org.apache.airavata.model.error.InvalidRequestException) e;
                         result.setIreIsSet(true);
@@ -13387,25 +13771,25 @@ import org.slf4j.LoggerFactory;
         return false;
       }
 
-      public void start(I iface, searchProjectsByProjectDesc_args args, org.apache.thrift.async.AsyncMethodCallback<List<org.apache.airavata.model.workspace.Project>> resultHandler) throws TException {
-        iface.searchProjectsByProjectDesc(args.userName, args.description,resultHandler);
+      public void start(I iface, getAllUserProjects_args args, org.apache.thrift.async.AsyncMethodCallback<List<org.apache.airavata.model.workspace.Project>> resultHandler) throws TException {
+        iface.getAllUserProjects(args.userName,resultHandler);
       }
     }
 
-    public static class searchExperimentsByName<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, searchExperimentsByName_args, List<org.apache.airavata.model.workspace.experiment.ExperimentSummary>> {
-      public searchExperimentsByName() {
-        super("searchExperimentsByName");
+    public static class searchProjectsByProjectName<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, searchProjectsByProjectName_args, List<org.apache.airavata.model.workspace.Project>> {
+      public searchProjectsByProjectName() {
+        super("searchProjectsByProjectName");
       }
 
-      public searchExperimentsByName_args getEmptyArgsInstance() {
-        return new searchExperimentsByName_args();
+      public searchProjectsByProjectName_args getEmptyArgsInstance() {
+        return new searchProjectsByProjectName_args();
       }
 
-      public AsyncMethodCallback<List<org.apache.airavata.model.workspace.experiment.ExperimentSummary>> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
+      public AsyncMethodCallback<List<org.apache.airavata.model.workspace.Project>> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
         final org.apache.thrift.AsyncProcessFunction fcall = this;
-        return new AsyncMethodCallback<List<org.apache.airavata.model.workspace.experiment.ExperimentSummary>>() { 
-          public void onComplete(List<org.apache.airavata.model.workspace.experiment.ExperimentSummary> o) {
-            searchExperimentsByName_result result = new searchExperimentsByName_result();
+        return new AsyncMethodCallback<List<org.apache.airavata.model.workspace.Project>>() { 
+          public void onComplete(List<org.apache.airavata.model.workspace.Project> o) {
+            searchProjectsByProjectName_result result = new searchProjectsByProjectName_result();
             result.success = o;
             try {
               fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
@@ -13418,7 +13802,7 @@ import org.slf4j.LoggerFactory;
           public void onError(Exception e) {
             byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
             org.apache.thrift.TBase msg;
-            searchExperimentsByName_result result = new searchExperimentsByName_result();
+            searchProjectsByProjectName_result result = new searchProjectsByProjectName_result();
             if (e instanceof org.apache.airavata.model.error.InvalidRequestException) {
                         result.ire = (org.apache.airavata.model.error.InvalidRequestException) e;
                         result.setIreIsSet(true);
@@ -13454,25 +13838,25 @@ import org.slf4j.LoggerFactory;
         return false;
       }
 
-      public void start(I iface, searchExperimentsByName_args args, org.apache.thrift.async.AsyncMethodCallback<List<org.apache.airavata.model.workspace.experiment.ExperimentSummary>> resultHandler) throws TException {
-        iface.searchExperimentsByName(args.userName, args.expName,resultHandler);
+      public void start(I iface, searchProjectsByProjectName_args args, org.apache.thrift.async.AsyncMethodCallback<List<org.apache.airavata.model.workspace.Project>> resultHandler) throws TException {
+        iface.searchProjectsByProjectName(args.userName, args.projectName,resultHandler);
       }
     }
 
-    public static class searchExperimentsByDesc<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, searchExperimentsByDesc_args, List<org.apache.airavata.model.workspace.experiment.ExperimentSummary>> {
-      public searchExperimentsByDesc() {
-        super("searchExperimentsByDesc");
+    public static class searchProjectsByProjectDesc<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, searchProjectsByProjectDesc_args, List<org.apache.airavata.model.workspace.Project>> {
+      public searchProjectsByProjectDesc() {
+        super("searchProjectsByProjectDesc");
       }
 
-      public searchExperimentsByDesc_args getEmptyArgsInstance() {
-        return new searchExperimentsByDesc_args();
+      public searchProjectsByProjectDesc_args getEmptyArgsInstance() {
+        return new searchProjectsByProjectDesc_args();
       }
 
-      public AsyncMethodCallback<List<org.apache.airavata.model.workspace.experiment.ExperimentSummary>> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
+      public AsyncMethodCallback<List<org.apache.airavata.model.workspace.Project>> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
         final org.apache.thrift.AsyncProcessFunction fcall = this;
-        return new AsyncMethodCallback<List<org.apache.airavata.model.workspace.experiment.ExperimentSummary>>() { 
-          public void onComplete(List<org.apache.airavata.model.workspace.experiment.ExperimentSummary> o) {
-            searchExperimentsByDesc_result result = new searchExperimentsByDesc_result();
+        return new AsyncMethodCallback<List<org.apache.airavata.model.workspace.Project>>() { 
+          public void onComplete(List<org.apache.airavata.model.workspace.Project> o) {
+            searchProjectsByProjectDesc_result result = new searchProjectsByProjectDesc_result();
             result.success = o;
             try {
               fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
@@ -13485,7 +13869,7 @@ import org.slf4j.LoggerFactory;
           public void onError(Exception e) {
             byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
             org.apache.thrift.TBase msg;
-            searchExperimentsByDesc_result result = new searchExperimentsByDesc_result();
+            searchProjectsByProjectDesc_result result = new searchProjectsByProjectDesc_result();
             if (e instanceof org.apache.airavata.model.error.InvalidRequestException) {
                         result.ire = (org.apache.airavata.model.error.InvalidRequestException) e;
                         result.setIreIsSet(true);
@@ -13521,25 +13905,25 @@ import org.slf4j.LoggerFactory;
         return false;
       }
 
-      public void start(I iface, searchExperimentsByDesc_args args, org.apache.thrift.async.AsyncMethodCallback<List<org.apache.airavata.model.workspace.experiment.ExperimentSummary>> resultHandler) throws TException {
-        iface.searchExperimentsByDesc(args.userName, args.description,resultHandler);
+      public void start(I iface, searchProjectsByProjectDesc_args args, org.apache.thrift.async.AsyncMethodCallback<List<org.apache.airavata.model.workspace.Project>> resultHandler) throws TException {
+        iface.searchProjectsByProjectDesc(args.userName, args.description,resultHandler);
       }
     }
 
-    public static class searchExperimentsByApplication<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, searchExperimentsByApplication_args, List<org.apache.airavata.model.workspace.experiment.ExperimentSummary>> {
-      public searchExperimentsByApplication() {
-        super("searchExperimentsByApplication");
+    public static class searchExperimentsByName<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, searchExperimentsByName_args, List<org.apache.airavata.model.workspace.experiment.ExperimentSummary>> {
+      public searchExperimentsByName() {
+        super("searchExperimentsByName");
       }
 
-      public searchExperimentsByApplication_args getEmptyArgsInstance() {
-        return new searchExperimentsByApplication_args();
+      public searchExperimentsByName_args getEmptyArgsInstance() {
+        return new searchExperimentsByName_args();
       }
 
       public AsyncMethodCallback<List<org.apache.airavata.model.workspace.experiment.ExperimentSummary>> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
         final org.apache.thrift.AsyncProcessFunction fcall = this;
         return new AsyncMethodCallback<List<org.apache.airavata.model.workspace.experiment.ExperimentSummary>>() { 
           public void onComplete(List<org.apache.airavata.model.workspace.experiment.ExperimentSummary> o) {
-            searchExperimentsByApplication_result result = new searchExperimentsByApplication_result();
+            searchExperimentsByName_result result = new searchExperimentsByName_result();
             result.success = o;
             try {
               fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
@@ -13552,7 +13936,7 @@ import org.slf4j.LoggerFactory;
           public void onError(Exception e) {
             byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
             org.apache.thrift.TBase msg;
-            searchExperimentsByApplication_result result = new searchExperimentsByApplication_result();
+            searchExperimentsByName_result result = new searchExperimentsByName_result();
             if (e instanceof org.apache.airavata.model.error.InvalidRequestException) {
                         result.ire = (org.apache.airavata.model.error.InvalidRequestException) e;
                         result.setIreIsSet(true);
@@ -13588,25 +13972,25 @@ import org.slf4j.LoggerFactory;
         return false;
       }
 
-      public void start(I iface, searchExperimentsByApplication_args args, org.apache.thrift.async.AsyncMethodCallback<List<org.apache.airavata.model.workspace.experiment.ExperimentSummary>> resultHandler) throws TException {
-        iface.searchExperimentsByApplication(args.userName, args.applicationId,resultHandler);
+      public void start(I iface, searchExperimentsByName_args args, org.apache.thrift.async.AsyncMethodCallback<List<org.apache.airavata.model.workspace.experiment.ExperimentSummary>> resultHandler) throws TException {
+        iface.searchExperimentsByName(args.userName, args.expName,resultHandler);
       }
     }
 
-    public static class searchExperimentsByStatus<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, searchExperimentsByStatus_args, List<org.apache.airavata.model.workspace.experiment.ExperimentSummary>> {
-      public searchExperimentsByStatus() {
-        super("searchExperimentsByStatus");
+    public static class searchExperimentsByDesc<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, searchExperimentsByDesc_args, List<org.apache.airavata.model.workspace.experiment.ExperimentSummary>> {
+      public searchExperimentsByDesc() {
+        super("searchExperimentsByDesc");
       }
 
-      public searchExperimentsByStatus_args getEmptyArgsInstance() {
-        return new searchExperimentsByStatus_args();
+      public searchExperimentsByDesc_args getEmptyArgsInstance() {
+        return new searchExperimentsByDesc_args();
       }
 
       public AsyncMethodCallback<List<org.apache.airavata.model.workspace.experiment.ExperimentSummary>> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
         final org.apache.thrift.AsyncProcessFunction fcall = this;
         return new AsyncMethodCallback<List<org.apache.airavata.model.workspace.experiment.ExperimentSummary>>() { 
           public void onComplete(List<org.apache.airavata.model.workspace.experiment.ExperimentSummary> o) {
-            searchExperimentsByStatus_result result = new searchExperimentsByStatus_result();
+            searchExperimentsByDesc_result result = new searchExperimentsByDesc_result();
             result.success = o;
             try {
               fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
@@ -13619,7 +14003,7 @@ import org.slf4j.LoggerFactory;
           public void onError(Exception e) {
             byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
             org.apache.thrift.TBase msg;
-            searchExperimentsByStatus_result result = new searchExperimentsByStatus_result();
+            searchExperimentsByDesc_result result = new searchExperimentsByDesc_result();
             if (e instanceof org.apache.airavata.model.error.InvalidRequestException) {
                         result.ire = (org.apache.airavata.model.error.InvalidRequestException) e;
                         result.setIreIsSet(true);
@@ -13655,25 +14039,25 @@ import org.slf4j.LoggerFactory;
         return false;
       }
 
-      public void start(I iface, searchExperimentsByStatus_args args, org.apache.thrift.async.AsyncMethodCallback<List<org.apache.airavata.model.workspace.experiment.ExperimentSummary>> resultHandler) throws TException {
-        iface.searchExperimentsByStatus(args.userName, args.experimentState,resultHandler);
+      public void start(I iface, searchExperimentsByDesc_args args, org.apache.thrift.async.AsyncMethodCallback<List<org.apache.airavata.model.workspace.experiment.ExperimentSummary>> resultHandler) throws TException {
+        iface.searchExperimentsByDesc(args.userName, args.description,resultHandler);
       }
     }
 
-    public static class searchExperimentsByCreationTime<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, searchExperimentsByCreationTime_args, List<org.apache.airavata.model.workspace.experiment.ExperimentSummary>> {
-      public searchExperimentsByCreationTime() {
-        super("searchExperimentsByCreationTime");
+    public static class searchExperimentsByApplication<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, searchExperimentsByApplication_args, List<org.apache.airavata.model.workspace.experiment.ExperimentSummary>> {
+      public searchExperimentsByApplication() {
+        super("searchExperimentsByApplication");
       }
 
-      public searchExperimentsByCreationTime_args getEmptyArgsInstance() {
-        return new searchExperimentsByCreationTime_args();
+      public searchExperimentsByApplication_args getEmptyArgsInstance() {
+        return new searchExperimentsByApplication_args();
       }
 
       public AsyncMethodCallback<List<org.apache.airavata.model.workspace.experiment.ExperimentSummary>> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
         final org.apache.thrift.AsyncProcessFunction fcall = this;
         return new AsyncMethodCallback<List<org.apache.airavata.model.workspace.experiment.ExperimentSummary>>() { 
           public void onComplete(List<org.apache.airavata.model.workspace.experiment.ExperimentSummary> o) {
-            searchExperimentsByCreationTime_result result = new searchExperimentsByCreationTime_result();
+            searchExperimentsByApplication_result result = new searchExperimentsByApplication_result();
             result.success = o;
             try {
               fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
@@ -13686,7 +14070,7 @@ import org.slf4j.LoggerFactory;
           public void onError(Exception e) {
             byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
             org.apache.thrift.TBase msg;
-            searchExperimentsByCreationTime_result result = new searchExperimentsByCreationTime_result();
+            searchExperimentsByApplication_result result = new searchExperimentsByApplication_result();
             if (e instanceof org.apache.airavata.model.error.InvalidRequestException) {
                         result.ire = (org.apache.airavata.model.error.InvalidRequestException) e;
                         result.setIreIsSet(true);
@@ -13722,25 +14106,25 @@ import org.slf4j.LoggerFactory;
         return false;
       }
 
-      public void start(I iface, searchExperimentsByCreationTime_args args, org.apache.thrift.async.AsyncMethodCallback<List<org.apache.airavata.model.workspace.experiment.ExperimentSummary>> resultHandler) throws TException {
-        iface.searchExperimentsByCreationTime(args.userName, args.fromTime, args.toTime,resultHandler);
+      public void start(I iface, searchExperimentsByApplication_args args, org.apache.thrift.async.AsyncMethodCallback<List<org.apache.airavata.model.workspace.experiment.ExperimentSummary>> resultHandler) throws TException {
+        iface.searchExperimentsByApplication(args.userName, args.applicationId,resultHandler);
       }
     }
 
-    public static class getAllExperimentsInProject<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, getAllExperimentsInProject_args, List<org.apache.airavata.model.workspace.experiment.Experiment>> {
-      public getAllExperimentsInProject() {
-        super("getAllExperimentsInProject");
+    public static class searchExperimentsByStatus<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, searchExperimentsByStatus_args, List<org.apache.airavata.model.workspace.experiment.ExperimentSummary>> {
+      public searchExperimentsByStatus() {
+        super("searchExperimentsByStatus");
       }
 
-      public getAllExperimentsInProject_args getEmptyArgsInstance() {
-        return new getAllExperimentsInProject_args();
+      public searchExperimentsByStatus_args getEmptyArgsInstance() {
+        return new searchExperimentsByStatus_args();
       }
 
-      public AsyncMethodCallback<List<org.apache.airavata.model.workspace.experiment.Experiment>> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
+      public AsyncMethodCallback<List<org.apache.airavata.model.workspace.experiment.ExperimentSummary>> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
         final org.apache.thrift.AsyncProcessFunction fcall = this;
-        return new AsyncMethodCallback<List<org.apache.airavata.model.workspace.experiment.Experiment>>() { 
-          public void onComplete(List<org.apache.airavata.model.workspace.experiment.Experiment> o) {
-            getAllExperimentsInProject_result result = new getAllExperimentsInProject_result();
+        return new AsyncMethodCallback<List<org.apache.airavata.model.workspace.experiment.ExperimentSummary>>() { 
+          public void onComplete(List<org.apache.airavata.model.workspace.experiment.ExperimentSummary> o) {
+            searchExperimentsByStatus_result result = new searchExperimentsByStatus_result();
             result.success = o;
             try {
               fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
@@ -13753,7 +14137,7 @@ import org.slf4j.LoggerFactory;
           public void onError(Exception e) {
             byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
             org.apache.thrift.TBase msg;
-            getAllExperimentsInProject_result result = new getAllExperimentsInProject_result();
+            searchExperimentsByStatus_result result = new searchExperimentsByStatus_result();
             if (e instanceof org.apache.airavata.model.error.InvalidRequestException) {
                         result.ire = (org.apache.airavata.model.error.InvalidRequestException) e;
                         result.setIreIsSet(true);
@@ -13769,11 +14153,6 @@ import org.slf4j.LoggerFactory;
                         result.setAseIsSet(true);
                         msg = result;
             }
-            else             if (e instanceof org.apache.airavata.model.error.ProjectNotFoundException) {
-                        result.pnfe = (org.apache.airavata.model.error.ProjectNotFoundException) e;
-                        result.setPnfeIsSet(true);
-                        msg = result;
-            }
              else 
             {
               msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
@@ -13794,25 +14173,25 @@ import org.slf4j.LoggerFactory;
         return false;
       }
 
-      public void start(I iface, getAllExperimentsInProject_args args, org.apache.thrift.async.AsyncMethodCallback<List<org.apache.airavata.model.workspace.experiment.Experiment>> resultHandler) throws TException {
-        iface.getAllExperimentsInProject(args.projectId,resultHandler);
+      public void start(I iface, searchExperimentsByStatus_args args, org.apache.thrift.async.AsyncMethodCallback<List<org.apache.airavata.model.workspace.experiment.ExperimentSummary>> resultHandler) throws TException {
+        iface.searchExperimentsByStatus(args.userName, args.experimentState,resultHandler);
       }
     }
 
-    public static class getAllUserExperiments<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, getAllUserExperiments_args, List<org.apache.airavata.model.workspace.experiment.Experiment>> {
-      public getAllUserExperiments() {
-        super("getAllUserExperiments");
+    public static class searchExperimentsByCreationTime<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, searchExperimentsByCreationTime_args, List<org.apache.airavata.model.workspace.experiment.ExperimentSummary>> {
+      public searchExperimentsByCreationTime() {
+        super("searchExperimentsByCreationTime");
       }
 
-      public getAllUserExperiments_args getEmptyArgsInstance() {
-        return new getAllUserExperiments_args();
+      public searchExperimentsByCreationTime_args getEmptyArgsInstance() {
+        return new searchExperimentsByCreationTime_args();
       }
 
-      public AsyncMethodCallback<List<org.apache.airavata.model.workspace.experiment.Experiment>> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
+      public AsyncMethodCallback<List<org.apache.airavata.model.workspace.experiment.ExperimentSummary>> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
         final org.apache.thrift.AsyncProcessFunction fcall = this;
-        return new AsyncMethodCallback<List<org.apache.airavata.model.workspace.experiment.Experiment>>() { 
-          public void onComplete(List<org.apache.airavata.model.workspace.experiment.Experiment> o) {
-            getAllUserExperiments_result result = new getAllUserExperiments_result();
+        return new AsyncMethodCallback<List<org.apache.airavata.model.workspace.experiment.ExperimentSummary>>() { 
+          public void onComplete(List<org.apache.airavata.model.workspace.experiment.ExperimentSummary> o) {
+            searchExperimentsByCreationTime_result result = new searchExperimentsByCreationTime_result();
             result.success = o;
             try {
               fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
@@ -13825,7 +14204,146 @@ import org.slf4j.LoggerFactory;
           public void onError(Exception e) {
             byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
             org.apache.thrift.TBase msg;
-            getAllUserExperiments_result result = new getAllUserExperiments_result();
+            searchExperimentsByCreationTime_result result = new searchExperimentsByCreationTime_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 
+            {
+              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, searchExperimentsByCreationTime_args args, org.apache.thrift.async.AsyncMethodCallback<List<org.apache.airavata.model.workspace.experiment.ExperimentSummary>> resultHandler) throws TException {
+        iface.searchExperimentsByCreationTime(args.userName, args.fromTime, args.toTime,resultHandler);
+      }
+    }
+
+    public static class getAllExperimentsInProject<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, getAllExperimentsInProject_args, List<org.apache.airavata.model.workspace.experiment.Experiment>> {
+      public getAllExperimentsInProject() {
+        super("getAllExperimentsInProject");
+      }
+
+      public getAllExperimentsInProject_args getEmptyArgsInstance() {
+        return new getAllExperimentsInProject_args();
+      }
+
+      public AsyncMethodCallback<List<org.apache.airavata.model.workspace.experiment.Experiment>> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
+        final org.apache.thrift.AsyncProcessFunction fcall = this;
+        return new AsyncMethodCallback<List<org.apache.airavata.model.workspace.experiment.Experiment>>() { 
+          public void onComplete(List<org.apache.airavata.model.workspace.experiment.Experiment> o) {
+            getAllExperimentsInProject_result result = new getAllExperimentsInProject_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;
+            getAllExperimentsInProject_result result = new getAllExperimentsInProject_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.ProjectNotFoundException) {
+                        result.pnfe = (org.apache.airavata.model.error.ProjectNotFoundException) e;
+                        result.setPnfeIsSet(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, getAllExperimentsInProject_args args, org.apache.thrift.async.AsyncMethodCallback<List<org.apache.airavata.model.workspace.experiment.Experiment>> resultHandler) throws TException {
+        iface.getAllExperimentsInProject(args.projectId,resultHandler);
+      }
+    }
+
+    public static class getAllUserExperiments<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, getAllUserExperiments_args, List<org.apache.airavata.model.workspace.experiment.Experiment>> {
+      public getAllUserExperiments() {
+        super("getAllUserExperiments");
+      }
+
+      public getAllUserExperiments_args getEmptyArgsInstance() {
+        return new getAllUserExperiments_args();
+      }
+
+      public AsyncMethodCallback<List<org.apache.airavata.model.workspace.experiment.Experiment>> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
+        final org.apache.thrift.AsyncProcessFunction fcall = this;
+        return new AsyncMethodCallback<List<org.apache.airavata.model.workspace.experiment.Experiment>>() { 
+          public void onComplete(List<org.apache.airavata.model.workspace.experiment.Experiment> o) {
+            getAllUserExperiments_result result = new getAllUserExperiments_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;
+            getAllUserExperiments_result result = new getAllUserExperiments_result();
             if (e instanceof org.apache.airavata.model.error.InvalidRequestException) {
                         result.ire = (org.apache.airavata.model.error.InvalidRequestException) e;
                         result.setIreIsSet(true);
@@ -20929,16 +21447,3047 @@ import org.slf4j.LoggerFactory;
 
     }
 
-    private static class getAPIVersion_resultTupleSchemeFactory implements SchemeFactory {
-      public getAPIVersion_resultTupleScheme getScheme() {
-        return new getAPIVersion_resultTupleScheme();
+    private static class getAPIVersion_resultTupleSchemeFactory implements SchemeFactory {
+      public getAPIVersion_resultTupleScheme getScheme() {
+        return new getAPIVersion_resultTupleScheme();
+      }
+    }
+
+    private static class getAPIVersion_resultTupleScheme extends TupleScheme<getAPIVersion_result> {
+
+      @Override
+      public void write(org.apache.thrift.protocol.TProtocol prot, getAPIVersion_result struct) throws org.apache.thrift.TException {
+        TTupleProtocol oprot = (TTupleProtocol) prot;
+        BitSet optionals = new BitSet();
+        if (struct.isSetSuccess()) {
+          optionals.set(0);
+        }
+        if (struct.isSetIre()) {
+          optionals.set(1);
+        }
+        if (struct.isSetAce()) {
+          optionals.set(2);
+        }
+        if (struct.isSetAse()) {
+          optionals.set(3);
+        }
+        oprot.writeBitSet(optionals, 4);
+        if (struct.isSetSuccess()) {
+          oprot.writeString(struct.success);
+        }
+        if (struct.isSetIre()) {
+          struct.ire.write(oprot);
+        }
+        if (struct.isSetAce()) {
+          struct.ace.write(oprot);
+        }
+        if (struct.isSetAse()) {
+          struct.ase.write(oprot);
+        }
+      }
+
+      @Override
+      public void read(org.apache.thrift.protocol.TProtocol prot, getAPIVersion_result struct) throws org.apache.thrift.TException {
+        TTupleProtocol iprot = (TTupleProtocol) prot;
+        BitSet incoming = iprot.readBitSet(4);
+        if (incoming.get(0)) {
+          struct.success = iprot.readString();
+          struct.setSuccessIsSet(true);
+        }
+        if (incoming.get(1)) {
+          struct.ire = new org.apache.airavata.model.error.InvalidRequestException();
+          struct.ire.read(iprot);
+          struct.setIreIsSet(true);
+        }
+        if (incoming.get(2)) {
+          struct.ace = new org.apache.airavata.model.error.AiravataClientException();
+          struct.ace.read(iprot);
+          struct.setAceIsSet(true);
+        }
+        if (incoming.get(3)) {
+          struct.ase = new org.apache.airavata.model.error.AiravataSystemException();
+          struct.ase.read(iprot);
+          struct.setAseIsSet(true);
+        }
+      }
+    }
+
+  }
+
+  public static class addGateway_args implements org.apache.thrift.TBase<addGateway_args, addGateway_args._Fields>, java.io.Serializable, Cloneable, Comparable<addGateway_args>   {
+    private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("addGateway_args");
+
+    private static final org.apache.thrift.protocol.TField GATEWAY_FIELD_DESC = new org.apache.thrift.protocol.TField("gateway", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+
+    private static final Map<Class<? extends IScheme>, SchemeFactory> schemes = new HashMap<Class<? extends IScheme>, SchemeFactory>();
+    static {
+      schemes.put(StandardScheme.class, new addGateway_argsStandardSchemeFactory());
+      schemes.put(TupleScheme.class, new addGateway_argsTupleSchemeFactory());
+    }
+
+    public org.apache.airavata.model.workspace.Gateway gateway; // required
+
+    /** The set of fields this struct contains, along with convenience methods for finding and manipulating them. */
+    @SuppressWarnings("all") public enum _Fields implements org.apache.thrift.TFieldIdEnum {
+      GATEWAY((short)1, "gateway");
+
+      private static final Map<String, _Fields> byName = new HashMap<String, _Fields>();
+
+      static {
+        for (_Fields field : EnumSet.allOf(_Fields.class)) {
+          byName.put(field.getFieldName(), field);
+        }
+      }
+
+      /**
+       * Find the _Fields constant that matches fieldId, or null if its not found.
+       */
+      public static _Fields findByThriftId(int fieldId) {
+        switch(fieldId) {
+          case 1: // GATEWAY
+            return GATEWAY;
+          default:
+            return null;
+        }
+      }
+
+      /**
+       * Find the _Fields constant that matches fieldId, throwing an exception
+       * if it is not found.
+       */
+      public static _Fields findByThriftIdOrThrow(int fieldId) {
+        _Fields fields = findByThriftId(fieldId);
+        if (fields == null) throw new IllegalArgumentException("Field " + fieldId + " doesn't exist!");
+        return fields;
+      }
+
+      /**
+       * Find the _Fields constant that matches name, or null if its not found.
+       */
+      public static _Fields findByName(String name) {
+        return byName.get(name);
+      }
+
+      private final short _thriftId;
+      private final String _fieldName;
+
+      _Fields(short thriftId, String fieldName) {
+        _thriftId = thriftId;
+        _fieldName = fieldName;
+      }
+
+      public short getThriftFieldId() {
+        return _thriftId;
+      }
+
+      public String getFieldName() {
+        return _fieldName;
+      }
+    }
+
+    // isset id assignments
+    public static final Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> metaDataMap;
+    static {
+      Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> tmpMap = new EnumMap<_Fields, org.apache.thrift.meta_data.FieldMetaData>(_Fields.class);
+      tmpMap.put(_Fields.GATEWAY, new org.apache.thrift.meta_data.FieldMetaData("gateway", org.apache.thrift.TFieldRequirementType.REQUIRED, 
+          new org.apache.thrift.meta_data.StructMetaData(org.apache.thrift.protocol.TType.STRUCT, org.apache.airavata.model.workspace.Gateway.class)));
+      metaDataMap = Collections.unmodifiableMap(tmpMap);
+      org.apache.thrift.meta_data.FieldMetaData.addStructMetaDataMap(addGateway_args.class, metaDataMap);
+    }
+
+    public addGateway_args() {
+    }
+
+    public addGateway_args(
+      org.apache.airavata.model.workspace.Gateway gateway)
+    {
+      this();
+      this.gateway = gateway;
+    }
+
+    /**
+     * Performs a deep copy on <i>other</i>.
+     */
+    public addGateway_args(addGateway_args other) {
+      if (other.isSetGateway()) {
+        this.gateway = new org.apache.airavata.model.workspace.Gateway(other.gateway);
+      }
+    }
+
+    public addGateway_args deepCopy() {
+      return new addGateway_args(this);
+    }
+
+    @Override
+    public void clear() {
+      this.gateway = null;
+    }
+
+    public org.apache.airavata.model.workspace.Gateway getGateway() {
+      return this.gateway;
+    }
+
+    public addGateway_args setGateway(org.apache.airavata.model.workspace.Gateway gateway) {
+      this.gateway = gateway;
+      return this;
+    }
+
+    public void unsetGateway() {
+      this.gateway = null;
+    }
+
+    /** Returns true if field gateway is set (has been assigned a value) and false otherwise */
+    public boolean isSetGateway() {
+      return this.gateway != null;
+    }
+
+    public void setGatewayIsSet(boolean value) {
+      if (!value) {
+        this.gateway = null;
+      }
+    }
+
+    public void setFieldValue(_Fields field, Object value) {
+      switch (field) {
+      case GATEWAY:
+        if (value == null) {
+          unsetGateway();
+        } else {
+          setGateway((org.apache.airavata.model.workspace.Gateway)value);
+        }
+        break;
+
+      }
+    }
+
+    public Object getFieldValue(_Fields field) {
+      switch (field) {
+      case GATEWAY:
+        return getGateway();
+
+      }
+      throw new IllegalStateException();
+    }
+
+    /** Returns true if field corresponding to fieldID is set (has been assigned a value) and false otherwise */
+    public boolean isSet(_Fields field) {
+      if (field == null) {
+        throw new IllegalArgumentException();
+      }
+
+      switch (field) {
+      case GATEWAY:
+        return isSetGateway();
+      }
+      throw new IllegalStateException();
+    }
+
+    @Override
+    public boolean equals(Object that) {
+      if (that == null)
+        return false;
+      if (that instanceof addGateway_args)
+        return this.equals((addGateway_args)that);
+      return false;
+    }
+
+    public boolean equals(addGateway_args that) {
+      if (that == null)
+        return false;
+
+      boolean this_present_gateway = true && this.isSetGateway();
+      boolean that_present_gateway = true && that.isSetGateway();
+      if (this_present_gateway || that_present_gateway) {
+        if (!(this_present_gateway && that_present_gateway))
+          return false;
+        if (!this.gateway.equals(that.gateway))
+          return false;
+      }
+
+      return true;
+    }
+
+    @Override
+    public int hashCode() {
+      return 0;
+    }
+
+    @Override
+    public int compareTo(addGateway_args other) {
+      if (!getClass().equals(other.getClass())) {
+        return getClass().getName().compareTo(other.getClass().getName());
+      }
+
+      int lastComparison = 0;
+
+      lastComparison = Boolean.valueOf(isSetGateway()).compareTo(other.isSetGateway());
+      if (lastComparison != 0) {
+        return lastComparison;
+      }
+      if (isSetGateway()) {
+        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.gateway, other.gateway);
+        if (lastComparison != 0) {
+          return lastComparison;
+        }
+      }
+      return 0;
+    }
+
+    public _Fields fieldForId(int fieldId) {
+      return _Fields.findByThriftId(fieldId);
+    }
+
+    public void read(org.apache.thrift.protocol.TProtocol iprot) throws org.apache.thrift.TException {
+      schemes.get(iprot.getScheme()).getScheme().read(iprot, this);
+    }
+
+    public void write(org.apache.thrift.protocol.TProtocol oprot) throws org.apache.thrift.TException {
+      schemes.get(oprot.getScheme()).getScheme().write(oprot, this);
+    }
+
+    @Override
+    public String toString() {
+      StringBuilder sb = new StringBuilder("addGateway_args(");
+      boolean first = true;
+
+      sb.append("gateway:");
+      if (this.gateway == null) {
+        sb.append("null");
+      } else {
+        sb.append(this.gateway);
+      }
+      first = false;
+      sb.append(")");
+      return sb.toString();
+    }
+
+    public void validate() throws org.apache.thrift.TException {
+      // check for required fields
+      if (gateway == null) {
+        throw new org.apache.thrift.protocol.TProtocolException("Required field 'gateway' was not present! Struct: " + toString());
+      }
+      // check for sub-struct validity
+      if (gateway != null) {
+        gateway.validate();
+      }
+    }
+
+    private void writeObject(java.io.ObjectOutputStream out) throws java.io.IOException {
+      try {
+        write(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(out)));
+      } catch (org.apache.thrift.TException te) {
+        throw new java.io.IOException(te);
+      }
+    }
+
+    private void readObject(java.io.ObjectInputStream in) throws java.io.IOException, ClassNotFoundException {
+      try {
+        read(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(in)));
+      } catch (org.apache.thrift.TException te) {
+        throw new java.io.IOException(te);
+      }
+    }
+
+    private static class addGateway_argsStandardSchemeFactory implements SchemeFactory {
+      public addGateway_argsStandardScheme getScheme() {
+        return new addGateway_argsStandardScheme();
+      }
+    }
+
+    private static class addGateway_argsStandardScheme extends StandardScheme<addGateway_args> {
+
+      public void read(org.apache.thrift.protocol.TProtocol iprot, addGateway_args struct) throws org.apache.thrift.TException {
+        org.apache.thrift.protocol.TField schemeField;
+        iprot.readStructBegin();
+        while (true)
+        {
+          schemeField = iprot.readFieldBegin();
+          if (schemeField.type == org.apache.thrift.protocol.TType.STOP) { 
+            break;
+          }
+          switch (schemeField.id) {
+            case 1: // GATEWAY
+              if (schemeField.type == org.apache.thrift.protocol.TType.STRUCT) {
+                struct.gateway = new org.apache.airavata.model.workspace.Gateway();
+                struct.gateway.read(iprot);
+                struct.setGatewayIsSet(true);
+              } else { 
+                org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+              }
+              break;
+            default:
+              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+          }
+          iprot.readFieldEnd();
+        }
+        iprot.readStructEnd();
+
+        // check for required fields of primitive type, which can't be checked in the validate method
+        struct.validate();
+      }
+
+      public void write(org.apache.thrift.protocol.TProtocol oprot, addGateway_args struct) throws org.apache.thrift.TException {
+        struct.validate();
+
+        oprot.writeStructBegin(STRUCT_DESC);
+        if (struct.gateway != null) {
+          oprot.writeFieldBegin(GATEWAY_FIELD_DESC);
+          struct.gateway.write(oprot);
+          oprot.writeFieldEnd();
+        }
+        oprot.writeFieldStop();
+        oprot.writeStructEnd();
+      }
+
+    }
+
+    private static class addGateway_argsTupleSchemeFactory implements SchemeFactory {
+      public addGateway_argsTupleScheme getScheme() {
+        return new addGateway_argsTupleScheme();
+      }
+    }
+
+    private static class addGateway_argsTupleScheme extends TupleScheme<addGateway_args> {
+
+      @Override
+      public void write(org.apache.thrift.protocol.TProtocol prot, addGateway_args struct) throws org.apache.thrift.TException {
+        TTupleProtocol oprot = (TTupleProtocol) prot;
+        struct.gateway.write(oprot);
+      }
+
+      @Override
+      public void read(org.apache.thrift.protocol.TProtocol prot, addGateway_args struct) throws org.apache.thrift.TException {
+        TTupleProtocol iprot = (TTupleProtocol) prot;
+        struct.gateway = new org.apache.airavata.model.workspace.Gateway();
+        struct.gateway.read(iprot);
+        struct.setGatewayIsSet(true);
+      }
+    }
+
+  }
+
+  public static class addGateway_result implements org.apache.thrift.TBase<addGateway_result, addGateway_result._Fields>, java.io.Serializable, Cloneable, Comparable<addGateway_result>   {
+    private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("addGateway_result");
+
+    private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.STRING, (short)0);
+    private static final org.apache.thrift.protocol.TField IRE_FIELD_DESC = new org.apache.thrift.protocol.TField("ire", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+    private static final org.apache.thrift.protocol.TField ACE_FIELD_DESC = new org.apache.thrift.protocol.TField("ace", org.apache.thrift.protocol.TType.STRUCT, (short)2);
+    private static final org.apache.thrift.protocol.TField ASE_FIELD_DESC = new org.apache.thrift.protocol.TField("ase", org.apache.thrift.protocol.TType.STRUCT, (short)3);
+
+    private static final Map<Class<? extends IScheme>, SchemeFactory> schemes = new HashMap<Class<? extends IScheme>, SchemeFactory>();
+    static {
+      schemes.put(StandardScheme.class, new addGateway_resultStandardSchemeFactory());
+      schemes.put(TupleScheme.class, new addGateway_resultTupleSchemeFactory());
+    }
+
+    public String success; // required
+    public org.apache.airavata.model.error.InvalidRequestException ire; // required
+    public org.apache.airavata.model.error.AiravataClientException ace; // required
+    public org.apache.airavata.model.error.AiravataSystemException ase; // required
+
+    /** The set of fields this struct contains, along with convenience methods for finding and manipulating them. */
+    @SuppressWarnings("all") public enum _Fields implements org.apache.thrift.TFieldIdEnum {
+      SUCCESS((short)0, "success"),
+      IRE((short)1, "ire"),
+      ACE((short)2, "ace"),
+      ASE((short)3, "ase");
+
+      private static final Map<String, _Fields> byName = new HashMap<String, _Fi

<TRUNCATED>

[2/2] airavata git commit: Fixing the stub build error - AIRAVATA-1616

Posted by sm...@apache.org.
Fixing the stub build error - AIRAVATA-1616


Project: http://git-wip-us.apache.org/repos/asf/airavata/repo
Commit: http://git-wip-us.apache.org/repos/asf/airavata/commit/050ea840
Tree: http://git-wip-us.apache.org/repos/asf/airavata/tree/050ea840
Diff: http://git-wip-us.apache.org/repos/asf/airavata/diff/050ea840

Branch: refs/heads/master
Commit: 050ea840f700060b49802b7ae702c95838dde4e0
Parents: 33b403f
Author: Suresh Marru <sm...@apache.org>
Authored: Tue Mar 3 13:23:05 2015 -0500
Committer: Suresh Marru <sm...@apache.org>
Committed: Tue Mar 3 13:23:05 2015 -0500

----------------------------------------------------------------------
 .../server/handler/AiravataServerHandler.java   |   17 +-
 .../java/org/apache/airavata/api/Airavata.java  | 6819 ++++++++++++++----
 2 files changed, 5269 insertions(+), 1567 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/airavata/blob/050ea840/airavata-api/airavata-api-server/src/main/java/org/apache/airavata/api/server/handler/AiravataServerHandler.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-api-server/src/main/java/org/apache/airavata/api/server/handler/AiravataServerHandler.java b/airavata-api/airavata-api-server/src/main/java/org/apache/airavata/api/server/handler/AiravataServerHandler.java
index e4da984..c449119 100644
--- a/airavata-api/airavata-api-server/src/main/java/org/apache/airavata/api/server/handler/AiravataServerHandler.java
+++ b/airavata-api/airavata-api-server/src/main/java/org/apache/airavata/api/server/handler/AiravataServerHandler.java
@@ -230,7 +230,22 @@ public class AiravataServerHandler implements Airavata.Iface {
         }
     }
 
-        /**
+    @Override
+    public String generateAndRegisterSSHKeys(String gatewayId, String userName) throws InvalidRequestException, AiravataClientException, AiravataSystemException, TException {
+        return null;
+    }
+
+    @Override
+    public String getSSHPubKey(String airavataCredStoreToken) throws InvalidRequestException, AiravataClientException, AiravataSystemException, TException {
+        return null;
+    }
+
+    @Override
+    public Map<String, String> getAllUserSSHPubKeys(String userName) throws InvalidRequestException, AiravataClientException, AiravataSystemException, TException {
+        return null;
+    }
+
+    /**
      * Create a Project
      *
      * @param project