adding new submission protocl
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 f75944c..0edb752 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
@@ -36,12 +36,7 @@
import org.airavata.appcatalog.cpi.ComputeResource;
import org.airavata.appcatalog.cpi.GwyResourceProfile;
import org.apache.aiaravata.application.catalog.data.impl.AppCatalogFactory;
-import org.apache.aiaravata.application.catalog.data.resources.AbstractResource;
-import org.apache.aiaravata.application.catalog.data.resources.GridftpDataMovementResource;
-import org.apache.aiaravata.application.catalog.data.resources.LocalDataMovementResource;
-import org.apache.aiaravata.application.catalog.data.resources.LocalSubmissionResource;
-import org.apache.aiaravata.application.catalog.data.resources.ScpDataMovementResource;
-import org.apache.aiaravata.application.catalog.data.resources.SshJobSubmissionResource;
+import org.apache.aiaravata.application.catalog.data.resources.*;
import org.apache.aiaravata.application.catalog.data.util.AppCatalogThriftConversion;
import org.apache.airavata.api.Airavata;
import org.apache.airavata.api.airavataAPIConstants;
@@ -55,16 +50,7 @@
import org.apache.airavata.model.appcatalog.appinterface.ApplicationInterfaceDescription;
import org.apache.airavata.model.appcatalog.appinterface.InputDataObjectType;
import org.apache.airavata.model.appcatalog.appinterface.OutputDataObjectType;
-import org.apache.airavata.model.appcatalog.computeresource.ComputeResourceDescription;
-import org.apache.airavata.model.appcatalog.computeresource.DataMovementInterface;
-import org.apache.airavata.model.appcatalog.computeresource.DataMovementProtocol;
-import org.apache.airavata.model.appcatalog.computeresource.GridFTPDataMovement;
-import org.apache.airavata.model.appcatalog.computeresource.JobSubmissionInterface;
-import org.apache.airavata.model.appcatalog.computeresource.JobSubmissionProtocol;
-import org.apache.airavata.model.appcatalog.computeresource.LOCALDataMovement;
-import org.apache.airavata.model.appcatalog.computeresource.LOCALSubmission;
-import org.apache.airavata.model.appcatalog.computeresource.SCPDataMovement;
-import org.apache.airavata.model.appcatalog.computeresource.SSHJobSubmission;
+import org.apache.airavata.model.appcatalog.computeresource.*;
import org.apache.airavata.model.appcatalog.gatewayprofile.ComputeResourcePreference;
import org.apache.airavata.model.appcatalog.gatewayprofile.GatewayResourceProfile;
import org.apache.airavata.model.error.AiravataClientException;
@@ -1842,6 +1828,33 @@
}
/**
+ * Add a Cloud Job Submission details to a compute resource
+ * App catalog will return a jobSubmissionInterfaceId which will be added to the jobSubmissionInterfaces.
+ *
+ * @param computeResourceId The identifier of the compute resource to which JobSubmission protocol to be added
+ * @param priorityOrder Specify the priority of this job manager. If this is the only jobmanager, the priority can be zero.
+ * @param cloudJobSubmission The SSHJobSubmission object to be added to the resource.
+ * @return status
+ * Returns a success/failure of the deletion.
+ */
+ @Override
+ public boolean addCloudJobSubmissionDetails(String computeResourceId, int priorityOrder, CloudJobSubmission cloudJobSubmission) throws InvalidRequestException, AiravataClientException, AiravataSystemException, TException {
+ try {
+ appCatalog = AppCatalogFactory.getAppCatalog();
+ ComputeResource computeResource = appCatalog.getComputeResource();
+ addJobSubmissionInterface(computeResource, computeResourceId,
+ computeResource.addCloudJobSubmission(cloudJobSubmission), JobSubmissionProtocol.CLOUD, priorityOrder);
+ return true;
+ } catch (AppCatalogException e) {
+ logger.error("Error while adding job submission interface to resource compute resource...", e);
+ AiravataSystemException exception = new AiravataSystemException();
+ exception.setAiravataErrorType(AiravataErrorType.INTERNAL_ERROR);
+ exception.setMessage("Error while adding job submission interface to resource compute resource. More info : " + e.getMessage());
+ throw exception;
+ }
+ }
+
+ /**
* Update the given SSH Job Submission details
*
* @param jobSubmissionInterfaceId The identifier of the JobSubmission Interface to be updated.
@@ -1866,6 +1879,29 @@
}
/**
+ * Update the given SSH Job Submission details
+ *
+ * @param jobSubmissionInterfaceId The identifier of the JobSubmission Interface to be updated.
+ * @param cloudJobSubmission The SSHJobSubmission object to be updated.
+ * @return status
+ * Returns a success/failure of the deletion.
+ */
+ @Override
+ public boolean updateCloudJobSubmissionDetails(String jobSubmissionInterfaceId, CloudJobSubmission cloudJobSubmission) throws InvalidRequestException, AiravataClientException, AiravataSystemException, TException {
+ try {
+ CloudSubmissionResource submission = AppCatalogThriftConversion.getCloudJobSubmission(cloudJobSubmission);
+ submission.setJobSubmissionInterfaceId(jobSubmissionInterfaceId);
+ submission.save();
+ return true;
+ } catch (AppCatalogException e) {
+ logger.error("Error while adding job submission interface to resource compute resource...", e);
+ AiravataSystemException exception = new AiravataSystemException();
+ exception.setAiravataErrorType(AiravataErrorType.INTERNAL_ERROR);
+ exception.setMessage("Error while adding job submission interface to resource compute resource. More info : " + e.getMessage());
+ throw exception;
+ }
+ }
+ /**
* Add a Local data moevement details to a compute resource
* App catalog will return a dataMovementInterfaceId which will be added to the dataMovementInterfaces.
*
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 ebc47a1..045b33b 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
@@ -818,6 +818,29 @@
public boolean addSSHJobSubmissionDetails(String computeResourceId, int priorityOrder, org.apache.airavata.model.appcatalog.computeresource.SSHJobSubmission sshJobSubmission) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException;
/**
+ * * Add a Cloud Job Submission details to a compute resource
+ * * App catalog will return a jobSubmissionInterfaceId which will be added to the jobSubmissionInterfaces.
+ * *
+ * * @param computeResourceId
+ * * The identifier of the compute resource to which JobSubmission protocol to be added
+ * *
+ * * @param priorityOrder
+ * * Specify the priority of this job manager. If this is the only jobmanager, the priority can be zero.
+ * *
+ * * @param sshJobSubmission
+ * * The SSHJobSubmission object to be added to the resource.
+ * *
+ * * @return status
+ * * Returns a success/failure of the deletion.
+ * *
+ *
+ * @param computeResourceId
+ * @param priorityOrder
+ * @param cloudSubmission
+ */
+ public boolean addCloudJobSubmissionDetails(String computeResourceId, int priorityOrder, org.apache.airavata.model.appcatalog.computeresource.CloudJobSubmission cloudSubmission) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException;
+
+ /**
* Update the given SSH Job Submission details
*
* @param jobSubmissionInterfaceId
@@ -836,6 +859,24 @@
public boolean updateSSHJobSubmissionDetails(String jobSubmissionInterfaceId, org.apache.airavata.model.appcatalog.computeresource.SSHJobSubmission sshJobSubmission) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException;
/**
+ * Update the given SSH Job Submission details
+ *
+ * @param jobSubmissionInterfaceId
+ * The identifier of the JobSubmission Interface to be updated.
+ *
+ * @param cloudJobSubmission
+ * The CloudJobSubmission object to be updated.
+ *
+ * @return status
+ * Returns a success/failure of the deletion.
+ *
+ *
+ * @param jobSubmissionInterfaceId
+ * @param sshJobSubmission
+ */
+ public boolean updateCloudJobSubmissionDetails(String jobSubmissionInterfaceId, org.apache.airavata.model.appcatalog.computeresource.CloudJobSubmission sshJobSubmission) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException;
+
+ /**
* Add a Local data movement details to a compute resource
* App catalog will return a dataMovementInterfaceId which will be added to the dataMovementInterfaces.
*
@@ -1313,8 +1354,12 @@
public void addSSHJobSubmissionDetails(String computeResourceId, int priorityOrder, org.apache.airavata.model.appcatalog.computeresource.SSHJobSubmission sshJobSubmission, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ public void addCloudJobSubmissionDetails(String computeResourceId, int priorityOrder, org.apache.airavata.model.appcatalog.computeresource.CloudJobSubmission cloudSubmission, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+
public void updateSSHJobSubmissionDetails(String jobSubmissionInterfaceId, org.apache.airavata.model.appcatalog.computeresource.SSHJobSubmission sshJobSubmission, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ public void updateCloudJobSubmissionDetails(String jobSubmissionInterfaceId, org.apache.airavata.model.appcatalog.computeresource.CloudJobSubmission sshJobSubmission, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+
public void addLocalDataMovementDetails(String computeResourceId, int priorityOrder, org.apache.airavata.model.appcatalog.computeresource.LOCALDataMovement localDataMovement, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
public void updateLocalDataMovementDetails(String jobSubmissionInterfaceId, org.apache.airavata.model.appcatalog.computeresource.LOCALDataMovement localDataMovement, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
@@ -2974,6 +3019,40 @@
throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "addSSHJobSubmissionDetails failed: unknown result");
}
+ public boolean addCloudJobSubmissionDetails(String computeResourceId, int priorityOrder, org.apache.airavata.model.appcatalog.computeresource.CloudJobSubmission cloudSubmission) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
+ {
+ send_addCloudJobSubmissionDetails(computeResourceId, priorityOrder, cloudSubmission);
+ return recv_addCloudJobSubmissionDetails();
+ }
+
+ public void send_addCloudJobSubmissionDetails(String computeResourceId, int priorityOrder, org.apache.airavata.model.appcatalog.computeresource.CloudJobSubmission cloudSubmission) throws org.apache.thrift.TException
+ {
+ addCloudJobSubmissionDetails_args args = new addCloudJobSubmissionDetails_args();
+ args.setComputeResourceId(computeResourceId);
+ args.setPriorityOrder(priorityOrder);
+ args.setCloudSubmission(cloudSubmission);
+ sendBase("addCloudJobSubmissionDetails", args);
+ }
+
+ public boolean recv_addCloudJobSubmissionDetails() throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
+ {
+ addCloudJobSubmissionDetails_result result = new addCloudJobSubmissionDetails_result();
+ receiveBase(result, "addCloudJobSubmissionDetails");
+ 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, "addCloudJobSubmissionDetails failed: unknown result");
+ }
+
public boolean updateSSHJobSubmissionDetails(String jobSubmissionInterfaceId, org.apache.airavata.model.appcatalog.computeresource.SSHJobSubmission sshJobSubmission) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
{
send_updateSSHJobSubmissionDetails(jobSubmissionInterfaceId, sshJobSubmission);
@@ -3007,6 +3086,39 @@
throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "updateSSHJobSubmissionDetails failed: unknown result");
}
+ public boolean updateCloudJobSubmissionDetails(String jobSubmissionInterfaceId, org.apache.airavata.model.appcatalog.computeresource.CloudJobSubmission sshJobSubmission) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
+ {
+ send_updateCloudJobSubmissionDetails(jobSubmissionInterfaceId, sshJobSubmission);
+ return recv_updateCloudJobSubmissionDetails();
+ }
+
+ public void send_updateCloudJobSubmissionDetails(String jobSubmissionInterfaceId, org.apache.airavata.model.appcatalog.computeresource.CloudJobSubmission sshJobSubmission) throws org.apache.thrift.TException
+ {
+ updateCloudJobSubmissionDetails_args args = new updateCloudJobSubmissionDetails_args();
+ args.setJobSubmissionInterfaceId(jobSubmissionInterfaceId);
+ args.setSshJobSubmission(sshJobSubmission);
+ sendBase("updateCloudJobSubmissionDetails", args);
+ }
+
+ public boolean recv_updateCloudJobSubmissionDetails() throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
+ {
+ updateCloudJobSubmissionDetails_result result = new updateCloudJobSubmissionDetails_result();
+ receiveBase(result, "updateCloudJobSubmissionDetails");
+ 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, "updateCloudJobSubmissionDetails failed: unknown result");
+ }
+
public boolean addLocalDataMovementDetails(String computeResourceId, int priorityOrder, org.apache.airavata.model.appcatalog.computeresource.LOCALDataMovement localDataMovement) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
{
send_addLocalDataMovementDetails(computeResourceId, priorityOrder, localDataMovement);
@@ -5363,6 +5475,44 @@
}
}
+ public void addCloudJobSubmissionDetails(String computeResourceId, int priorityOrder, org.apache.airavata.model.appcatalog.computeresource.CloudJobSubmission cloudSubmission, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+ checkReady();
+ addCloudJobSubmissionDetails_call method_call = new addCloudJobSubmissionDetails_call(computeResourceId, priorityOrder, cloudSubmission, resultHandler, this, ___protocolFactory, ___transport);
+ this.___currentMethod = method_call;
+ ___manager.call(method_call);
+ }
+
+ public static class addCloudJobSubmissionDetails_call extends org.apache.thrift.async.TAsyncMethodCall {
+ private String computeResourceId;
+ private int priorityOrder;
+ private org.apache.airavata.model.appcatalog.computeresource.CloudJobSubmission cloudSubmission;
+ public addCloudJobSubmissionDetails_call(String computeResourceId, int priorityOrder, org.apache.airavata.model.appcatalog.computeresource.CloudJobSubmission cloudSubmission, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+ super(client, protocolFactory, transport, resultHandler, false);
+ this.computeResourceId = computeResourceId;
+ this.priorityOrder = priorityOrder;
+ this.cloudSubmission = cloudSubmission;
+ }
+
+ public void write_args(org.apache.thrift.protocol.TProtocol prot) throws org.apache.thrift.TException {
+ prot.writeMessageBegin(new org.apache.thrift.protocol.TMessage("addCloudJobSubmissionDetails", org.apache.thrift.protocol.TMessageType.CALL, 0));
+ addCloudJobSubmissionDetails_args args = new addCloudJobSubmissionDetails_args();
+ args.setComputeResourceId(computeResourceId);
+ args.setPriorityOrder(priorityOrder);
+ args.setCloudSubmission(cloudSubmission);
+ args.write(prot);
+ prot.writeMessageEnd();
+ }
+
+ public boolean getResult() throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException {
+ if (getState() != org.apache.thrift.async.TAsyncMethodCall.State.RESPONSE_READ) {
+ throw new IllegalStateException("Method call not finished!");
+ }
+ org.apache.thrift.transport.TMemoryInputTransport memoryTransport = new org.apache.thrift.transport.TMemoryInputTransport(getFrameBuffer().array());
+ org.apache.thrift.protocol.TProtocol prot = client.getProtocolFactory().getProtocol(memoryTransport);
+ return (new Client(prot)).recv_addCloudJobSubmissionDetails();
+ }
+ }
+
public void updateSSHJobSubmissionDetails(String jobSubmissionInterfaceId, org.apache.airavata.model.appcatalog.computeresource.SSHJobSubmission sshJobSubmission, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
checkReady();
updateSSHJobSubmissionDetails_call method_call = new updateSSHJobSubmissionDetails_call(jobSubmissionInterfaceId, sshJobSubmission, resultHandler, this, ___protocolFactory, ___transport);
@@ -5398,6 +5548,41 @@
}
}
+ public void updateCloudJobSubmissionDetails(String jobSubmissionInterfaceId, org.apache.airavata.model.appcatalog.computeresource.CloudJobSubmission sshJobSubmission, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+ checkReady();
+ updateCloudJobSubmissionDetails_call method_call = new updateCloudJobSubmissionDetails_call(jobSubmissionInterfaceId, sshJobSubmission, resultHandler, this, ___protocolFactory, ___transport);
+ this.___currentMethod = method_call;
+ ___manager.call(method_call);
+ }
+
+ public static class updateCloudJobSubmissionDetails_call extends org.apache.thrift.async.TAsyncMethodCall {
+ private String jobSubmissionInterfaceId;
+ private org.apache.airavata.model.appcatalog.computeresource.CloudJobSubmission sshJobSubmission;
+ public updateCloudJobSubmissionDetails_call(String jobSubmissionInterfaceId, org.apache.airavata.model.appcatalog.computeresource.CloudJobSubmission sshJobSubmission, 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.jobSubmissionInterfaceId = jobSubmissionInterfaceId;
+ this.sshJobSubmission = sshJobSubmission;
+ }
+
+ public void write_args(org.apache.thrift.protocol.TProtocol prot) throws org.apache.thrift.TException {
+ prot.writeMessageBegin(new org.apache.thrift.protocol.TMessage("updateCloudJobSubmissionDetails", org.apache.thrift.protocol.TMessageType.CALL, 0));
+ updateCloudJobSubmissionDetails_args args = new updateCloudJobSubmissionDetails_args();
+ args.setJobSubmissionInterfaceId(jobSubmissionInterfaceId);
+ args.setSshJobSubmission(sshJobSubmission);
+ args.write(prot);
+ prot.writeMessageEnd();
+ }
+
+ public boolean getResult() throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException {
+ if (getState() != org.apache.thrift.async.TAsyncMethodCall.State.RESPONSE_READ) {
+ throw new IllegalStateException("Method call not finished!");
+ }
+ org.apache.thrift.transport.TMemoryInputTransport memoryTransport = new org.apache.thrift.transport.TMemoryInputTransport(getFrameBuffer().array());
+ org.apache.thrift.protocol.TProtocol prot = client.getProtocolFactory().getProtocol(memoryTransport);
+ return (new Client(prot)).recv_updateCloudJobSubmissionDetails();
+ }
+ }
+
public void addLocalDataMovementDetails(String computeResourceId, int priorityOrder, org.apache.airavata.model.appcatalog.computeresource.LOCALDataMovement localDataMovement, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
checkReady();
addLocalDataMovementDetails_call method_call = new addLocalDataMovementDetails_call(computeResourceId, priorityOrder, localDataMovement, resultHandler, this, ___protocolFactory, ___transport);
@@ -6187,7 +6372,9 @@
processMap.put("addLocalSubmissionDetails", new addLocalSubmissionDetails());
processMap.put("updateLocalSubmissionDetails", new updateLocalSubmissionDetails());
processMap.put("addSSHJobSubmissionDetails", new addSSHJobSubmissionDetails());
+ processMap.put("addCloudJobSubmissionDetails", new addCloudJobSubmissionDetails());
processMap.put("updateSSHJobSubmissionDetails", new updateSSHJobSubmissionDetails());
+ processMap.put("updateCloudJobSubmissionDetails", new updateCloudJobSubmissionDetails());
processMap.put("addLocalDataMovementDetails", new addLocalDataMovementDetails());
processMap.put("updateLocalDataMovementDetails", new updateLocalDataMovementDetails());
processMap.put("addSCPDataMovementDetails", new addSCPDataMovementDetails());
@@ -7614,6 +7801,35 @@
}
}
+ public static class addCloudJobSubmissionDetails<I extends Iface> extends org.apache.thrift.ProcessFunction<I, addCloudJobSubmissionDetails_args> {
+ public addCloudJobSubmissionDetails() {
+ super("addCloudJobSubmissionDetails");
+ }
+
+ public addCloudJobSubmissionDetails_args getEmptyArgsInstance() {
+ return new addCloudJobSubmissionDetails_args();
+ }
+
+ protected boolean isOneway() {
+ return false;
+ }
+
+ public addCloudJobSubmissionDetails_result getResult(I iface, addCloudJobSubmissionDetails_args args) throws org.apache.thrift.TException {
+ addCloudJobSubmissionDetails_result result = new addCloudJobSubmissionDetails_result();
+ try {
+ result.success = iface.addCloudJobSubmissionDetails(args.computeResourceId, args.priorityOrder, args.cloudSubmission);
+ result.setSuccessIsSet(true);
+ } catch (org.apache.airavata.model.error.InvalidRequestException ire) {
+ result.ire = ire;
+ } catch (org.apache.airavata.model.error.AiravataClientException ace) {
+ result.ace = ace;
+ } catch (org.apache.airavata.model.error.AiravataSystemException ase) {
+ result.ase = ase;
+ }
+ return result;
+ }
+ }
+
public static class updateSSHJobSubmissionDetails<I extends Iface> extends org.apache.thrift.ProcessFunction<I, updateSSHJobSubmissionDetails_args> {
public updateSSHJobSubmissionDetails() {
super("updateSSHJobSubmissionDetails");
@@ -7643,6 +7859,35 @@
}
}
+ public static class updateCloudJobSubmissionDetails<I extends Iface> extends org.apache.thrift.ProcessFunction<I, updateCloudJobSubmissionDetails_args> {
+ public updateCloudJobSubmissionDetails() {
+ super("updateCloudJobSubmissionDetails");
+ }
+
+ public updateCloudJobSubmissionDetails_args getEmptyArgsInstance() {
+ return new updateCloudJobSubmissionDetails_args();
+ }
+
+ protected boolean isOneway() {
+ return false;
+ }
+
+ public updateCloudJobSubmissionDetails_result getResult(I iface, updateCloudJobSubmissionDetails_args args) throws org.apache.thrift.TException {
+ updateCloudJobSubmissionDetails_result result = new updateCloudJobSubmissionDetails_result();
+ try {
+ result.success = iface.updateCloudJobSubmissionDetails(args.jobSubmissionInterfaceId, args.sshJobSubmission);
+ result.setSuccessIsSet(true);
+ } catch (org.apache.airavata.model.error.InvalidRequestException ire) {
+ result.ire = ire;
+ } catch (org.apache.airavata.model.error.AiravataClientException ace) {
+ result.ace = ace;
+ } catch (org.apache.airavata.model.error.AiravataSystemException ase) {
+ result.ase = ase;
+ }
+ return result;
+ }
+ }
+
public static class addLocalDataMovementDetails<I extends Iface> extends org.apache.thrift.ProcessFunction<I, addLocalDataMovementDetails_args> {
public addLocalDataMovementDetails() {
super("addLocalDataMovementDetails");
@@ -8311,7 +8556,9 @@
processMap.put("addLocalSubmissionDetails", new addLocalSubmissionDetails());
processMap.put("updateLocalSubmissionDetails", new updateLocalSubmissionDetails());
processMap.put("addSSHJobSubmissionDetails", new addSSHJobSubmissionDetails());
+ processMap.put("addCloudJobSubmissionDetails", new addCloudJobSubmissionDetails());
processMap.put("updateSSHJobSubmissionDetails", new updateSSHJobSubmissionDetails());
+ processMap.put("updateCloudJobSubmissionDetails", new updateCloudJobSubmissionDetails());
processMap.put("addLocalDataMovementDetails", new addLocalDataMovementDetails());
processMap.put("updateLocalDataMovementDetails", new updateLocalDataMovementDetails());
processMap.put("addSCPDataMovementDetails", new addSCPDataMovementDetails());
@@ -11683,6 +11930,74 @@
}
}
+ public static class addCloudJobSubmissionDetails<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, addCloudJobSubmissionDetails_args, Boolean> {
+ public addCloudJobSubmissionDetails() {
+ super("addCloudJobSubmissionDetails");
+ }
+
+ public addCloudJobSubmissionDetails_args getEmptyArgsInstance() {
+ return new addCloudJobSubmissionDetails_args();
+ }
+
+ public AsyncMethodCallback<Boolean> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
+ final org.apache.thrift.AsyncProcessFunction fcall = this;
+ return new AsyncMethodCallback<Boolean>() {
+ public void onComplete(Boolean o) {
+ addCloudJobSubmissionDetails_result result = new addCloudJobSubmissionDetails_result();
+ result.success = o;
+ result.setSuccessIsSet(true);
+ 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;
+ addCloudJobSubmissionDetails_result result = new addCloudJobSubmissionDetails_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, addCloudJobSubmissionDetails_args args, org.apache.thrift.async.AsyncMethodCallback<Boolean> resultHandler) throws TException {
+ iface.addCloudJobSubmissionDetails(args.computeResourceId, args.priorityOrder, args.cloudSubmission,resultHandler);
+ }
+ }
+
public static class updateSSHJobSubmissionDetails<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, updateSSHJobSubmissionDetails_args, Boolean> {
public updateSSHJobSubmissionDetails() {
super("updateSSHJobSubmissionDetails");
@@ -11751,6 +12066,74 @@
}
}
+ public static class updateCloudJobSubmissionDetails<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, updateCloudJobSubmissionDetails_args, Boolean> {
+ public updateCloudJobSubmissionDetails() {
+ super("updateCloudJobSubmissionDetails");
+ }
+
+ public updateCloudJobSubmissionDetails_args getEmptyArgsInstance() {
+ return new updateCloudJobSubmissionDetails_args();
+ }
+
+ public AsyncMethodCallback<Boolean> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
+ final org.apache.thrift.AsyncProcessFunction fcall = this;
+ return new AsyncMethodCallback<Boolean>() {
+ public void onComplete(Boolean o) {
+ updateCloudJobSubmissionDetails_result result = new updateCloudJobSubmissionDetails_result();
+ result.success = o;
+ result.setSuccessIsSet(true);
+ 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;
+ updateCloudJobSubmissionDetails_result result = new updateCloudJobSubmissionDetails_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, updateCloudJobSubmissionDetails_args args, org.apache.thrift.async.AsyncMethodCallback<Boolean> resultHandler) throws TException {
+ iface.updateCloudJobSubmissionDetails(args.jobSubmissionInterfaceId, args.sshJobSubmission,resultHandler);
+ }
+ }
+
public static class addLocalDataMovementDetails<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, addLocalDataMovementDetails_args, Boolean> {
public addLocalDataMovementDetails() {
super("addLocalDataMovementDetails");
@@ -65379,6 +65762,1209 @@
}
+ public static class addCloudJobSubmissionDetails_args implements org.apache.thrift.TBase<addCloudJobSubmissionDetails_args, addCloudJobSubmissionDetails_args._Fields>, java.io.Serializable, Cloneable, Comparable<addCloudJobSubmissionDetails_args> {
+ private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("addCloudJobSubmissionDetails_args");
+
+ private static final org.apache.thrift.protocol.TField COMPUTE_RESOURCE_ID_FIELD_DESC = new org.apache.thrift.protocol.TField("computeResourceId", org.apache.thrift.protocol.TType.STRING, (short)1);
+ private static final org.apache.thrift.protocol.TField PRIORITY_ORDER_FIELD_DESC = new org.apache.thrift.protocol.TField("priorityOrder", org.apache.thrift.protocol.TType.I32, (short)2);
+ private static final org.apache.thrift.protocol.TField CLOUD_SUBMISSION_FIELD_DESC = new org.apache.thrift.protocol.TField("cloudSubmission", 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 addCloudJobSubmissionDetails_argsStandardSchemeFactory());
+ schemes.put(TupleScheme.class, new addCloudJobSubmissionDetails_argsTupleSchemeFactory());
+ }
+
+ public String computeResourceId; // required
+ public int priorityOrder; // required
+ public org.apache.airavata.model.appcatalog.computeresource.CloudJobSubmission cloudSubmission; // 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 {
+ COMPUTE_RESOURCE_ID((short)1, "computeResourceId"),
+ PRIORITY_ORDER((short)2, "priorityOrder"),
+ CLOUD_SUBMISSION((short)3, "cloudSubmission");
+
+ 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: // COMPUTE_RESOURCE_ID
+ return COMPUTE_RESOURCE_ID;
+ case 2: // PRIORITY_ORDER
+ return PRIORITY_ORDER;
+ case 3: // CLOUD_SUBMISSION
+ return CLOUD_SUBMISSION;
+ 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
+ private static final int __PRIORITYORDER_ISSET_ID = 0;
+ private byte __isset_bitfield = 0;
+ 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.COMPUTE_RESOURCE_ID, new org.apache.thrift.meta_data.FieldMetaData("computeResourceId", org.apache.thrift.TFieldRequirementType.REQUIRED,
+ new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
+ tmpMap.put(_Fields.PRIORITY_ORDER, new org.apache.thrift.meta_data.FieldMetaData("priorityOrder", org.apache.thrift.TFieldRequirementType.REQUIRED,
+ new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.I32)));
+ tmpMap.put(_Fields.CLOUD_SUBMISSION, new org.apache.thrift.meta_data.FieldMetaData("cloudSubmission", org.apache.thrift.TFieldRequirementType.REQUIRED,
+ new org.apache.thrift.meta_data.StructMetaData(org.apache.thrift.protocol.TType.STRUCT, org.apache.airavata.model.appcatalog.computeresource.CloudJobSubmission.class)));
+ metaDataMap = Collections.unmodifiableMap(tmpMap);
+ org.apache.thrift.meta_data.FieldMetaData.addStructMetaDataMap(addCloudJobSubmissionDetails_args.class, metaDataMap);
+ }
+
+ public addCloudJobSubmissionDetails_args() {
+ }
+
+ public addCloudJobSubmissionDetails_args(
+ String computeResourceId,
+ int priorityOrder,
+ org.apache.airavata.model.appcatalog.computeresource.CloudJobSubmission cloudSubmission)
+ {
+ this();
+ this.computeResourceId = computeResourceId;
+ this.priorityOrder = priorityOrder;
+ setPriorityOrderIsSet(true);
+ this.cloudSubmission = cloudSubmission;
+ }
+
+ /**
+ * Performs a deep copy on <i>other</i>.
+ */
+ public addCloudJobSubmissionDetails_args(addCloudJobSubmissionDetails_args other) {
+ __isset_bitfield = other.__isset_bitfield;
+ if (other.isSetComputeResourceId()) {
+ this.computeResourceId = other.computeResourceId;
+ }
+ this.priorityOrder = other.priorityOrder;
+ if (other.isSetCloudSubmission()) {
+ this.cloudSubmission = new org.apache.airavata.model.appcatalog.computeresource.CloudJobSubmission(other.cloudSubmission);
+ }
+ }
+
+ public addCloudJobSubmissionDetails_args deepCopy() {
+ return new addCloudJobSubmissionDetails_args(this);
+ }
+
+ @Override
+ public void clear() {
+ this.computeResourceId = null;
+ setPriorityOrderIsSet(false);
+ this.priorityOrder = 0;
+ this.cloudSubmission = null;
+ }
+
+ public String getComputeResourceId() {
+ return this.computeResourceId;
+ }
+
+ public addCloudJobSubmissionDetails_args setComputeResourceId(String computeResourceId) {
+ this.computeResourceId = computeResourceId;
+ return this;
+ }
+
+ public void unsetComputeResourceId() {
+ this.computeResourceId = null;
+ }
+
+ /** Returns true if field computeResourceId is set (has been assigned a value) and false otherwise */
+ public boolean isSetComputeResourceId() {
+ return this.computeResourceId != null;
+ }
+
+ public void setComputeResourceIdIsSet(boolean value) {
+ if (!value) {
+ this.computeResourceId = null;
+ }
+ }
+
+ public int getPriorityOrder() {
+ return this.priorityOrder;
+ }
+
+ public addCloudJobSubmissionDetails_args setPriorityOrder(int priorityOrder) {
+ this.priorityOrder = priorityOrder;
+ setPriorityOrderIsSet(true);
+ return this;
+ }
+
+ public void unsetPriorityOrder() {
+ __isset_bitfield = EncodingUtils.clearBit(__isset_bitfield, __PRIORITYORDER_ISSET_ID);
+ }
+
+ /** Returns true if field priorityOrder is set (has been assigned a value) and false otherwise */
+ public boolean isSetPriorityOrder() {
+ return EncodingUtils.testBit(__isset_bitfield, __PRIORITYORDER_ISSET_ID);
+ }
+
+ public void setPriorityOrderIsSet(boolean value) {
+ __isset_bitfield = EncodingUtils.setBit(__isset_bitfield, __PRIORITYORDER_ISSET_ID, value);
+ }
+
+ public org.apache.airavata.model.appcatalog.computeresource.CloudJobSubmission getCloudSubmission() {
+ return this.cloudSubmission;
+ }
+
+ public addCloudJobSubmissionDetails_args setCloudSubmission(org.apache.airavata.model.appcatalog.computeresource.CloudJobSubmission cloudSubmission) {
+ this.cloudSubmission = cloudSubmission;
+ return this;
+ }
+
+ public void unsetCloudSubmission() {
+ this.cloudSubmission = null;
+ }
+
+ /** Returns true if field cloudSubmission is set (has been assigned a value) and false otherwise */
+ public boolean isSetCloudSubmission() {
+ return this.cloudSubmission != null;
+ }
+
+ public void setCloudSubmissionIsSet(boolean value) {
+ if (!value) {
+ this.cloudSubmission = null;
+ }
+ }
+
+ public void setFieldValue(_Fields field, Object value) {
+ switch (field) {
+ case COMPUTE_RESOURCE_ID:
+ if (value == null) {
+ unsetComputeResourceId();
+ } else {
+ setComputeResourceId((String)value);
+ }
+ break;
+
+ case PRIORITY_ORDER:
+ if (value == null) {
+ unsetPriorityOrder();
+ } else {
+ setPriorityOrder((Integer)value);
+ }
+ break;
+
+ case CLOUD_SUBMISSION:
+ if (value == null) {
+ unsetCloudSubmission();
+ } else {
+ setCloudSubmission((org.apache.airavata.model.appcatalog.computeresource.CloudJobSubmission)value);
+ }
+ break;
+
+ }
+ }
+
+ public Object getFieldValue(_Fields field) {
+ switch (field) {
+ case COMPUTE_RESOURCE_ID:
+ return getComputeResourceId();
+
+ case PRIORITY_ORDER:
+ return Integer.valueOf(getPriorityOrder());
+
+ case CLOUD_SUBMISSION:
+ return getCloudSubmission();
+
+ }
+ 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 COMPUTE_RESOURCE_ID:
+ return isSetComputeResourceId();
+ case PRIORITY_ORDER:
+ return isSetPriorityOrder();
+ case CLOUD_SUBMISSION:
+ return isSetCloudSubmission();
+ }
+ throw new IllegalStateException();
+ }
+
+ @Override
+ public boolean equals(Object that) {
+ if (that == null)
+ return false;
+ if (that instanceof addCloudJobSubmissionDetails_args)
+ return this.equals((addCloudJobSubmissionDetails_args)that);
+ return false;
+ }
+
+ public boolean equals(addCloudJobSubmissionDetails_args that) {
+ if (that == null)
+ return false;
+
+ boolean this_present_computeResourceId = true && this.isSetComputeResourceId();
+ boolean that_present_computeResourceId = true && that.isSetComputeResourceId();
+ if (this_present_computeResourceId || that_present_computeResourceId) {
+ if (!(this_present_computeResourceId && that_present_computeResourceId))
+ return false;
+ if (!this.computeResourceId.equals(that.computeResourceId))
+ return false;
+ }
+
+ boolean this_present_priorityOrder = true;
+ boolean that_present_priorityOrder = true;
+ if (this_present_priorityOrder || that_present_priorityOrder) {
+ if (!(this_present_priorityOrder && that_present_priorityOrder))
+ return false;
+ if (this.priorityOrder != that.priorityOrder)
+ return false;
+ }
+
+ boolean this_present_cloudSubmission = true && this.isSetCloudSubmission();
+ boolean that_present_cloudSubmission = true && that.isSetCloudSubmission();
+ if (this_present_cloudSubmission || that_present_cloudSubmission) {
+ if (!(this_present_cloudSubmission && that_present_cloudSubmission))
+ return false;
+ if (!this.cloudSubmission.equals(that.cloudSubmission))
+ return false;
+ }
+
+ return true;
+ }
+
+ @Override
+ public int hashCode() {
+ return 0;
+ }
+
+ @Override
+ public int compareTo(addCloudJobSubmissionDetails_args other) {
+ if (!getClass().equals(other.getClass())) {
+ return getClass().getName().compareTo(other.getClass().getName());
+ }
+
+ int lastComparison = 0;
+
+ lastComparison = Boolean.valueOf(isSetComputeResourceId()).compareTo(other.isSetComputeResourceId());
+ if (lastComparison != 0) {
+ return lastComparison;
+ }
+ if (isSetComputeResourceId()) {
+ lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.computeResourceId, other.computeResourceId);
+ if (lastComparison != 0) {
+ return lastComparison;
+ }
+ }
+ lastComparison = Boolean.valueOf(isSetPriorityOrder()).compareTo(other.isSetPriorityOrder());
+ if (lastComparison != 0) {
+ return lastComparison;
+ }
+ if (isSetPriorityOrder()) {
+ lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.priorityOrder, other.priorityOrder);
+ if (lastComparison != 0) {
+ return lastComparison;
+ }
+ }
+ lastComparison = Boolean.valueOf(isSetCloudSubmission()).compareTo(other.isSetCloudSubmission());
+ if (lastComparison != 0) {
+ return lastComparison;
+ }
+ if (isSetCloudSubmission()) {
+ lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.cloudSubmission, other.cloudSubmission);
+ 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("addCloudJobSubmissionDetails_args(");
+ boolean first = true;
+
+ sb.append("computeResourceId:");
+ if (this.computeResourceId == null) {
+ sb.append("null");
+ } else {
+ sb.append(this.computeResourceId);
+ }
+ first = false;
+ if (!first) sb.append(", ");
+ sb.append("priorityOrder:");
+ sb.append(this.priorityOrder);
+ first = false;
+ if (!first) sb.append(", ");
+ sb.append("cloudSubmission:");
+ if (this.cloudSubmission == null) {
+ sb.append("null");
+ } else {
+ sb.append(this.cloudSubmission);
+ }
+ first = false;
+ sb.append(")");
+ return sb.toString();
+ }
+
+ public void validate() throws org.apache.thrift.TException {
+ // check for required fields
+ if (computeResourceId == null) {
+ throw new org.apache.thrift.protocol.TProtocolException("Required field 'computeResourceId' was not present! Struct: " + toString());
+ }
+ // alas, we cannot check 'priorityOrder' because it's a primitive and you chose the non-beans generator.
+ if (cloudSubmission == null) {
+ throw new org.apache.thrift.protocol.TProtocolException("Required field 'cloudSubmission' was not present! Struct: " + toString());
+ }
+ // check for sub-struct validity
+ if (cloudSubmission != null) {
+ cloudSubmission.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 {
+ // it doesn't seem like you should have to do this, but java serialization is wacky, and doesn't call the default constructor.
+ __isset_bitfield = 0;
+ 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 addCloudJobSubmissionDetails_argsStandardSchemeFactory implements SchemeFactory {
+ public addCloudJobSubmissionDetails_argsStandardScheme getScheme() {
+ return new addCloudJobSubmissionDetails_argsStandardScheme();
+ }
+ }
+
+ private static class addCloudJobSubmissionDetails_argsStandardScheme extends StandardScheme<addCloudJobSubmissionDetails_args> {
+
+ public void read(org.apache.thrift.protocol.TProtocol iprot, addCloudJobSubmissionDetails_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: // COMPUTE_RESOURCE_ID
+ if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
+ struct.computeResourceId = iprot.readString();
+ struct.setComputeResourceIdIsSet(true);
+ } else {
+ org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+ }
+ break;
+ case 2: // PRIORITY_ORDER
+ if (schemeField.type == org.apache.thrift.protocol.TType.I32) {
+ struct.priorityOrder = iprot.readI32();
+ struct.setPriorityOrderIsSet(true);
+ } else {
+ org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+ }
+ break;
+ case 3: // CLOUD_SUBMISSION
+ if (schemeField.type == org.apache.thrift.protocol.TType.STRUCT) {
+ struct.cloudSubmission = new org.apache.airavata.model.appcatalog.computeresource.CloudJobSubmission();
+ struct.cloudSubmission.read(iprot);
+ struct.setCloudSubmissionIsSet(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
+ if (!struct.isSetPriorityOrder()) {
+ throw new org.apache.thrift.protocol.TProtocolException("Required field 'priorityOrder' was not found in serialized data! Struct: " + toString());
+ }
+ struct.validate();
+ }
+
+ public void write(org.apache.thrift.protocol.TProtocol oprot, addCloudJobSubmissionDetails_args struct) throws org.apache.thrift.TException {
+ struct.validate();
+
+ oprot.writeStructBegin(STRUCT_DESC);
+ if (struct.computeResourceId != null) {
+ oprot.writeFieldBegin(COMPUTE_RESOURCE_ID_FIELD_DESC);
+ oprot.writeString(struct.computeResourceId);
+ oprot.writeFieldEnd();
+ }
+ oprot.writeFieldBegin(PRIORITY_ORDER_FIELD_DESC);
+ oprot.writeI32(struct.priorityOrder);
+ oprot.writeFieldEnd();
+ if (struct.cloudSubmission != null) {
+ oprot.writeFieldBegin(CLOUD_SUBMISSION_FIELD_DESC);
+ struct.cloudSubmission.write(oprot);
+ oprot.writeFieldEnd();
+ }
+ oprot.writeFieldStop();
+ oprot.writeStructEnd();
+ }
+
+ }
+
+ private static class addCloudJobSubmissionDetails_argsTupleSchemeFactory implements SchemeFactory {
+ public addCloudJobSubmissionDetails_argsTupleScheme getScheme() {
+ return new addCloudJobSubmissionDetails_argsTupleScheme();
+ }
+ }
+
+ private static class addCloudJobSubmissionDetails_argsTupleScheme extends TupleScheme<addCloudJobSubmissionDetails_args> {
+
+ @Override
+ public void write(org.apache.thrift.protocol.TProtocol prot, addCloudJobSubmissionDetails_args struct) throws org.apache.thrift.TException {
+ TTupleProtocol oprot = (TTupleProtocol) prot;
+ oprot.writeString(struct.computeResourceId);
+ oprot.writeI32(struct.priorityOrder);
+ struct.cloudSubmission.write(oprot);
+ }
+
+ @Override
+ public void read(org.apache.thrift.protocol.TProtocol prot, addCloudJobSubmissionDetails_args struct) throws org.apache.thrift.TException {
+ TTupleProtocol iprot = (TTupleProtocol) prot;
+ struct.computeResourceId = iprot.readString();
+ struct.setComputeResourceIdIsSet(true);
+ struct.priorityOrder = iprot.readI32();
+ struct.setPriorityOrderIsSet(true);
+ struct.cloudSubmission = new org.apache.airavata.model.appcatalog.computeresource.CloudJobSubmission();
+ struct.cloudSubmission.read(iprot);
+ struct.setCloudSubmissionIsSet(true);
+ }
+ }
+
+ }
+
+ public static class addCloudJobSubmissionDetails_result implements org.apache.thrift.TBase<addCloudJobSubmissionDetails_result, addCloudJobSubmissionDetails_result._Fields>, java.io.Serializable, Cloneable, Comparable<addCloudJobSubmissionDetails_result> {
+ private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("addCloudJobSubmissionDetails_result");
+
+ private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.BOOL, (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 addCloudJobSubmissionDetails_resultStandardSchemeFactory());
+ schemes.put(TupleScheme.class, new addCloudJobSubmissionDetails_resultTupleSchemeFactory());
+ }
+
+ public boolean 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, _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 0: // SUCCESS
+ return SUCCESS;
+ case 1: // IRE
+ return IRE;
+ case 2: // ACE
+ return ACE;
+ case 3: // ASE
+ return ASE;
+ 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
+ private static final int __SUCCESS_ISSET_ID = 0;
+ private byte __isset_bitfield = 0;
+ 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.SUCCESS, new org.apache.thrift.meta_data.FieldMetaData("success", org.apache.thrift.TFieldRequirementType.DEFAULT,
+ new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.BOOL)));
+ tmpMap.put(_Fields.IRE, new org.apache.thrift.meta_data.FieldMetaData("ire", org.apache.thrift.TFieldRequirementType.DEFAULT,
+ new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRUCT)));
+ tmpMap.put(_Fields.ACE, new org.apache.thrift.meta_data.FieldMetaData("ace", org.apache.thrift.TFieldRequirementType.DEFAULT,
+ new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRUCT)));
+ tmpMap.put(_Fields.ASE, new org.apache.thrift.meta_data.FieldMetaData("ase", org.apache.thrift.TFieldRequirementType.DEFAULT,
+ new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRUCT)));
+ metaDataMap = Collections.unmodifiableMap(tmpMap);
+ org.apache.thrift.meta_data.FieldMetaData.addStructMetaDataMap(addCloudJobSubmissionDetails_result.class, metaDataMap);
+ }
+
+ public addCloudJobSubmissionDetails_result() {
+ }
+
+ public addCloudJobSubmissionDetails_result(
+ boolean success,
+ org.apache.airavata.model.error.InvalidRequestException ire,
+ org.apache.airavata.model.error.AiravataClientException ace,
+ org.apache.airavata.model.error.AiravataSystemException ase)
+ {
+ this();
+ this.success = success;
+ setSuccessIsSet(true);
+ this.ire = ire;
+ this.ace = ace;
+ this.ase = ase;
+ }
+
+ /**
+ * Performs a deep copy on <i>other</i>.
+ */
+ public addCloudJobSubmissionDetails_result(addCloudJobSubmissionDetails_result other) {
+ __isset_bitfield = other.__isset_bitfield;
+ this.success = other.success;
+ if (other.isSetIre()) {
+ this.ire = new org.apache.airavata.model.error.InvalidRequestException(other.ire);
+ }
+ if (other.isSetAce()) {
+ this.ace = new org.apache.airavata.model.error.AiravataClientException(other.ace);
+ }
+ if (other.isSetAse()) {
+ this.ase = new org.apache.airavata.model.error.AiravataSystemException(other.ase);
+ }
+ }
+
+ public addCloudJobSubmissionDetails_result deepCopy() {
+ return new addCloudJobSubmissionDetails_result(this);
+ }
+
+ @Override
+ public void clear() {
+ setSuccessIsSet(false);
+ this.success = false;
+ this.ire = null;
+ this.ace = null;
+ this.ase = null;
+ }
+
+ public boolean isSuccess() {
+ return this.success;
+ }
+
+ public addCloudJobSubmissionDetails_result setSuccess(boolean success) {
+ this.success = success;
+ setSuccessIsSet(true);
+ return this;
+ }
+
+ public void unsetSuccess() {
+ __isset_bitfield = EncodingUtils.clearBit(__isset_bitfield, __SUCCESS_ISSET_ID);
+ }
+
+ /** Returns true if field success is set (has been assigned a value) and false otherwise */
+ public boolean isSetSuccess() {
+ return EncodingUtils.testBit(__isset_bitfield, __SUCCESS_ISSET_ID);
+ }
+
+ public void setSuccessIsSet(boolean value) {
+ __isset_bitfield = EncodingUtils.setBit(__isset_bitfield, __SUCCESS_ISSET_ID, value);
+ }
+
+ public org.apache.airavata.model.error.InvalidRequestException getIre() {
+ return this.ire;
+ }
+
+ public addCloudJobSubmissionDetails_result setIre(org.apache.airavata.model.error.InvalidRequestException ire) {
+ this.ire = ire;
+ return this;
+ }
+
+ public void unsetIre() {
+ this.ire = null;
+ }
+
+ /** Returns true if field ire is set (has been assigned a value) and false otherwise */
+ public boolean isSetIre() {
+ return this.ire != null;
+ }
+
+ public void setIreIsSet(boolean value) {
+ if (!value) {
+ this.ire = null;
+ }
+ }
+
+ public org.apache.airavata.model.error.AiravataClientException getAce() {
+ return this.ace;
+ }
+
+ public addCloudJobSubmissionDetails_result setAce(org.apache.airavata.model.error.AiravataClientException ace) {
+ this.ace = ace;
+ return this;
+ }
+
+ public void unsetAce() {
+ this.ace = null;
+ }
+
+ /** Returns true if field ace is set (has been assigned a value) and false otherwise */
+ public boolean isSetAce() {
+ return this.ace != null;
+ }
+
+ public void setAceIsSet(boolean value) {
+ if (!value) {
+ this.ace = null;
+ }
+ }
+
+ public org.apache.airavata.model.error.AiravataSystemException getAse() {
+ return this.ase;
+ }
+
+ public addCloudJobSubmissionDetails_result setAse(org.apache.airavata.model.error.AiravataSystemException ase) {
+ this.ase = ase;
+ return this;
+ }
+
+ public void unsetAse() {
+ this.ase = null;
+ }
+
+ /** Returns true if field ase is set (has been assigned a value) and false otherwise */
+ public boolean isSetAse() {
+ return this.ase != null;
+ }
+
+ public void setAseIsSet(boolean value) {
+ if (!value) {
+ this.ase = null;
+ }
+ }
+
+ public void setFieldValue(_Fields field, Object value) {
+ switch (field) {
+ case SUCCESS:
+ if (value == null) {
+ unsetSuccess();
+ } else {
+ setSuccess((Boolean)value);
+ }
+ break;
+
+ case IRE:
+ if (value == null) {
+ unsetIre();
+ } else {
+ setIre((org.apache.airavata.model.error.InvalidRequestException)value);
+ }
+ break;
+
+ case ACE:
+ if (value == null) {
+ unsetAce();
+ } else {
+ setAce((org.apache.airavata.model.error.AiravataClientException)value);
+ }
+ break;
+
+ case ASE:
+ if (value == null) {
+ unsetAse();
+ } else {
+ setAse((org.apache.airavata.model.error.AiravataSystemException)value);
+ }
+ break;
+
+ }
+ }
+
+ public Object getFieldValue(_Fields field) {
+ switch (field) {
+ case SUCCESS:
+ return Boolean.valueOf(isSuccess());
+
+ case IRE:
+ return getIre();
+
+ case ACE:
+ return getAce();
+
+ case ASE:
+ return getAse();
+
+ }
+ 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 SUCCESS:
+ return isSetSuccess();
+ case IRE:
+ return isSetIre();
+ case ACE:
+ return isSetAce();
+ case ASE:
+ return isSetAse();
+ }
+ throw new IllegalStateException();
+ }
+
+ @Override
+ public boolean equals(Object that) {
+ if (that == null)
+ return false;
+ if (that instanceof addCloudJobSubmissionDetails_result)
+ return this.equals((addCloudJobSubmissionDetails_result)that);
+ return false;
+ }
+
+ public boolean equals(addCloudJobSubmissionDetails_result that) {
+ if (that == null)
+ return false;
+
+ boolean this_present_success = true;
+ boolean that_present_success = true;
+ if (this_present_success || that_present_success) {
+ if (!(this_present_success && that_present_success))
+ return false;
+ if (this.success != that.success)
+ return false;
+ }
+
+ boolean this_present_ire = true && this.isSetIre();
+ boolean that_present_ire = true && that.isSetIre();
+ if (this_present_ire || that_present_ire) {
+ if (!(this_present_ire && that_present_ire))
+ return false;
+ if (!this.ire.equals(that.ire))
+ return false;
+ }
+
+ boolean this_present_ace = true && this.isSetAce();
+ boolean that_present_ace = true && that.isSetAce();
+ if (this_present_ace || that_present_ace) {
+ if (!(this_present_ace && that_present_ace))
+ return false;
+ if (!this.ace.equals(that.ace))
+ return false;
+ }
+
+ boolean this_present_ase = true && this.isSetAse();
+ boolean that_present_ase = true && that.isSetAse();
+ if (this_present_ase || that_present_ase) {
+ if (!(this_present_ase && that_present_ase))
+ return false;
+ if (!this.ase.equals(that.ase))
+ return false;
+ }
+
+ return true;
+ }
+
+ @Override
+ public int hashCode() {
+ return 0;
+ }
+
+ @Override
+ public int compareTo(addCloudJobSubmissionDetails_result other) {
+ if (!getClass().equals(other.getClass())) {
+ return getClass().getName().compareTo(other.getClass().getName());
+ }
+
+ int lastComparison = 0;
+
+ lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+ if (lastComparison != 0) {
+ return lastComparison;
+ }
+ if (isSetSuccess()) {
+ lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+ if (lastComparison != 0) {
+ return lastComparison;
+ }
+ }
+ lastComparison = Boolean.valueOf(isSetIre()).compareTo(other.isSetIre());
+ if (lastComparison != 0) {
+ return lastComparison;
+ }
+ if (isSetIre()) {
+ lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ire, other.ire);
+ if (lastComparison != 0) {
+ return lastComparison;
+ }
+ }
+ lastComparison = Boolean.valueOf(isSetAce()).compareTo(other.isSetAce());
+ if (lastComparison != 0) {
+ return lastComparison;
+ }
+ if (isSetAce()) {
+ lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ace, other.ace);
+ if (lastComparison != 0) {
+ return lastComparison;
+ }
+ }
+ lastComparison = Boolean.valueOf(isSetAse()).compareTo(other.isSetAse());
+ if (lastComparison != 0) {
+ return lastComparison;
+ }
+ if (isSetAse()) {
+ lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ase, other.ase);
+ 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("addCloudJobSubmissionDetails_result(");
+ boolean first = true;
+
+ sb.append("success:");
+ sb.append(this.success);
+ first = false;
+ if (!first) sb.append(", ");
+ sb.append("ire:");
+ if (this.ire == null) {
+ sb.append("null");
+ } else {
+ sb.append(this.ire);
+ }
+ first = false;
+ if (!first) sb.append(", ");
+ sb.append("ace:");
+ if (this.ace == null) {
+ sb.append("null");
+ } else {
+ sb.append(this.ace);
+ }
+ first = false;
+ if (!first) sb.append(", ");
+ sb.append("ase:");
+ if (this.ase == null) {
+ sb.append("null");
+ } else {
+ sb.append(this.ase);
+ }
+ first = false;
+ sb.append(")");
+ return sb.toString();
+ }
+
+ public void validate() throws org.apache.thrift.TException {
+ // check for required fields
+ // check for sub-struct validity
+ }
+
+ 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 {
+ // it doesn't seem like you should have to do this, but java serialization is wacky, and doesn't call the default constructor.
+ __isset_bitfield = 0;
+ 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 addCloudJobSubmissionDetails_resultStandardSchemeFactory implements SchemeFactory {
+ public addCloudJobSubmissionDetails_resultStandardScheme getScheme() {
+ return new addCloudJobSubmissionDetails_resultStandardScheme();
+ }
+ }
+
+ private static class addCloudJobSubmissionDetails_resultStandardScheme extends StandardScheme<addCloudJobSubmissionDetails_result> {
+
+ public void read(org.apache.thrift.protocol.TProtocol iprot, addCloudJobSubmissionDetails_result 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 0: // SUCCESS
+ if (schemeField.type == org.apache.thrift.protocol.TType.BOOL) {
+ struct.success = iprot.readBool();
+ struct.setSuccessIsSet(true);
+ } else {
+ org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+ }
+ break;
+ case 1: // IRE
+ if (schemeField.type == org.apache.thrift.protocol.TType.STRUCT) {
+ struct.ire = new org.apache.airavata.model.error.InvalidRequestException();
+ struct.ire.read(iprot);
+ struct.setIreIsSet(true);
+ } else {
+ org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+ }
+ break;
+ case 2: // ACE
+ if (schemeField.type == org.apache.thrift.protocol.TType.STRUCT) {
+ struct.ace = new org.apache.airavata.model.error.AiravataClientException();
+ struct.ace.read(iprot);
+ struct.setAceIsSet(true);
+ } else {
+ org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+ }
+ break;
+ case 3: // ASE
+ if (schemeField.type == org.apache.thrift.protocol.TType.STRUCT) {
+ struct.ase = new org.apache.airavata.model.error.AiravataSystemException();
+ struct.ase.read(iprot);
+ struct.setAseIsSet(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, addCloudJobSubmissionDetails_result struct) throws org.apache.thrift.TException {
+ struct.validate();
+
+ oprot.writeStructBegin(STRUCT_DESC);
+ if (struct.isSetSuccess()) {
+ oprot.writeFieldBegin(SUCCESS_FIELD_DESC);
+ oprot.writeBool(struct.success);
+ oprot.writeFieldEnd();
+ }
+ if (struct.ire != null) {
+ oprot.writeFieldBegin(IRE_FIELD_DESC);
+ struct.ire.write(oprot);
+ oprot.writeFieldEnd();
+ }
+ if (struct.ace != null) {
+ oprot.writeFieldBegin(ACE_FIELD_DESC);
+ struct.ace.write(oprot);
+ oprot.writeFieldEnd();
+ }
+ if (struct.ase != null) {
+ oprot.writeFieldBegin(ASE_FIELD_DESC);
+ struct.ase.write(oprot);
+ oprot.writeFieldEnd();
+ }
+ oprot.writeFieldStop();
+ oprot.writeStructEnd();
+ }
+
+ }
+
+ private static class addCloudJobSubmissionDetails_resultTupleSchemeFactory implements SchemeFactory {
+ public addCloudJobSubmissionDetails_resultTupleScheme getScheme() {
+ return new addCloudJobSubmissionDetails_resultTupleScheme();
+ }
+ }
+
+ private static class addCloudJobSubmissionDetails_resultTupleScheme extends TupleScheme<addCloudJobSubmissionDetails_result> {
+
+ @Override
+ public void write(org.apache.thrift.protocol.TProtocol prot, addCloudJobSubmissionDetails_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.writeBool(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, addCloudJobSubmissionDetails_result struct) throws org.apache.thrift.TException {
+ TTupleProtocol iprot = (TTupleProtocol) prot;
+ BitSet incoming = iprot.readBitSet(4);
+ if (incoming.get(0)) {
+ struct.success = iprot.readBool();
+ 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 updateSSHJobSubmissionDetails_args implements org.apache.thrift.TBase<updateSSHJobSubmissionDetails_args, updateSSHJobSubmissionDetails_args._Fields>, java.io.Serializable, Cloneable, Comparable<updateSSHJobSubmissionDetails_args> {
private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("updateSSHJobSubmissionDetails_args");
@@ -66487,6 +68073,1114 @@
}
+ public static class updateCloudJobSubmissionDetails_args implements org.apache.thrift.TBase<updateCloudJobSubmissionDetails_args, updateCloudJobSubmissionDetails_args._Fields>, java.io.Serializable, Cloneable, Comparable<updateCloudJobSubmissionDetails_args> {
+ private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("updateCloudJobSubmissionDetails_args");
+
+ private static final org.apache.thrift.protocol.TField JOB_SUBMISSION_INTERFACE_ID_FIELD_DESC = new org.apache.thrift.protocol.TField("jobSubmissionInterfaceId", org.apache.thrift.protocol.TType.STRING, (short)1);
+ private static final org.apache.thrift.protocol.TField SSH_JOB_SUBMISSION_FIELD_DESC = new org.apache.thrift.protocol.TField("sshJobSubmission", org.apache.thrift.protocol.TType.STRUCT, (short)2);
+
+ private static final Map<Class<? extends IScheme>, SchemeFactory> schemes = new HashMap<Class<? extends IScheme>, SchemeFactory>();
+ static {
+ schemes.put(StandardScheme.class, new updateCloudJobSubmissionDetails_argsStandardSchemeFactory());
+ schemes.put(TupleScheme.class, new updateCloudJobSubmissionDetails_argsTupleSchemeFactory());
+ }
+
+ public String jobSubmissionInterfaceId; // required
+ public org.apache.airavata.model.appcatalog.computeresource.CloudJobSubmission sshJobSubmission; // 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 {
+ JOB_SUBMISSION_INTERFACE_ID((short)1, "jobSubmissionInterfaceId"),
+ SSH_JOB_SUBMISSION((short)2, "sshJobSubmission");
+
+ 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: // JOB_SUBMISSION_INTERFACE_ID
+ return JOB_SUBMISSION_INTERFACE_ID;
+ case 2: // SSH_JOB_SUBMISSION
+ return SSH_JOB_SUBMISSION;
+ 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.JOB_SUBMISSION_INTERFACE_ID, new org.apache.thrift.meta_data.FieldMetaData("jobSubmissionInterfaceId", org.apache.thrift.TFieldRequirementType.REQUIRED,
+ new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
+ tmpMap.put(_Fields.SSH_JOB_SUBMISSION, new org.apache.thrift.meta_data.FieldMetaData("sshJobSubmission", org.apache.thrift.TFieldRequirementType.REQUIRED,
+ new org.apache.thrift.meta_data.StructMetaData(org.apache.thrift.protocol.TType.STRUCT, org.apache.airavata.model.appcatalog.computeresource.CloudJobSubmission.class)));
+ metaDataMap = Collections.unmodifiableMap(tmpMap);
+ org.apache.thrift.meta_data.FieldMetaData.addStructMetaDataMap(updateCloudJobSubmissionDetails_args.class, metaDataMap);
+ }
+
+ public updateCloudJobSubmissionDetails_args() {
+ }
+
+ public updateCloudJobSubmissionDetails_args(
+ String jobSubmissionInterfaceId,
+ org.apache.airavata.model.appcatalog.computeresource.CloudJobSubmission sshJobSubmission)
+ {
+ this();
+ this.jobSubmissionInterfaceId = jobSubmissionInterfaceId;
+ this.sshJobSubmission = sshJobSubmission;
+ }
+
+ /**
+ * Performs a deep copy on <i>other</i>.
+ */
+ public updateCloudJobSubmissionDetails_args(updateCloudJobSubmissionDetails_args other) {
+ if (other.isSetJobSubmissionInterfaceId()) {
+ this.jobSubmissionInterfaceId = other.jobSubmissionInterfaceId;
+ }
+ if (other.isSetSshJobSubmission()) {
+ this.sshJobSubmission = new org.apache.airavata.model.appcatalog.computeresource.CloudJobSubmission(other.sshJobSubmission);
+ }
+ }
+
+ public updateCloudJobSubmissionDetails_args deepCopy() {
+ return new updateCloudJobSubmissionDetails_args(this);
+ }
+
+ @Override
+ public void clear() {
+ this.jobSubmissionInterfaceId = null;
+ this.sshJobSubmission = null;
+ }
+
+ public String getJobSubmissionInterfaceId() {
+ return this.jobSubmissionInterfaceId;
+ }
+
+ public updateCloudJobSubmissionDetails_args setJobSubmissionInterfaceId(String jobSubmissionInterfaceId) {
+ this.jobSubmissionInterfaceId = jobSubmissionInterfaceId;
+ return this;
+ }
+
+ public void unsetJobSubmissionInterfaceId() {
+ this.jobSubmissionInterfaceId = null;
+ }
+
+ /** Returns true if field jobSubmissionInterfaceId is set (has been assigned a value) and false otherwise */
+ public boolean isSetJobSubmissionInterfaceId() {
+ return this.jobSubmissionInterfaceId != null;
+ }
+
+ public void setJobSubmissionInterfaceIdIsSet(boolean value) {
+ if (!value) {
+ this.jobSubmissionInterfaceId = null;
+ }
+ }
+
+ public org.apache.airavata.model.appcatalog.computeresource.CloudJobSubmission getSshJobSubmission() {
+ return this.sshJobSubmission;
+ }
+
+ public updateCloudJobSubmissionDetails_args setSshJobSubmission(org.apache.airavata.model.appcatalog.computeresource.CloudJobSubmission sshJobSubmission) {
+ this.sshJobSubmission = sshJobSubmission;
+ return this;
+ }
+
+ public void unsetSshJobSubmission() {
+ this.sshJobSubmission = null;
+ }
+
+ /** Returns true if field sshJobSubmission is set (has been assigned a value) and false otherwise */
+ public boolean isSetSshJobSubmission() {
+ return this.sshJobSubmission != null;
+ }
+
+ public void setSshJobSubmissionIsSet(boolean value) {
+ if (!value) {
+ this.sshJobSubmission = null;
+ }
+ }
+
+ public void setFieldValue(_Fields field, Object value) {
+ switch (field) {
+ case JOB_SUBMISSION_INTERFACE_ID:
+ if (value == null) {
+ unsetJobSubmissionInterfaceId();
+ } else {
+ setJobSubmissionInterfaceId((String)value);
+ }
+ break;
+
+ case SSH_JOB_SUBMISSION:
+ if (value == null) {
+ unsetSshJobSubmission();
+ } else {
+ setSshJobSubmission((org.apache.airavata.model.appcatalog.computeresource.CloudJobSubmission)value);
+ }
+ break;
+
+ }
+ }
+
+ public Object getFieldValue(_Fields field) {
+ switch (field) {
+ case JOB_SUBMISSION_INTERFACE_ID:
+ return getJobSubmissionInterfaceId();
+
+ case SSH_JOB_SUBMISSION:
+ return getSshJobSubmission();
+
+ }
+ 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 JOB_SUBMISSION_INTERFACE_ID:
+ return isSetJobSubmissionInterfaceId();
+ case SSH_JOB_SUBMISSION:
+ return isSetSshJobSubmission();
+ }
+ throw new IllegalStateException();
+ }
+
+ @Override
+ public boolean equals(Object that) {
+ if (that == null)
+ return false;
+ if (that instanceof updateCloudJobSubmissionDetails_args)
+ return this.equals((updateCloudJobSubmissionDetails_args)that);
+ return false;
+ }
+
+ public boolean equals(updateCloudJobSubmissionDetails_args that) {
+ if (that == null)
+ return false;
+
+ boolean this_present_jobSubmissionInterfaceId = true && this.isSetJobSubmissionInterfaceId();
+ boolean that_present_jobSubmissionInterfaceId = true && that.isSetJobSubmissionInterfaceId();
+ if (this_present_jobSubmissionInterfaceId || that_present_jobSubmissionInterfaceId) {
+ if (!(this_present_jobSubmissionInterfaceId && that_present_jobSubmissionInterfaceId))
+ return false;
+ if (!this.jobSubmissionInterfaceId.equals(that.jobSubmissionInterfaceId))
+ return false;
+ }
+
+ boolean this_present_sshJobSubmission = true && this.isSetSshJobSubmission();
+ boolean that_present_sshJobSubmission = true && that.isSetSshJobSubmission();
+ if (this_present_sshJobSubmission || that_present_sshJobSubmission) {
+ if (!(this_present_sshJobSubmission && that_present_sshJobSubmission))
+ return false;
+ if (!this.sshJobSubmission.equals(that.sshJobSubmission))
+ return false;
+ }
+
+ return true;
+ }
+
+ @Override
+ public int hashCode() {
+ return 0;
+ }
+
+ @Override
+ public int compareTo(updateCloudJobSubmissionDetails_args other) {
+ if (!getClass().equals(other.getClass())) {
+ return getClass().getName().compareTo(other.getClass().getName());
+ }
+
+ int lastComparison = 0;
+
+ lastComparison = Boolean.valueOf(isSetJobSubmissionInterfaceId()).compareTo(other.isSetJobSubmissionInterfaceId());
+ if (lastComparison != 0) {
+ return lastComparison;
+ }
+ if (isSetJobSubmissionInterfaceId()) {
+ lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.jobSubmissionInterfaceId, other.jobSubmissionInterfaceId);
+ if (lastComparison != 0) {
+ return lastComparison;
+ }
+ }
+ lastComparison = Boolean.valueOf(isSetSshJobSubmission()).compareTo(other.isSetSshJobSubmission());
+ if (lastComparison != 0) {
+ return lastComparison;
+ }
+ if (isSetSshJobSubmission()) {
+ lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sshJobSubmission, other.sshJobSubmission);
+ 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("updateCloudJobSubmissionDetails_args(");
+ boolean first = true;
+
+ sb.append("jobSubmissionInterfaceId:");
+ if (this.jobSubmissionInterfaceId == null) {
+ sb.append("null");
+ } else {
+ sb.append(this.jobSubmissionInterfaceId);
+ }
+ first = false;
+ if (!first) sb.append(", ");
+ sb.append("sshJobSubmission:");
+ if (this.sshJobSubmission == null) {
+ sb.append("null");
+ } else {
+ sb.append(this.sshJobSubmission);
+ }
+ first = false;
+ sb.append(")");
+ return sb.toString();
+ }
+
+ public void validate() throws org.apache.thrift.TException {
+ // check for required fields
+ if (jobSubmissionInterfaceId == null) {
+ throw new org.apache.thrift.protocol.TProtocolException("Required field 'jobSubmissionInterfaceId' was not present! Struct: " + toString());
+ }
+ if (sshJobSubmission == null) {
+ throw new org.apache.thrift.protocol.TProtocolException("Required field 'sshJobSubmission' was not present! Struct: " + toString());
+ }
+ // check for sub-struct validity
+ if (sshJobSubmission != null) {
+ sshJobSubmission.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 updateCloudJobSubmissionDetails_argsStandardSchemeFactory implements SchemeFactory {
+ public updateCloudJobSubmissionDetails_argsStandardScheme getScheme() {
+ return new updateCloudJobSubmissionDetails_argsStandardScheme();
+ }
+ }
+
+ private static class updateCloudJobSubmissionDetails_argsStandardScheme extends StandardScheme<updateCloudJobSubmissionDetails_args> {
+
+ public void read(org.apache.thrift.protocol.TProtocol iprot, updateCloudJobSubmissionDetails_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: // JOB_SUBMISSION_INTERFACE_ID
+ if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
+ struct.jobSubmissionInterfaceId = iprot.readString();
+ struct.setJobSubmissionInterfaceIdIsSet(true);
+ } else {
+ org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+ }
+ break;
+ case 2: // SSH_JOB_SUBMISSION
+ if (schemeField.type == org.apache.thrift.protocol.TType.STRUCT) {
+ struct.sshJobSubmission = new org.apache.airavata.model.appcatalog.computeresource.CloudJobSubmission();
+ struct.sshJobSubmission.read(iprot);
+ struct.setSshJobSubmissionIsSet(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, updateCloudJobSubmissionDetails_args struct) throws org.apache.thrift.TException {
+ struct.validate();
+
+ oprot.writeStructBegin(STRUCT_DESC);
+ if (struct.jobSubmissionInterfaceId != null) {
+ oprot.writeFieldBegin(JOB_SUBMISSION_INTERFACE_ID_FIELD_DESC);
+ oprot.writeString(struct.jobSubmissionInterfaceId);
+ oprot.writeFieldEnd();
+ }
+ if (struct.sshJobSubmission != null) {
+ oprot.writeFieldBegin(SSH_JOB_SUBMISSION_FIELD_DESC);
+ struct.sshJobSubmission.write(oprot);
+ oprot.writeFieldEnd();
+ }
+ oprot.writeFieldStop();
+ oprot.writeStructEnd();
+ }
+
+ }
+
+ private static class updateCloudJobSubmissionDetails_argsTupleSchemeFactory implements SchemeFactory {
+ public updateCloudJobSubmissionDetails_argsTupleScheme getScheme() {
+ return new updateCloudJobSubmissionDetails_argsTupleScheme();
+ }
+ }
+
+ private static class updateCloudJobSubmissionDetails_argsTupleScheme extends TupleScheme<updateCloudJobSubmissionDetails_args> {
+
+ @Override
+ public void write(org.apache.thrift.protocol.TProtocol prot, updateCloudJobSubmissionDetails_args struct) throws org.apache.thrift.TException {
+ TTupleProtocol oprot = (TTupleProtocol) prot;
+ oprot.writeString(struct.jobSubmissionInterfaceId);
+ struct.sshJobSubmission.write(oprot);
+ }
+
+ @Override
+ public void read(org.apache.thrift.protocol.TProtocol prot, updateCloudJobSubmissionDetails_args struct) throws org.apache.thrift.TException {
+ TTupleProtocol iprot = (TTupleProtocol) prot;
+ struct.jobSubmissionInterfaceId = iprot.readString();
+ struct.setJobSubmissionInterfaceIdIsSet(true);
+ struct.sshJobSubmission = new org.apache.airavata.model.appcatalog.computeresource.CloudJobSubmission();
+ struct.sshJobSubmission.read(iprot);
+ struct.setSshJobSubmissionIsSet(true);
+ }
+ }
+
+ }
+
+ public static class updateCloudJobSubmissionDetails_result implements org.apache.thrift.TBase<updateCloudJobSubmissionDetails_result, updateCloudJobSubmissionDetails_result._Fields>, java.io.Serializable, Cloneable, Comparable<updateCloudJobSubmissionDetails_result> {
+ private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("updateCloudJobSubmissionDetails_result");
+
+ private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.BOOL, (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 updateCloudJobSubmissionDetails_resultStandardSchemeFactory());
+ schemes.put(TupleScheme.class, new updateCloudJobSubmissionDetails_resultTupleSchemeFactory());
+ }
+
+ public boolean 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, _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 0: // SUCCESS
+ return SUCCESS;
+ case 1: // IRE
+ return IRE;
+ case 2: // ACE
+ return ACE;
+ case 3: // ASE
+ return ASE;
+ 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
+ private static final int __SUCCESS_ISSET_ID = 0;
+ private byte __isset_bitfield = 0;
+ 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.SUCCESS, new org.apache.thrift.meta_data.FieldMetaData("success", org.apache.thrift.TFieldRequirementType.DEFAULT,
+ new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.BOOL)));
+ tmpMap.put(_Fields.IRE, new org.apache.thrift.meta_data.FieldMetaData("ire", org.apache.thrift.TFieldRequirementType.DEFAULT,
+ new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRUCT)));
+ tmpMap.put(_Fields.ACE, new org.apache.thrift.meta_data.FieldMetaData("ace", org.apache.thrift.TFieldRequirementType.DEFAULT,
+ new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRUCT)));
+ tmpMap.put(_Fields.ASE, new org.apache.thrift.meta_data.FieldMetaData("ase", org.apache.thrift.TFieldRequirementType.DEFAULT,
+ new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRUCT)));
+ metaDataMap = Collections.unmodifiableMap(tmpMap);
+ org.apache.thrift.meta_data.FieldMetaData.addStructMetaDataMap(updateCloudJobSubmissionDetails_result.class, metaDataMap);
+ }
+
+ public updateCloudJobSubmissionDetails_result() {
+ }
+
+ public updateCloudJobSubmissionDetails_result(
+ boolean success,
+ org.apache.airavata.model.error.InvalidRequestException ire,
+ org.apache.airavata.model.error.AiravataClientException ace,
+ org.apache.airavata.model.error.AiravataSystemException ase)
+ {
+ this();
+ this.success = success;
+ setSuccessIsSet(true);
+ this.ire = ire;
+ this.ace = ace;
+ this.ase = ase;
+ }
+
+ /**
+ * Performs a deep copy on <i>other</i>.
+ */
+ public updateCloudJobSubmissionDetails_result(updateCloudJobSubmissionDetails_result other) {
+ __isset_bitfield = other.__isset_bitfield;
+ this.success = other.success;
+ if (other.isSetIre()) {
+ this.ire = new org.apache.airavata.model.error.InvalidRequestException(other.ire);
+ }
+ if (other.isSetAce()) {
+ this.ace = new org.apache.airavata.model.error.AiravataClientException(other.ace);
+ }
+ if (other.isSetAse()) {
+ this.ase = new org.apache.airavata.model.error.AiravataSystemException(other.ase);
+ }
+ }
+
+ public updateCloudJobSubmissionDetails_result deepCopy() {
+ return new updateCloudJobSubmissionDetails_result(this);
+ }
+
+ @Override
+ public void clear() {
+ setSuccessIsSet(false);
+ this.success = false;
+ this.ire = null;
+ this.ace = null;
+ this.ase = null;
+ }
+
+ public boolean isSuccess() {
+ return this.success;
+ }
+
+ public updateCloudJobSubmissionDetails_result setSuccess(boolean success) {
+ this.success = success;
+ setSuccessIsSet(true);
+ return this;
+ }
+
+ public void unsetSuccess() {
+ __isset_bitfield = EncodingUtils.clearBit(__isset_bitfield, __SUCCESS_ISSET_ID);
+ }
+
+ /** Returns true if field success is set (has been assigned a value) and false otherwise */
+ public boolean isSetSuccess() {
+ return EncodingUtils.testBit(__isset_bitfield, __SUCCESS_ISSET_ID);
+ }
+
+ public void setSuccessIsSet(boolean value) {
+ __isset_bitfield = EncodingUtils.setBit(__isset_bitfield, __SUCCESS_ISSET_ID, value);
+ }
+
+ public org.apache.airavata.model.error.InvalidRequestException getIre() {
+ return this.ire;
+ }
+
+ public updateCloudJobSubmissionDetails_result setIre(org.apache.airavata.model.error.InvalidRequestException ire) {
+ this.ire = ire;
+ return this;
+ }
+
+ public void unsetIre() {
+ this.ire = null;
+ }
+
+ /** Returns true if field ire is set (has been assigned a value) and false otherwise */
+ public boolean isSetIre() {
+ return this.ire != null;
+ }
+
+ public void setIreIsSet(boolean value) {
+ if (!value) {
+ this.ire = null;
+ }
+ }
+
+ public org.apache.airavata.model.error.AiravataClientException getAce() {
+ return this.ace;
+ }
+
+ public updateCloudJobSubmissionDetails_result setAce(org.apache.airavata.model.error.AiravataClientException ace) {
+ this.ace = ace;
+ return this;
+ }
+
+ public void unsetAce() {
+ this.ace = null;
+ }
+
+ /** Returns true if field ace is set (has been assigned a value) and false otherwise */
+ public boolean isSetAce() {
+ return this.ace != null;
+ }
+
+ public void setAceIsSet(boolean value) {
+ if (!value) {
+ this.ace = null;
+ }
+ }
+
+ public org.apache.airavata.model.error.AiravataSystemException getAse() {
+ return this.ase;
+ }
+
+ public updateCloudJobSubmissionDetails_result setAse(org.apache.airavata.model.error.AiravataSystemException ase) {
+ this.ase = ase;
+ return this;
+ }
+
+ public void unsetAse() {
+ this.ase = null;
+ }
+
+ /** Returns true if field ase is set (has been assigned a value) and false otherwise */
+ public boolean isSetAse() {
+ return this.ase != null;
+ }
+
+ public void setAseIsSet(boolean value) {
+ if (!value) {
+ this.ase = null;
+ }
+ }
+
+ public void setFieldValue(_Fields field, Object value) {
+ switch (field) {
+ case SUCCESS:
+ if (value == null) {
+ unsetSuccess();
+ } else {
+ setSuccess((Boolean)value);
+ }
+ break;
+
+ case IRE:
+ if (value == null) {
+ unsetIre();
+ } else {
+ setIre((org.apache.airavata.model.error.InvalidRequestException)value);
+ }
+ break;
+
+ case ACE:
+ if (value == null) {
+ unsetAce();
+ } else {
+ setAce((org.apache.airavata.model.error.AiravataClientException)value);
+ }
+ break;
+
+ case ASE:
+ if (value == null) {
+ unsetAse();
+ } else {
+ setAse((org.apache.airavata.model.error.AiravataSystemException)value);
+ }
+ break;
+
+ }
+ }
+
+ public Object getFieldValue(_Fields field) {
+ switch (field) {
+ case SUCCESS:
+ return Boolean.valueOf(isSuccess());
+
+ case IRE:
+ return getIre();
+
+ case ACE:
+ return getAce();
+
+ case ASE:
+ return getAse();
+
+ }
+ 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 SUCCESS:
+ return isSetSuccess();
+ case IRE:
+ return isSetIre();
+ case ACE:
+ return isSetAce();
+ case ASE:
+ return isSetAse();
+ }
+ throw new IllegalStateException();
+ }
+
+ @Override
+ public boolean equals(Object that) {
+ if (that == null)
+ return false;
+ if (that instanceof updateCloudJobSubmissionDetails_result)
+ return this.equals((updateCloudJobSubmissionDetails_result)that);
+ return false;
+ }
+
+ public boolean equals(updateCloudJobSubmissionDetails_result that) {
+ if (that == null)
+ return false;
+
+ boolean this_present_success = true;
+ boolean that_present_success = true;
+ if (this_present_success || that_present_success) {
+ if (!(this_present_success && that_present_success))
+ return false;
+ if (this.success != that.success)
+ return false;
+ }
+
+ boolean this_present_ire = true && this.isSetIre();
+ boolean that_present_ire = true && that.isSetIre();
+ if (this_present_ire || that_present_ire) {
+ if (!(this_present_ire && that_present_ire))
+ return false;
+ if (!this.ire.equals(that.ire))
+ return false;
+ }
+
+ boolean this_present_ace = true && this.isSetAce();
+ boolean that_present_ace = true && that.isSetAce();
+ if (this_present_ace || that_present_ace) {
+ if (!(this_present_ace && that_present_ace))
+ return false;
+ if (!this.ace.equals(that.ace))
+ return false;
+ }
+
+ boolean this_present_ase = true && this.isSetAse();
+ boolean that_present_ase = true && that.isSetAse();
+ if (this_present_ase || that_present_ase) {
+ if (!(this_present_ase && that_present_ase))
+ return false;
+ if (!this.ase.equals(that.ase))
+ return false;
+ }
+
+ return true;
+ }
+
+ @Override
+ public int hashCode() {
+ return 0;
+ }
+
+ @Override
+ public int compareTo(updateCloudJobSubmissionDetails_result other) {
+ if (!getClass().equals(other.getClass())) {
+ return getClass().getName().compareTo(other.getClass().getName());
+ }
+
+ int lastComparison = 0;
+
+ lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+ if (lastComparison != 0) {
+ return lastComparison;
+ }
+ if (isSetSuccess()) {
+ lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+ if (lastComparison != 0) {
+ return lastComparison;
+ }
+ }
+ lastComparison = Boolean.valueOf(isSetIre()).compareTo(other.isSetIre());
+ if (lastComparison != 0) {
+ return lastComparison;
+ }
+ if (isSetIre()) {
+ lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ire, other.ire);
+ if (lastComparison != 0) {
+ return lastComparison;
+ }
+ }
+ lastComparison = Boolean.valueOf(isSetAce()).compareTo(other.isSetAce());
+ if (lastComparison != 0) {
+ return lastComparison;
+ }
+ if (isSetAce()) {
+ lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ace, other.ace);
+ if (lastComparison != 0) {
+ return lastComparison;
+ }
+ }
+ lastComparison = Boolean.valueOf(isSetAse()).compareTo(other.isSetAse());
+ if (lastComparison != 0) {
+ return lastComparison;
+ }
+ if (isSetAse()) {
+ lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ase, other.ase);
+ 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("updateCloudJobSubmissionDetails_result(");
+ boolean first = true;
+
+ sb.append("success:");
+ sb.append(this.success);
+ first = false;
+ if (!first) sb.append(", ");
+ sb.append("ire:");
+ if (this.ire == null) {
+ sb.append("null");
+ } else {
+ sb.append(this.ire);
+ }
+ first = false;
+ if (!first) sb.append(", ");
+ sb.append("ace:");
+ if (this.ace == null) {
+ sb.append("null");
+ } else {
+ sb.append(this.ace);
+ }
+ first = false;
+ if (!first) sb.append(", ");
+ sb.append("ase:");
+ if (this.ase == null) {
+ sb.append("null");
+ } else {
+ sb.append(this.ase);
+ }
+ first = false;
+ sb.append(")");
+ return sb.toString();
+ }
+
+ public void validate() throws org.apache.thrift.TException {
+ // check for required fields
+ // check for sub-struct validity
+ }
+
+ 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 {
+ // it doesn't seem like you should have to do this, but java serialization is wacky, and doesn't call the default constructor.
+ __isset_bitfield = 0;
+ 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 updateCloudJobSubmissionDetails_resultStandardSchemeFactory implements SchemeFactory {
+ public updateCloudJobSubmissionDetails_resultStandardScheme getScheme() {
+ return new updateCloudJobSubmissionDetails_resultStandardScheme();
+ }
+ }
+
+ private static class updateCloudJobSubmissionDetails_resultStandardScheme extends StandardScheme<updateCloudJobSubmissionDetails_result> {
+
+ public void read(org.apache.thrift.protocol.TProtocol iprot, updateCloudJobSubmissionDetails_result 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 0: // SUCCESS
+ if (schemeField.type == org.apache.thrift.protocol.TType.BOOL) {
+ struct.success = iprot.readBool();
+ struct.setSuccessIsSet(true);
+ } else {
+ org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+ }
+ break;
+ case 1: // IRE
+ if (schemeField.type == org.apache.thrift.protocol.TType.STRUCT) {
+ struct.ire = new org.apache.airavata.model.error.InvalidRequestException();
+ struct.ire.read(iprot);
+ struct.setIreIsSet(true);
+ } else {
+ org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+ }
+ break;
+ case 2: // ACE
+ if (schemeField.type == org.apache.thrift.protocol.TType.STRUCT) {
+ struct.ace = new org.apache.airavata.model.error.AiravataClientException();
+ struct.ace.read(iprot);
+ struct.setAceIsSet(true);
+ } else {
+ org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+ }
+ break;
+ case 3: // ASE
+ if (schemeField.type == org.apache.thrift.protocol.TType.STRUCT) {
+ struct.ase = new org.apache.airavata.model.error.AiravataSystemException();
+ struct.ase.read(iprot);
+ struct.setAseIsSet(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, updateCloudJobSubmissionDetails_result struct) throws org.apache.thrift.TException {
+ struct.validate();
+
+ oprot.writeStructBegin(STRUCT_DESC);
+ if (struct.isSetSuccess()) {
+ oprot.writeFieldBegin(SUCCESS_FIELD_DESC);
+ oprot.writeBool(struct.success);
+ oprot.writeFieldEnd();
+ }
+ if (struct.ire != null) {
+ oprot.writeFieldBegin(IRE_FIELD_DESC);
+ struct.ire.write(oprot);
+ oprot.writeFieldEnd();
+ }
+ if (struct.ace != null) {
+ oprot.writeFieldBegin(ACE_FIELD_DESC);
+ struct.ace.write(oprot);
+ oprot.writeFieldEnd();
+ }
+ if (struct.ase != null) {
+ oprot.writeFieldBegin(ASE_FIELD_DESC);
+ struct.ase.write(oprot);
+ oprot.writeFieldEnd();
+ }
+ oprot.writeFieldStop();
+ oprot.writeStructEnd();
+ }
+
+ }
+
+ private static class updateCloudJobSubmissionDetails_resultTupleSchemeFactory implements SchemeFactory {
+ public updateCloudJobSubmissionDetails_resultTupleScheme getScheme() {
+ return new updateCloudJobSubmissionDetails_resultTupleScheme();
+ }
+ }
+
+ private static class updateCloudJobSubmissionDetails_resultTupleScheme extends TupleScheme<updateCloudJobSubmissionDetails_result> {
+
+ @Override
+ public void write(org.apache.thrift.protocol.TProtocol prot, updateCloudJobSubmissionDetails_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.writeBool(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, updateCloudJobSubmissionDetails_result struct) throws org.apache.thrift.TException {
+ TTupleProtocol iprot = (TTupleProtocol) prot;
+ BitSet incoming = iprot.readBitSet(4);
+ if (incoming.get(0)) {
+ struct.success = iprot.readBool();
+ 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 addLocalDataMovementDetails_args implements org.apache.thrift.TBase<addLocalDataMovementDetails_args, addLocalDataMovementDetails_args._Fields>, java.io.Serializable, Cloneable, Comparable<addLocalDataMovementDetails_args> {
private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("addLocalDataMovementDetails_args");
diff --git a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/Airavata.cpp b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/Airavata.cpp
index fc46eb2..ab65b1e 100644
--- a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/Airavata.cpp
+++ b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/Airavata.cpp
@@ -11960,6 +11960,269 @@
return xfer;
}
+uint32_t Airavata_addCloudJobSubmissionDetails_args::read(::apache::thrift::protocol::TProtocol* iprot) {
+
+ uint32_t xfer = 0;
+ std::string fname;
+ ::apache::thrift::protocol::TType ftype;
+ int16_t fid;
+
+ xfer += iprot->readStructBegin(fname);
+
+ using ::apache::thrift::protocol::TProtocolException;
+
+ bool isset_computeResourceId = false;
+ bool isset_priorityOrder = false;
+ bool isset_cloudSubmission = false;
+
+ while (true)
+ {
+ xfer += iprot->readFieldBegin(fname, ftype, fid);
+ if (ftype == ::apache::thrift::protocol::T_STOP) {
+ break;
+ }
+ switch (fid)
+ {
+ case 1:
+ if (ftype == ::apache::thrift::protocol::T_STRING) {
+ xfer += iprot->readString(this->computeResourceId);
+ isset_computeResourceId = true;
+ } else {
+ xfer += iprot->skip(ftype);
+ }
+ break;
+ case 2:
+ if (ftype == ::apache::thrift::protocol::T_I32) {
+ xfer += iprot->readI32(this->priorityOrder);
+ isset_priorityOrder = true;
+ } else {
+ xfer += iprot->skip(ftype);
+ }
+ break;
+ case 3:
+ if (ftype == ::apache::thrift::protocol::T_STRUCT) {
+ xfer += this->cloudSubmission.read(iprot);
+ isset_cloudSubmission = true;
+ } else {
+ xfer += iprot->skip(ftype);
+ }
+ break;
+ default:
+ xfer += iprot->skip(ftype);
+ break;
+ }
+ xfer += iprot->readFieldEnd();
+ }
+
+ xfer += iprot->readStructEnd();
+
+ if (!isset_computeResourceId)
+ throw TProtocolException(TProtocolException::INVALID_DATA);
+ if (!isset_priorityOrder)
+ throw TProtocolException(TProtocolException::INVALID_DATA);
+ if (!isset_cloudSubmission)
+ throw TProtocolException(TProtocolException::INVALID_DATA);
+ return xfer;
+}
+
+uint32_t Airavata_addCloudJobSubmissionDetails_args::write(::apache::thrift::protocol::TProtocol* oprot) const {
+ uint32_t xfer = 0;
+ xfer += oprot->writeStructBegin("Airavata_addCloudJobSubmissionDetails_args");
+
+ xfer += oprot->writeFieldBegin("computeResourceId", ::apache::thrift::protocol::T_STRING, 1);
+ xfer += oprot->writeString(this->computeResourceId);
+ xfer += oprot->writeFieldEnd();
+
+ xfer += oprot->writeFieldBegin("priorityOrder", ::apache::thrift::protocol::T_I32, 2);
+ xfer += oprot->writeI32(this->priorityOrder);
+ xfer += oprot->writeFieldEnd();
+
+ xfer += oprot->writeFieldBegin("cloudSubmission", ::apache::thrift::protocol::T_STRUCT, 3);
+ xfer += this->cloudSubmission.write(oprot);
+ xfer += oprot->writeFieldEnd();
+
+ xfer += oprot->writeFieldStop();
+ xfer += oprot->writeStructEnd();
+ return xfer;
+}
+
+uint32_t Airavata_addCloudJobSubmissionDetails_pargs::write(::apache::thrift::protocol::TProtocol* oprot) const {
+ uint32_t xfer = 0;
+ xfer += oprot->writeStructBegin("Airavata_addCloudJobSubmissionDetails_pargs");
+
+ xfer += oprot->writeFieldBegin("computeResourceId", ::apache::thrift::protocol::T_STRING, 1);
+ xfer += oprot->writeString((*(this->computeResourceId)));
+ xfer += oprot->writeFieldEnd();
+
+ xfer += oprot->writeFieldBegin("priorityOrder", ::apache::thrift::protocol::T_I32, 2);
+ xfer += oprot->writeI32((*(this->priorityOrder)));
+ xfer += oprot->writeFieldEnd();
+
+ xfer += oprot->writeFieldBegin("cloudSubmission", ::apache::thrift::protocol::T_STRUCT, 3);
+ xfer += (*(this->cloudSubmission)).write(oprot);
+ xfer += oprot->writeFieldEnd();
+
+ xfer += oprot->writeFieldStop();
+ xfer += oprot->writeStructEnd();
+ return xfer;
+}
+
+uint32_t Airavata_addCloudJobSubmissionDetails_result::read(::apache::thrift::protocol::TProtocol* iprot) {
+
+ uint32_t xfer = 0;
+ std::string fname;
+ ::apache::thrift::protocol::TType ftype;
+ int16_t fid;
+
+ xfer += iprot->readStructBegin(fname);
+
+ using ::apache::thrift::protocol::TProtocolException;
+
+
+ while (true)
+ {
+ xfer += iprot->readFieldBegin(fname, ftype, fid);
+ if (ftype == ::apache::thrift::protocol::T_STOP) {
+ break;
+ }
+ switch (fid)
+ {
+ case 0:
+ if (ftype == ::apache::thrift::protocol::T_BOOL) {
+ xfer += iprot->readBool(this->success);
+ this->__isset.success = true;
+ } else {
+ xfer += iprot->skip(ftype);
+ }
+ break;
+ case 1:
+ if (ftype == ::apache::thrift::protocol::T_STRUCT) {
+ xfer += this->ire.read(iprot);
+ this->__isset.ire = true;
+ } else {
+ xfer += iprot->skip(ftype);
+ }
+ break;
+ case 2:
+ if (ftype == ::apache::thrift::protocol::T_STRUCT) {
+ xfer += this->ace.read(iprot);
+ this->__isset.ace = true;
+ } else {
+ xfer += iprot->skip(ftype);
+ }
+ break;
+ case 3:
+ if (ftype == ::apache::thrift::protocol::T_STRUCT) {
+ xfer += this->ase.read(iprot);
+ this->__isset.ase = true;
+ } else {
+ xfer += iprot->skip(ftype);
+ }
+ break;
+ default:
+ xfer += iprot->skip(ftype);
+ break;
+ }
+ xfer += iprot->readFieldEnd();
+ }
+
+ xfer += iprot->readStructEnd();
+
+ return xfer;
+}
+
+uint32_t Airavata_addCloudJobSubmissionDetails_result::write(::apache::thrift::protocol::TProtocol* oprot) const {
+
+ uint32_t xfer = 0;
+
+ xfer += oprot->writeStructBegin("Airavata_addCloudJobSubmissionDetails_result");
+
+ if (this->__isset.success) {
+ xfer += oprot->writeFieldBegin("success", ::apache::thrift::protocol::T_BOOL, 0);
+ xfer += oprot->writeBool(this->success);
+ xfer += oprot->writeFieldEnd();
+ } else if (this->__isset.ire) {
+ xfer += oprot->writeFieldBegin("ire", ::apache::thrift::protocol::T_STRUCT, 1);
+ xfer += this->ire.write(oprot);
+ xfer += oprot->writeFieldEnd();
+ } else if (this->__isset.ace) {
+ xfer += oprot->writeFieldBegin("ace", ::apache::thrift::protocol::T_STRUCT, 2);
+ xfer += this->ace.write(oprot);
+ xfer += oprot->writeFieldEnd();
+ } else if (this->__isset.ase) {
+ xfer += oprot->writeFieldBegin("ase", ::apache::thrift::protocol::T_STRUCT, 3);
+ xfer += this->ase.write(oprot);
+ xfer += oprot->writeFieldEnd();
+ }
+ xfer += oprot->writeFieldStop();
+ xfer += oprot->writeStructEnd();
+ return xfer;
+}
+
+uint32_t Airavata_addCloudJobSubmissionDetails_presult::read(::apache::thrift::protocol::TProtocol* iprot) {
+
+ uint32_t xfer = 0;
+ std::string fname;
+ ::apache::thrift::protocol::TType ftype;
+ int16_t fid;
+
+ xfer += iprot->readStructBegin(fname);
+
+ using ::apache::thrift::protocol::TProtocolException;
+
+
+ while (true)
+ {
+ xfer += iprot->readFieldBegin(fname, ftype, fid);
+ if (ftype == ::apache::thrift::protocol::T_STOP) {
+ break;
+ }
+ switch (fid)
+ {
+ case 0:
+ if (ftype == ::apache::thrift::protocol::T_BOOL) {
+ xfer += iprot->readBool((*(this->success)));
+ this->__isset.success = true;
+ } else {
+ xfer += iprot->skip(ftype);
+ }
+ break;
+ case 1:
+ if (ftype == ::apache::thrift::protocol::T_STRUCT) {
+ xfer += this->ire.read(iprot);
+ this->__isset.ire = true;
+ } else {
+ xfer += iprot->skip(ftype);
+ }
+ break;
+ case 2:
+ if (ftype == ::apache::thrift::protocol::T_STRUCT) {
+ xfer += this->ace.read(iprot);
+ this->__isset.ace = true;
+ } else {
+ xfer += iprot->skip(ftype);
+ }
+ break;
+ case 3:
+ if (ftype == ::apache::thrift::protocol::T_STRUCT) {
+ xfer += this->ase.read(iprot);
+ this->__isset.ase = true;
+ } else {
+ xfer += iprot->skip(ftype);
+ }
+ break;
+ default:
+ xfer += iprot->skip(ftype);
+ break;
+ }
+ xfer += iprot->readFieldEnd();
+ }
+
+ xfer += iprot->readStructEnd();
+
+ return xfer;
+}
+
uint32_t Airavata_updateSSHJobSubmissionDetails_args::read(::apache::thrift::protocol::TProtocol* iprot) {
uint32_t xfer = 0;
@@ -12204,6 +12467,250 @@
return xfer;
}
+uint32_t Airavata_updateCloudJobSubmissionDetails_args::read(::apache::thrift::protocol::TProtocol* iprot) {
+
+ uint32_t xfer = 0;
+ std::string fname;
+ ::apache::thrift::protocol::TType ftype;
+ int16_t fid;
+
+ xfer += iprot->readStructBegin(fname);
+
+ using ::apache::thrift::protocol::TProtocolException;
+
+ bool isset_jobSubmissionInterfaceId = false;
+ bool isset_sshJobSubmission = false;
+
+ while (true)
+ {
+ xfer += iprot->readFieldBegin(fname, ftype, fid);
+ if (ftype == ::apache::thrift::protocol::T_STOP) {
+ break;
+ }
+ switch (fid)
+ {
+ case 1:
+ if (ftype == ::apache::thrift::protocol::T_STRING) {
+ xfer += iprot->readString(this->jobSubmissionInterfaceId);
+ isset_jobSubmissionInterfaceId = true;
+ } else {
+ xfer += iprot->skip(ftype);
+ }
+ break;
+ case 2:
+ if (ftype == ::apache::thrift::protocol::T_STRUCT) {
+ xfer += this->sshJobSubmission.read(iprot);
+ isset_sshJobSubmission = true;
+ } else {
+ xfer += iprot->skip(ftype);
+ }
+ break;
+ default:
+ xfer += iprot->skip(ftype);
+ break;
+ }
+ xfer += iprot->readFieldEnd();
+ }
+
+ xfer += iprot->readStructEnd();
+
+ if (!isset_jobSubmissionInterfaceId)
+ throw TProtocolException(TProtocolException::INVALID_DATA);
+ if (!isset_sshJobSubmission)
+ throw TProtocolException(TProtocolException::INVALID_DATA);
+ return xfer;
+}
+
+uint32_t Airavata_updateCloudJobSubmissionDetails_args::write(::apache::thrift::protocol::TProtocol* oprot) const {
+ uint32_t xfer = 0;
+ xfer += oprot->writeStructBegin("Airavata_updateCloudJobSubmissionDetails_args");
+
+ xfer += oprot->writeFieldBegin("jobSubmissionInterfaceId", ::apache::thrift::protocol::T_STRING, 1);
+ xfer += oprot->writeString(this->jobSubmissionInterfaceId);
+ xfer += oprot->writeFieldEnd();
+
+ xfer += oprot->writeFieldBegin("sshJobSubmission", ::apache::thrift::protocol::T_STRUCT, 2);
+ xfer += this->sshJobSubmission.write(oprot);
+ xfer += oprot->writeFieldEnd();
+
+ xfer += oprot->writeFieldStop();
+ xfer += oprot->writeStructEnd();
+ return xfer;
+}
+
+uint32_t Airavata_updateCloudJobSubmissionDetails_pargs::write(::apache::thrift::protocol::TProtocol* oprot) const {
+ uint32_t xfer = 0;
+ xfer += oprot->writeStructBegin("Airavata_updateCloudJobSubmissionDetails_pargs");
+
+ xfer += oprot->writeFieldBegin("jobSubmissionInterfaceId", ::apache::thrift::protocol::T_STRING, 1);
+ xfer += oprot->writeString((*(this->jobSubmissionInterfaceId)));
+ xfer += oprot->writeFieldEnd();
+
+ xfer += oprot->writeFieldBegin("sshJobSubmission", ::apache::thrift::protocol::T_STRUCT, 2);
+ xfer += (*(this->sshJobSubmission)).write(oprot);
+ xfer += oprot->writeFieldEnd();
+
+ xfer += oprot->writeFieldStop();
+ xfer += oprot->writeStructEnd();
+ return xfer;
+}
+
+uint32_t Airavata_updateCloudJobSubmissionDetails_result::read(::apache::thrift::protocol::TProtocol* iprot) {
+
+ uint32_t xfer = 0;
+ std::string fname;
+ ::apache::thrift::protocol::TType ftype;
+ int16_t fid;
+
+ xfer += iprot->readStructBegin(fname);
+
+ using ::apache::thrift::protocol::TProtocolException;
+
+
+ while (true)
+ {
+ xfer += iprot->readFieldBegin(fname, ftype, fid);
+ if (ftype == ::apache::thrift::protocol::T_STOP) {
+ break;
+ }
+ switch (fid)
+ {
+ case 0:
+ if (ftype == ::apache::thrift::protocol::T_BOOL) {
+ xfer += iprot->readBool(this->success);
+ this->__isset.success = true;
+ } else {
+ xfer += iprot->skip(ftype);
+ }
+ break;
+ case 1:
+ if (ftype == ::apache::thrift::protocol::T_STRUCT) {
+ xfer += this->ire.read(iprot);
+ this->__isset.ire = true;
+ } else {
+ xfer += iprot->skip(ftype);
+ }
+ break;
+ case 2:
+ if (ftype == ::apache::thrift::protocol::T_STRUCT) {
+ xfer += this->ace.read(iprot);
+ this->__isset.ace = true;
+ } else {
+ xfer += iprot->skip(ftype);
+ }
+ break;
+ case 3:
+ if (ftype == ::apache::thrift::protocol::T_STRUCT) {
+ xfer += this->ase.read(iprot);
+ this->__isset.ase = true;
+ } else {
+ xfer += iprot->skip(ftype);
+ }
+ break;
+ default:
+ xfer += iprot->skip(ftype);
+ break;
+ }
+ xfer += iprot->readFieldEnd();
+ }
+
+ xfer += iprot->readStructEnd();
+
+ return xfer;
+}
+
+uint32_t Airavata_updateCloudJobSubmissionDetails_result::write(::apache::thrift::protocol::TProtocol* oprot) const {
+
+ uint32_t xfer = 0;
+
+ xfer += oprot->writeStructBegin("Airavata_updateCloudJobSubmissionDetails_result");
+
+ if (this->__isset.success) {
+ xfer += oprot->writeFieldBegin("success", ::apache::thrift::protocol::T_BOOL, 0);
+ xfer += oprot->writeBool(this->success);
+ xfer += oprot->writeFieldEnd();
+ } else if (this->__isset.ire) {
+ xfer += oprot->writeFieldBegin("ire", ::apache::thrift::protocol::T_STRUCT, 1);
+ xfer += this->ire.write(oprot);
+ xfer += oprot->writeFieldEnd();
+ } else if (this->__isset.ace) {
+ xfer += oprot->writeFieldBegin("ace", ::apache::thrift::protocol::T_STRUCT, 2);
+ xfer += this->ace.write(oprot);
+ xfer += oprot->writeFieldEnd();
+ } else if (this->__isset.ase) {
+ xfer += oprot->writeFieldBegin("ase", ::apache::thrift::protocol::T_STRUCT, 3);
+ xfer += this->ase.write(oprot);
+ xfer += oprot->writeFieldEnd();
+ }
+ xfer += oprot->writeFieldStop();
+ xfer += oprot->writeStructEnd();
+ return xfer;
+}
+
+uint32_t Airavata_updateCloudJobSubmissionDetails_presult::read(::apache::thrift::protocol::TProtocol* iprot) {
+
+ uint32_t xfer = 0;
+ std::string fname;
+ ::apache::thrift::protocol::TType ftype;
+ int16_t fid;
+
+ xfer += iprot->readStructBegin(fname);
+
+ using ::apache::thrift::protocol::TProtocolException;
+
+
+ while (true)
+ {
+ xfer += iprot->readFieldBegin(fname, ftype, fid);
+ if (ftype == ::apache::thrift::protocol::T_STOP) {
+ break;
+ }
+ switch (fid)
+ {
+ case 0:
+ if (ftype == ::apache::thrift::protocol::T_BOOL) {
+ xfer += iprot->readBool((*(this->success)));
+ this->__isset.success = true;
+ } else {
+ xfer += iprot->skip(ftype);
+ }
+ break;
+ case 1:
+ if (ftype == ::apache::thrift::protocol::T_STRUCT) {
+ xfer += this->ire.read(iprot);
+ this->__isset.ire = true;
+ } else {
+ xfer += iprot->skip(ftype);
+ }
+ break;
+ case 2:
+ if (ftype == ::apache::thrift::protocol::T_STRUCT) {
+ xfer += this->ace.read(iprot);
+ this->__isset.ace = true;
+ } else {
+ xfer += iprot->skip(ftype);
+ }
+ break;
+ case 3:
+ if (ftype == ::apache::thrift::protocol::T_STRUCT) {
+ xfer += this->ase.read(iprot);
+ this->__isset.ase = true;
+ } else {
+ xfer += iprot->skip(ftype);
+ }
+ break;
+ default:
+ xfer += iprot->skip(ftype);
+ break;
+ }
+ xfer += iprot->readFieldEnd();
+ }
+
+ xfer += iprot->readStructEnd();
+
+ return xfer;
+}
+
uint32_t Airavata_addLocalDataMovementDetails_args::read(::apache::thrift::protocol::TProtocol* iprot) {
uint32_t xfer = 0;
@@ -20702,6 +21209,75 @@
throw ::apache::thrift::TApplicationException(::apache::thrift::TApplicationException::MISSING_RESULT, "addSSHJobSubmissionDetails failed: unknown result");
}
+bool AiravataClient::addCloudJobSubmissionDetails(const std::string& computeResourceId, const int32_t priorityOrder, const ::apache::airavata::model::appcatalog::computeresource::CloudJobSubmission& cloudSubmission)
+{
+ send_addCloudJobSubmissionDetails(computeResourceId, priorityOrder, cloudSubmission);
+ return recv_addCloudJobSubmissionDetails();
+}
+
+void AiravataClient::send_addCloudJobSubmissionDetails(const std::string& computeResourceId, const int32_t priorityOrder, const ::apache::airavata::model::appcatalog::computeresource::CloudJobSubmission& cloudSubmission)
+{
+ int32_t cseqid = 0;
+ oprot_->writeMessageBegin("addCloudJobSubmissionDetails", ::apache::thrift::protocol::T_CALL, cseqid);
+
+ Airavata_addCloudJobSubmissionDetails_pargs args;
+ args.computeResourceId = &computeResourceId;
+ args.priorityOrder = &priorityOrder;
+ args.cloudSubmission = &cloudSubmission;
+ args.write(oprot_);
+
+ oprot_->writeMessageEnd();
+ oprot_->getTransport()->writeEnd();
+ oprot_->getTransport()->flush();
+}
+
+bool AiravataClient::recv_addCloudJobSubmissionDetails()
+{
+
+ int32_t rseqid = 0;
+ std::string fname;
+ ::apache::thrift::protocol::TMessageType mtype;
+
+ iprot_->readMessageBegin(fname, mtype, rseqid);
+ if (mtype == ::apache::thrift::protocol::T_EXCEPTION) {
+ ::apache::thrift::TApplicationException x;
+ x.read(iprot_);
+ iprot_->readMessageEnd();
+ iprot_->getTransport()->readEnd();
+ throw x;
+ }
+ if (mtype != ::apache::thrift::protocol::T_REPLY) {
+ iprot_->skip(::apache::thrift::protocol::T_STRUCT);
+ iprot_->readMessageEnd();
+ iprot_->getTransport()->readEnd();
+ }
+ if (fname.compare("addCloudJobSubmissionDetails") != 0) {
+ iprot_->skip(::apache::thrift::protocol::T_STRUCT);
+ iprot_->readMessageEnd();
+ iprot_->getTransport()->readEnd();
+ }
+ bool _return;
+ Airavata_addCloudJobSubmissionDetails_presult result;
+ result.success = &_return;
+ result.read(iprot_);
+ iprot_->readMessageEnd();
+ iprot_->getTransport()->readEnd();
+
+ if (result.__isset.success) {
+ return _return;
+ }
+ if (result.__isset.ire) {
+ throw result.ire;
+ }
+ if (result.__isset.ace) {
+ throw result.ace;
+ }
+ if (result.__isset.ase) {
+ throw result.ase;
+ }
+ throw ::apache::thrift::TApplicationException(::apache::thrift::TApplicationException::MISSING_RESULT, "addCloudJobSubmissionDetails failed: unknown result");
+}
+
bool AiravataClient::updateSSHJobSubmissionDetails(const std::string& jobSubmissionInterfaceId, const ::apache::airavata::model::appcatalog::computeresource::SSHJobSubmission& sshJobSubmission)
{
send_updateSSHJobSubmissionDetails(jobSubmissionInterfaceId, sshJobSubmission);
@@ -20770,6 +21346,74 @@
throw ::apache::thrift::TApplicationException(::apache::thrift::TApplicationException::MISSING_RESULT, "updateSSHJobSubmissionDetails failed: unknown result");
}
+bool AiravataClient::updateCloudJobSubmissionDetails(const std::string& jobSubmissionInterfaceId, const ::apache::airavata::model::appcatalog::computeresource::CloudJobSubmission& sshJobSubmission)
+{
+ send_updateCloudJobSubmissionDetails(jobSubmissionInterfaceId, sshJobSubmission);
+ return recv_updateCloudJobSubmissionDetails();
+}
+
+void AiravataClient::send_updateCloudJobSubmissionDetails(const std::string& jobSubmissionInterfaceId, const ::apache::airavata::model::appcatalog::computeresource::CloudJobSubmission& sshJobSubmission)
+{
+ int32_t cseqid = 0;
+ oprot_->writeMessageBegin("updateCloudJobSubmissionDetails", ::apache::thrift::protocol::T_CALL, cseqid);
+
+ Airavata_updateCloudJobSubmissionDetails_pargs args;
+ args.jobSubmissionInterfaceId = &jobSubmissionInterfaceId;
+ args.sshJobSubmission = &sshJobSubmission;
+ args.write(oprot_);
+
+ oprot_->writeMessageEnd();
+ oprot_->getTransport()->writeEnd();
+ oprot_->getTransport()->flush();
+}
+
+bool AiravataClient::recv_updateCloudJobSubmissionDetails()
+{
+
+ int32_t rseqid = 0;
+ std::string fname;
+ ::apache::thrift::protocol::TMessageType mtype;
+
+ iprot_->readMessageBegin(fname, mtype, rseqid);
+ if (mtype == ::apache::thrift::protocol::T_EXCEPTION) {
+ ::apache::thrift::TApplicationException x;
+ x.read(iprot_);
+ iprot_->readMessageEnd();
+ iprot_->getTransport()->readEnd();
+ throw x;
+ }
+ if (mtype != ::apache::thrift::protocol::T_REPLY) {
+ iprot_->skip(::apache::thrift::protocol::T_STRUCT);
+ iprot_->readMessageEnd();
+ iprot_->getTransport()->readEnd();
+ }
+ if (fname.compare("updateCloudJobSubmissionDetails") != 0) {
+ iprot_->skip(::apache::thrift::protocol::T_STRUCT);
+ iprot_->readMessageEnd();
+ iprot_->getTransport()->readEnd();
+ }
+ bool _return;
+ Airavata_updateCloudJobSubmissionDetails_presult result;
+ result.success = &_return;
+ result.read(iprot_);
+ iprot_->readMessageEnd();
+ iprot_->getTransport()->readEnd();
+
+ if (result.__isset.success) {
+ return _return;
+ }
+ if (result.__isset.ire) {
+ throw result.ire;
+ }
+ if (result.__isset.ace) {
+ throw result.ace;
+ }
+ if (result.__isset.ase) {
+ throw result.ase;
+ }
+ throw ::apache::thrift::TApplicationException(::apache::thrift::TApplicationException::MISSING_RESULT, "updateCloudJobSubmissionDetails failed: unknown result");
+}
+
bool AiravataClient::addLocalDataMovementDetails(const std::string& computeResourceId, const int32_t priorityOrder, const ::apache::airavata::model::appcatalog::computeresource::LOCALDataMovement& localDataMovement)
{
send_addLocalDataMovementDetails(computeResourceId, priorityOrder, localDataMovement);
@@ -25355,6 +25999,69 @@
}
}
+void AiravataProcessor::process_addCloudJobSubmissionDetails(int32_t seqid, ::apache::thrift::protocol::TProtocol* iprot, ::apache::thrift::protocol::TProtocol* oprot, void* callContext)
+{
+ void* ctx = NULL;
+ if (this->eventHandler_.get() != NULL) {
+ ctx = this->eventHandler_->getContext("Airavata.addCloudJobSubmissionDetails", callContext);
+ }
+ ::apache::thrift::TProcessorContextFreer freer(this->eventHandler_.get(), ctx, "Airavata.addCloudJobSubmissionDetails");
+
+ if (this->eventHandler_.get() != NULL) {
+ this->eventHandler_->preRead(ctx, "Airavata.addCloudJobSubmissionDetails");
+ }
+
+ Airavata_addCloudJobSubmissionDetails_args args;
+ args.read(iprot);
+ iprot->readMessageEnd();
+ uint32_t bytes = iprot->getTransport()->readEnd();
+
+ if (this->eventHandler_.get() != NULL) {
+ this->eventHandler_->postRead(ctx, "Airavata.addCloudJobSubmissionDetails", bytes);
+ }
+
+ Airavata_addCloudJobSubmissionDetails_result result;
+ try {
+ result.success = iface_->addCloudJobSubmissionDetails(args.computeResourceId, args.priorityOrder, args.cloudSubmission);
+ result.__isset.success = true;
+ } catch ( ::apache::airavata::api::error::InvalidRequestException &ire) {
+ result.ire = ire;
+ result.__isset.ire = true;
+ } catch ( ::apache::airavata::api::error::AiravataClientException &ace) {
+ result.ace = ace;
+ result.__isset.ace = true;
+ } catch ( ::apache::airavata::api::error::AiravataSystemException &ase) {
+ result.ase = ase;
+ result.__isset.ase = true;
+ } catch (const std::exception& e) {
+ if (this->eventHandler_.get() != NULL) {
+ this->eventHandler_->handlerError(ctx, "Airavata.addCloudJobSubmissionDetails");
+ }
+
+ ::apache::thrift::TApplicationException x(e.what());
+ oprot->writeMessageBegin("addCloudJobSubmissionDetails", ::apache::thrift::protocol::T_EXCEPTION, seqid);
+ x.write(oprot);
+ oprot->writeMessageEnd();
+ oprot->getTransport()->writeEnd();
+ oprot->getTransport()->flush();
+ return;
+ }
+
+ if (this->eventHandler_.get() != NULL) {
+ this->eventHandler_->preWrite(ctx, "Airavata.addCloudJobSubmissionDetails");
+ }
+
+ oprot->writeMessageBegin("addCloudJobSubmissionDetails", ::apache::thrift::protocol::T_REPLY, seqid);
+ result.write(oprot);
+ oprot->writeMessageEnd();
+ bytes = oprot->getTransport()->writeEnd();
+ oprot->getTransport()->flush();
+
+ if (this->eventHandler_.get() != NULL) {
+ this->eventHandler_->postWrite(ctx, "Airavata.addCloudJobSubmissionDetails", bytes);
+ }
+}
+
void AiravataProcessor::process_updateSSHJobSubmissionDetails(int32_t seqid, ::apache::thrift::protocol::TProtocol* iprot, ::apache::thrift::protocol::TProtocol* oprot, void* callContext)
{
void* ctx = NULL;
@@ -25418,6 +26125,69 @@
}
}
+void AiravataProcessor::process_updateCloudJobSubmissionDetails(int32_t seqid, ::apache::thrift::protocol::TProtocol* iprot, ::apache::thrift::protocol::TProtocol* oprot, void* callContext)
+{
+ void* ctx = NULL;
+ if (this->eventHandler_.get() != NULL) {
+ ctx = this->eventHandler_->getContext("Airavata.updateCloudJobSubmissionDetails", callContext);
+ }
+ ::apache::thrift::TProcessorContextFreer freer(this->eventHandler_.get(), ctx, "Airavata.updateCloudJobSubmissionDetails");
+
+ if (this->eventHandler_.get() != NULL) {
+ this->eventHandler_->preRead(ctx, "Airavata.updateCloudJobSubmissionDetails");
+ }
+
+ Airavata_updateCloudJobSubmissionDetails_args args;
+ args.read(iprot);
+ iprot->readMessageEnd();
+ uint32_t bytes = iprot->getTransport()->readEnd();
+
+ if (this->eventHandler_.get() != NULL) {
+ this->eventHandler_->postRead(ctx, "Airavata.updateCloudJobSubmissionDetails", bytes);
+ }
+
+ Airavata_updateCloudJobSubmissionDetails_result result;
+ try {
+ result.success = iface_->updateCloudJobSubmissionDetails(args.jobSubmissionInterfaceId, args.sshJobSubmission);
+ result.__isset.success = true;
+ } catch ( ::apache::airavata::api::error::InvalidRequestException &ire) {
+ result.ire = ire;
+ result.__isset.ire = true;
+ } catch ( ::apache::airavata::api::error::AiravataClientException &ace) {
+ result.ace = ace;
+ result.__isset.ace = true;
+ } catch ( ::apache::airavata::api::error::AiravataSystemException &ase) {
+ result.ase = ase;
+ result.__isset.ase = true;
+ } catch (const std::exception& e) {
+ if (this->eventHandler_.get() != NULL) {
+ this->eventHandler_->handlerError(ctx, "Airavata.updateCloudJobSubmissionDetails");
+ }
+
+ ::apache::thrift::TApplicationException x(e.what());
+ oprot->writeMessageBegin("updateCloudJobSubmissionDetails", ::apache::thrift::protocol::T_EXCEPTION, seqid);
+ x.write(oprot);
+ oprot->writeMessageEnd();
+ oprot->getTransport()->writeEnd();
+ oprot->getTransport()->flush();
+ return;
+ }
+
+ if (this->eventHandler_.get() != NULL) {
+ this->eventHandler_->preWrite(ctx, "Airavata.updateCloudJobSubmissionDetails");
+ }
+
+ oprot->writeMessageBegin("updateCloudJobSubmissionDetails", ::apache::thrift::protocol::T_REPLY, seqid);
+ result.write(oprot);
+ oprot->writeMessageEnd();
+ bytes = oprot->getTransport()->writeEnd();
+ oprot->getTransport()->flush();
+
+ if (this->eventHandler_.get() != NULL) {
+ this->eventHandler_->postWrite(ctx, "Airavata.updateCloudJobSubmissionDetails", bytes);
+ }
+}
+
void AiravataProcessor::process_addLocalDataMovementDetails(int32_t seqid, ::apache::thrift::protocol::TProtocol* iprot, ::apache::thrift::protocol::TProtocol* oprot, void* callContext)
{
void* ctx = NULL;
diff --git a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/Airavata.h b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/Airavata.h
index a2fe449..96fc55c 100644
--- a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/Airavata.h
+++ b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/Airavata.h
@@ -82,7 +82,9 @@
virtual bool addLocalSubmissionDetails(const std::string& computeResourceId, const int32_t priorityOrder, const ::apache::airavata::model::appcatalog::computeresource::LOCALSubmission& localSubmission) = 0;
virtual bool updateLocalSubmissionDetails(const std::string& jobSubmissionInterfaceId, const ::apache::airavata::model::appcatalog::computeresource::LOCALSubmission& localSubmission) = 0;
virtual bool addSSHJobSubmissionDetails(const std::string& computeResourceId, const int32_t priorityOrder, const ::apache::airavata::model::appcatalog::computeresource::SSHJobSubmission& sshJobSubmission) = 0;
+ virtual bool addCloudJobSubmissionDetails(const std::string& computeResourceId, const int32_t priorityOrder, const ::apache::airavata::model::appcatalog::computeresource::CloudJobSubmission& cloudSubmission) = 0;
virtual bool updateSSHJobSubmissionDetails(const std::string& jobSubmissionInterfaceId, const ::apache::airavata::model::appcatalog::computeresource::SSHJobSubmission& sshJobSubmission) = 0;
+ virtual bool updateCloudJobSubmissionDetails(const std::string& jobSubmissionInterfaceId, const ::apache::airavata::model::appcatalog::computeresource::CloudJobSubmission& sshJobSubmission) = 0;
virtual bool addLocalDataMovementDetails(const std::string& computeResourceId, const int32_t priorityOrder, const ::apache::airavata::model::appcatalog::computeresource::LOCALDataMovement& localDataMovement) = 0;
virtual bool updateLocalDataMovementDetails(const std::string& jobSubmissionInterfaceId, const ::apache::airavata::model::appcatalog::computeresource::LOCALDataMovement& localDataMovement) = 0;
virtual bool addSCPDataMovementDetails(const std::string& computeResourceId, const int32_t priorityOrder, const ::apache::airavata::model::appcatalog::computeresource::SCPDataMovement& scpDataMovement) = 0;
@@ -295,10 +297,18 @@
bool _return = false;
return _return;
}
+ bool addCloudJobSubmissionDetails(const std::string& /* computeResourceId */, const int32_t /* priorityOrder */, const ::apache::airavata::model::appcatalog::computeresource::CloudJobSubmission& /* cloudSubmission */) {
+ bool _return = false;
+ return _return;
+ }
bool updateSSHJobSubmissionDetails(const std::string& /* jobSubmissionInterfaceId */, const ::apache::airavata::model::appcatalog::computeresource::SSHJobSubmission& /* sshJobSubmission */) {
bool _return = false;
return _return;
}
+ bool updateCloudJobSubmissionDetails(const std::string& /* jobSubmissionInterfaceId */, const ::apache::airavata::model::appcatalog::computeresource::CloudJobSubmission& /* sshJobSubmission */) {
+ bool _return = false;
+ return _return;
+ }
bool addLocalDataMovementDetails(const std::string& /* computeResourceId */, const int32_t /* priorityOrder */, const ::apache::airavata::model::appcatalog::computeresource::LOCALDataMovement& /* localDataMovement */) {
bool _return = false;
return _return;
@@ -7033,6 +7043,154 @@
};
+class Airavata_addCloudJobSubmissionDetails_args {
+ public:
+
+ Airavata_addCloudJobSubmissionDetails_args() : computeResourceId(), priorityOrder(0) {
+ }
+
+ virtual ~Airavata_addCloudJobSubmissionDetails_args() throw() {}
+
+ std::string computeResourceId;
+ int32_t priorityOrder;
+ ::apache::airavata::model::appcatalog::computeresource::CloudJobSubmission cloudSubmission;
+
+ void __set_computeResourceId(const std::string& val) {
+ computeResourceId = val;
+ }
+
+ void __set_priorityOrder(const int32_t val) {
+ priorityOrder = val;
+ }
+
+ void __set_cloudSubmission(const ::apache::airavata::model::appcatalog::computeresource::CloudJobSubmission& val) {
+ cloudSubmission = val;
+ }
+
+ bool operator == (const Airavata_addCloudJobSubmissionDetails_args & rhs) const
+ {
+ if (!(computeResourceId == rhs.computeResourceId))
+ return false;
+ if (!(priorityOrder == rhs.priorityOrder))
+ return false;
+ if (!(cloudSubmission == rhs.cloudSubmission))
+ return false;
+ return true;
+ }
+ bool operator != (const Airavata_addCloudJobSubmissionDetails_args &rhs) const {
+ return !(*this == rhs);
+ }
+
+ bool operator < (const Airavata_addCloudJobSubmissionDetails_args & ) const;
+
+ uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
+ uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;
+
+};
+
+
+class Airavata_addCloudJobSubmissionDetails_pargs {
+ public:
+
+
+ virtual ~Airavata_addCloudJobSubmissionDetails_pargs() throw() {}
+
+ const std::string* computeResourceId;
+ const int32_t* priorityOrder;
+ const ::apache::airavata::model::appcatalog::computeresource::CloudJobSubmission* cloudSubmission;
+
+ uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;
+
+};
+
+typedef struct _Airavata_addCloudJobSubmissionDetails_result__isset {
+ _Airavata_addCloudJobSubmissionDetails_result__isset() : success(false), ire(false), ace(false), ase(false) {}
+ bool success;
+ bool ire;
+ bool ace;
+ bool ase;
+} _Airavata_addCloudJobSubmissionDetails_result__isset;
+
+class Airavata_addCloudJobSubmissionDetails_result {
+ public:
+
+ Airavata_addCloudJobSubmissionDetails_result() : success(0) {
+ }
+
+ virtual ~Airavata_addCloudJobSubmissionDetails_result() throw() {}
+
+ bool success;
+ ::apache::airavata::api::error::InvalidRequestException ire;
+ ::apache::airavata::api::error::AiravataClientException ace;
+ ::apache::airavata::api::error::AiravataSystemException ase;
+
+ _Airavata_addCloudJobSubmissionDetails_result__isset __isset;
+
+ void __set_success(const bool val) {
+ success = val;
+ }
+
+ void __set_ire(const ::apache::airavata::api::error::InvalidRequestException& val) {
+ ire = val;
+ }
+
+ void __set_ace(const ::apache::airavata::api::error::AiravataClientException& val) {
+ ace = val;
+ }
+
+ void __set_ase(const ::apache::airavata::api::error::AiravataSystemException& val) {
+ ase = val;
+ }
+
+ bool operator == (const Airavata_addCloudJobSubmissionDetails_result & rhs) const
+ {
+ if (!(success == rhs.success))
+ return false;
+ if (!(ire == rhs.ire))
+ return false;
+ if (!(ace == rhs.ace))
+ return false;
+ if (!(ase == rhs.ase))
+ return false;
+ return true;
+ }
+ bool operator != (const Airavata_addCloudJobSubmissionDetails_result &rhs) const {
+ return !(*this == rhs);
+ }
+
+ bool operator < (const Airavata_addCloudJobSubmissionDetails_result & ) const;
+
+ uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
+ uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;
+
+};
+
+typedef struct _Airavata_addCloudJobSubmissionDetails_presult__isset {
+ _Airavata_addCloudJobSubmissionDetails_presult__isset() : success(false), ire(false), ace(false), ase(false) {}
+ bool success;
+ bool ire;
+ bool ace;
+ bool ase;
+} _Airavata_addCloudJobSubmissionDetails_presult__isset;
+
+class Airavata_addCloudJobSubmissionDetails_presult {
+ public:
+
+
+ virtual ~Airavata_addCloudJobSubmissionDetails_presult() throw() {}
+
+ bool* success;
+ ::apache::airavata::api::error::InvalidRequestException ire;
+ ::apache::airavata::api::error::AiravataClientException ace;
+ ::apache::airavata::api::error::AiravataSystemException ase;
+
+ _Airavata_addCloudJobSubmissionDetails_presult__isset __isset;
+
+ uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
+
+};
+
+
class Airavata_updateSSHJobSubmissionDetails_args {
public:
@@ -7173,6 +7331,146 @@
};
+class Airavata_updateCloudJobSubmissionDetails_args {
+ public:
+
+ Airavata_updateCloudJobSubmissionDetails_args() : jobSubmissionInterfaceId() {
+ }
+
+ virtual ~Airavata_updateCloudJobSubmissionDetails_args() throw() {}
+
+ std::string jobSubmissionInterfaceId;
+ ::apache::airavata::model::appcatalog::computeresource::CloudJobSubmission sshJobSubmission;
+
+ void __set_jobSubmissionInterfaceId(const std::string& val) {
+ jobSubmissionInterfaceId = val;
+ }
+
+ void __set_sshJobSubmission(const ::apache::airavata::model::appcatalog::computeresource::CloudJobSubmission& val) {
+ sshJobSubmission = val;
+ }
+
+ bool operator == (const Airavata_updateCloudJobSubmissionDetails_args & rhs) const
+ {
+ if (!(jobSubmissionInterfaceId == rhs.jobSubmissionInterfaceId))
+ return false;
+ if (!(sshJobSubmission == rhs.sshJobSubmission))
+ return false;
+ return true;
+ }
+ bool operator != (const Airavata_updateCloudJobSubmissionDetails_args &rhs) const {
+ return !(*this == rhs);
+ }
+
+ bool operator < (const Airavata_updateCloudJobSubmissionDetails_args & ) const;
+
+ uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
+ uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;
+
+};
+
+
+class Airavata_updateCloudJobSubmissionDetails_pargs {
+ public:
+
+
+ virtual ~Airavata_updateCloudJobSubmissionDetails_pargs() throw() {}
+
+ const std::string* jobSubmissionInterfaceId;
+ const ::apache::airavata::model::appcatalog::computeresource::CloudJobSubmission* sshJobSubmission;
+
+ uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;
+
+};
+
+typedef struct _Airavata_updateCloudJobSubmissionDetails_result__isset {
+ _Airavata_updateCloudJobSubmissionDetails_result__isset() : success(false), ire(false), ace(false), ase(false) {}
+ bool success;
+ bool ire;
+ bool ace;
+ bool ase;
+} _Airavata_updateCloudJobSubmissionDetails_result__isset;
+
+class Airavata_updateCloudJobSubmissionDetails_result {
+ public:
+
+ Airavata_updateCloudJobSubmissionDetails_result() : success(0) {
+ }
+
+ virtual ~Airavata_updateCloudJobSubmissionDetails_result() throw() {}
+
+ bool success;
+ ::apache::airavata::api::error::InvalidRequestException ire;
+ ::apache::airavata::api::error::AiravataClientException ace;
+ ::apache::airavata::api::error::AiravataSystemException ase;
+
+ _Airavata_updateCloudJobSubmissionDetails_result__isset __isset;
+
+ void __set_success(const bool val) {
+ success = val;
+ }
+
+ void __set_ire(const ::apache::airavata::api::error::InvalidRequestException& val) {
+ ire = val;
+ }
+
+ void __set_ace(const ::apache::airavata::api::error::AiravataClientException& val) {
+ ace = val;
+ }
+
+ void __set_ase(const ::apache::airavata::api::error::AiravataSystemException& val) {
+ ase = val;
+ }
+
+ bool operator == (const Airavata_updateCloudJobSubmissionDetails_result & rhs) const
+ {
+ if (!(success == rhs.success))
+ return false;
+ if (!(ire == rhs.ire))
+ return false;
+ if (!(ace == rhs.ace))
+ return false;
+ if (!(ase == rhs.ase))
+ return false;
+ return true;
+ }
+ bool operator != (const Airavata_updateCloudJobSubmissionDetails_result &rhs) const {
+ return !(*this == rhs);
+ }
+
+ bool operator < (const Airavata_updateCloudJobSubmissionDetails_result & ) const;
+
+ uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
+ uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;
+
+};
+
+typedef struct _Airavata_updateCloudJobSubmissionDetails_presult__isset {
+ _Airavata_updateCloudJobSubmissionDetails_presult__isset() : success(false), ire(false), ace(false), ase(false) {}
+ bool success;
+ bool ire;
+ bool ace;
+ bool ase;
+} _Airavata_updateCloudJobSubmissionDetails_presult__isset;
+
+class Airavata_updateCloudJobSubmissionDetails_presult {
+ public:
+
+
+ virtual ~Airavata_updateCloudJobSubmissionDetails_presult() throw() {}
+
+ bool* success;
+ ::apache::airavata::api::error::InvalidRequestException ire;
+ ::apache::airavata::api::error::AiravataClientException ace;
+ ::apache::airavata::api::error::AiravataSystemException ase;
+
+ _Airavata_updateCloudJobSubmissionDetails_presult__isset __isset;
+
+ uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
+
+};
+
+
class Airavata_addLocalDataMovementDetails_args {
public:
@@ -10258,9 +10556,15 @@
bool addSSHJobSubmissionDetails(const std::string& computeResourceId, const int32_t priorityOrder, const ::apache::airavata::model::appcatalog::computeresource::SSHJobSubmission& sshJobSubmission);
void send_addSSHJobSubmissionDetails(const std::string& computeResourceId, const int32_t priorityOrder, const ::apache::airavata::model::appcatalog::computeresource::SSHJobSubmission& sshJobSubmission);
bool recv_addSSHJobSubmissionDetails();
+ bool addCloudJobSubmissionDetails(const std::string& computeResourceId, const int32_t priorityOrder, const ::apache::airavata::model::appcatalog::computeresource::CloudJobSubmission& cloudSubmission);
+ void send_addCloudJobSubmissionDetails(const std::string& computeResourceId, const int32_t priorityOrder, const ::apache::airavata::model::appcatalog::computeresource::CloudJobSubmission& cloudSubmission);
+ bool recv_addCloudJobSubmissionDetails();
bool updateSSHJobSubmissionDetails(const std::string& jobSubmissionInterfaceId, const ::apache::airavata::model::appcatalog::computeresource::SSHJobSubmission& sshJobSubmission);
void send_updateSSHJobSubmissionDetails(const std::string& jobSubmissionInterfaceId, const ::apache::airavata::model::appcatalog::computeresource::SSHJobSubmission& sshJobSubmission);
bool recv_updateSSHJobSubmissionDetails();
+ bool updateCloudJobSubmissionDetails(const std::string& jobSubmissionInterfaceId, const ::apache::airavata::model::appcatalog::computeresource::CloudJobSubmission& sshJobSubmission);
+ void send_updateCloudJobSubmissionDetails(const std::string& jobSubmissionInterfaceId, const ::apache::airavata::model::appcatalog::computeresource::CloudJobSubmission& sshJobSubmission);
+ bool recv_updateCloudJobSubmissionDetails();
bool addLocalDataMovementDetails(const std::string& computeResourceId, const int32_t priorityOrder, const ::apache::airavata::model::appcatalog::computeresource::LOCALDataMovement& localDataMovement);
void send_addLocalDataMovementDetails(const std::string& computeResourceId, const int32_t priorityOrder, const ::apache::airavata::model::appcatalog::computeresource::LOCALDataMovement& localDataMovement);
bool recv_addLocalDataMovementDetails();
@@ -10389,7 +10693,9 @@
void process_addLocalSubmissionDetails(int32_t seqid, ::apache::thrift::protocol::TProtocol* iprot, ::apache::thrift::protocol::TProtocol* oprot, void* callContext);
void process_updateLocalSubmissionDetails(int32_t seqid, ::apache::thrift::protocol::TProtocol* iprot, ::apache::thrift::protocol::TProtocol* oprot, void* callContext);
void process_addSSHJobSubmissionDetails(int32_t seqid, ::apache::thrift::protocol::TProtocol* iprot, ::apache::thrift::protocol::TProtocol* oprot, void* callContext);
+ void process_addCloudJobSubmissionDetails(int32_t seqid, ::apache::thrift::protocol::TProtocol* iprot, ::apache::thrift::protocol::TProtocol* oprot, void* callContext);
void process_updateSSHJobSubmissionDetails(int32_t seqid, ::apache::thrift::protocol::TProtocol* iprot, ::apache::thrift::protocol::TProtocol* oprot, void* callContext);
+ void process_updateCloudJobSubmissionDetails(int32_t seqid, ::apache::thrift::protocol::TProtocol* iprot, ::apache::thrift::protocol::TProtocol* oprot, void* callContext);
void process_addLocalDataMovementDetails(int32_t seqid, ::apache::thrift::protocol::TProtocol* iprot, ::apache::thrift::protocol::TProtocol* oprot, void* callContext);
void process_updateLocalDataMovementDetails(int32_t seqid, ::apache::thrift::protocol::TProtocol* iprot, ::apache::thrift::protocol::TProtocol* oprot, void* callContext);
void process_addSCPDataMovementDetails(int32_t seqid, ::apache::thrift::protocol::TProtocol* iprot, ::apache::thrift::protocol::TProtocol* oprot, void* callContext);
@@ -10464,7 +10770,9 @@
processMap_["addLocalSubmissionDetails"] = &AiravataProcessor::process_addLocalSubmissionDetails;
processMap_["updateLocalSubmissionDetails"] = &AiravataProcessor::process_updateLocalSubmissionDetails;
processMap_["addSSHJobSubmissionDetails"] = &AiravataProcessor::process_addSSHJobSubmissionDetails;
+ processMap_["addCloudJobSubmissionDetails"] = &AiravataProcessor::process_addCloudJobSubmissionDetails;
processMap_["updateSSHJobSubmissionDetails"] = &AiravataProcessor::process_updateSSHJobSubmissionDetails;
+ processMap_["updateCloudJobSubmissionDetails"] = &AiravataProcessor::process_updateCloudJobSubmissionDetails;
processMap_["addLocalDataMovementDetails"] = &AiravataProcessor::process_addLocalDataMovementDetails;
processMap_["updateLocalDataMovementDetails"] = &AiravataProcessor::process_updateLocalDataMovementDetails;
processMap_["addSCPDataMovementDetails"] = &AiravataProcessor::process_addSCPDataMovementDetails;
@@ -10996,6 +11304,15 @@
return ifaces_[i]->addSSHJobSubmissionDetails(computeResourceId, priorityOrder, sshJobSubmission);
}
+ bool addCloudJobSubmissionDetails(const std::string& computeResourceId, const int32_t priorityOrder, const ::apache::airavata::model::appcatalog::computeresource::CloudJobSubmission& cloudSubmission) {
+ size_t sz = ifaces_.size();
+ size_t i = 0;
+ for (; i < (sz - 1); ++i) {
+ ifaces_[i]->addCloudJobSubmissionDetails(computeResourceId, priorityOrder, cloudSubmission);
+ }
+ return ifaces_[i]->addCloudJobSubmissionDetails(computeResourceId, priorityOrder, cloudSubmission);
+ }
+
bool updateSSHJobSubmissionDetails(const std::string& jobSubmissionInterfaceId, const ::apache::airavata::model::appcatalog::computeresource::SSHJobSubmission& sshJobSubmission) {
size_t sz = ifaces_.size();
size_t i = 0;
@@ -11005,6 +11322,15 @@
return ifaces_[i]->updateSSHJobSubmissionDetails(jobSubmissionInterfaceId, sshJobSubmission);
}
+ bool updateCloudJobSubmissionDetails(const std::string& jobSubmissionInterfaceId, const ::apache::airavata::model::appcatalog::computeresource::CloudJobSubmission& sshJobSubmission) {
+ size_t sz = ifaces_.size();
+ size_t i = 0;
+ for (; i < (sz - 1); ++i) {
+ ifaces_[i]->updateCloudJobSubmissionDetails(jobSubmissionInterfaceId, sshJobSubmission);
+ }
+ return ifaces_[i]->updateCloudJobSubmissionDetails(jobSubmissionInterfaceId, sshJobSubmission);
+ }
+
bool addLocalDataMovementDetails(const std::string& computeResourceId, const int32_t priorityOrder, const ::apache::airavata::model::appcatalog::computeresource::LOCALDataMovement& localDataMovement) {
size_t sz = ifaces_.size();
size_t i = 0;
diff --git a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/Airavata_server.skeleton.cpp b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/Airavata_server.skeleton.cpp
index 4fe2546..33b598f 100644
--- a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/Airavata_server.skeleton.cpp
+++ b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/Airavata_server.skeleton.cpp
@@ -289,11 +289,21 @@
printf("addSSHJobSubmissionDetails\n");
}
+ bool addCloudJobSubmissionDetails(const std::string& computeResourceId, const int32_t priorityOrder, const ::apache::airavata::model::appcatalog::computeresource::CloudJobSubmission& cloudSubmission) {
+ // Your implementation goes here
+ printf("addCloudJobSubmissionDetails\n");
+ }
+
bool updateSSHJobSubmissionDetails(const std::string& jobSubmissionInterfaceId, const ::apache::airavata::model::appcatalog::computeresource::SSHJobSubmission& sshJobSubmission) {
// Your implementation goes here
printf("updateSSHJobSubmissionDetails\n");
}
+ bool updateCloudJobSubmissionDetails(const std::string& jobSubmissionInterfaceId, const ::apache::airavata::model::appcatalog::computeresource::CloudJobSubmission& sshJobSubmission) {
+ // Your implementation goes here
+ printf("updateCloudJobSubmissionDetails\n");
+ }
+
bool addLocalDataMovementDetails(const std::string& computeResourceId, const int32_t priorityOrder, const ::apache::airavata::model::appcatalog::computeresource::LOCALDataMovement& localDataMovement) {
// Your implementation goes here
printf("addLocalDataMovementDetails\n");
diff --git a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/computeResourceModel_types.cpp b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/computeResourceModel_types.cpp
index a33315c..0f1d50c 100644
--- a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/computeResourceModel_types.cpp
+++ b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/computeResourceModel_types.cpp
@@ -1236,10 +1236,10 @@
swap(a.unicoreEndPointURL, b.unicoreEndPointURL);
}
-const char* CloundJobSubmission::ascii_fingerprint = "F98AE2E6E51F2426504F2566EB71B5CC";
-const uint8_t CloundJobSubmission::binary_fingerprint[16] = {0xF9,0x8A,0xE2,0xE6,0xE5,0x1F,0x24,0x26,0x50,0x4F,0x25,0x66,0xEB,0x71,0xB5,0xCC};
+const char* CloudJobSubmission::ascii_fingerprint = "F98AE2E6E51F2426504F2566EB71B5CC";
+const uint8_t CloudJobSubmission::binary_fingerprint[16] = {0xF9,0x8A,0xE2,0xE6,0xE5,0x1F,0x24,0x26,0x50,0x4F,0x25,0x66,0xEB,0x71,0xB5,0xCC};
-uint32_t CloundJobSubmission::read(::apache::thrift::protocol::TProtocol* iprot) {
+uint32_t CloudJobSubmission::read(::apache::thrift::protocol::TProtocol* iprot) {
uint32_t xfer = 0;
std::string fname;
@@ -1341,9 +1341,9 @@
return xfer;
}
-uint32_t CloundJobSubmission::write(::apache::thrift::protocol::TProtocol* oprot) const {
+uint32_t CloudJobSubmission::write(::apache::thrift::protocol::TProtocol* oprot) const {
uint32_t xfer = 0;
- xfer += oprot->writeStructBegin("CloundJobSubmission");
+ xfer += oprot->writeStructBegin("CloudJobSubmission");
xfer += oprot->writeFieldBegin("jobSubmissionInterfaceId", ::apache::thrift::protocol::T_STRING, 1);
xfer += oprot->writeString(this->jobSubmissionInterfaceId);
@@ -1374,7 +1374,7 @@
return xfer;
}
-void swap(CloundJobSubmission &a, CloundJobSubmission &b) {
+void swap(CloudJobSubmission &a, CloudJobSubmission &b) {
using ::std::swap;
swap(a.jobSubmissionInterfaceId, b.jobSubmissionInterfaceId);
swap(a.securityProtocol, b.securityProtocol);
diff --git a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/computeResourceModel_types.h b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/computeResourceModel_types.h
index 90458d7..81af83f 100644
--- a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/computeResourceModel_types.h
+++ b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/computeResourceModel_types.h
@@ -740,16 +740,16 @@
void swap(UnicoreJobSubmission &a, UnicoreJobSubmission &b);
-class CloundJobSubmission {
+class CloudJobSubmission {
public:
static const char* ascii_fingerprint; // = "F98AE2E6E51F2426504F2566EB71B5CC";
static const uint8_t binary_fingerprint[16]; // = {0xF9,0x8A,0xE2,0xE6,0xE5,0x1F,0x24,0x26,0x50,0x4F,0x25,0x66,0xEB,0x71,0xB5,0xCC};
- CloundJobSubmission() : jobSubmissionInterfaceId("DO_NOT_SET_AT_CLIENTS"), securityProtocol((SecurityProtocol::type)0), nodeId(), executableType(), providerName((ProviderName::type)0), userAccountName() {
+ CloudJobSubmission() : jobSubmissionInterfaceId("DO_NOT_SET_AT_CLIENTS"), securityProtocol((SecurityProtocol::type)0), nodeId(), executableType(), providerName((ProviderName::type)0), userAccountName() {
}
- virtual ~CloundJobSubmission() throw() {}
+ virtual ~CloudJobSubmission() throw() {}
std::string jobSubmissionInterfaceId;
SecurityProtocol::type securityProtocol;
@@ -782,7 +782,7 @@
userAccountName = val;
}
- bool operator == (const CloundJobSubmission & rhs) const
+ bool operator == (const CloudJobSubmission & rhs) const
{
if (!(jobSubmissionInterfaceId == rhs.jobSubmissionInterfaceId))
return false;
@@ -798,18 +798,18 @@
return false;
return true;
}
- bool operator != (const CloundJobSubmission &rhs) const {
+ bool operator != (const CloudJobSubmission &rhs) const {
return !(*this == rhs);
}
- bool operator < (const CloundJobSubmission & ) const;
+ bool operator < (const CloudJobSubmission & ) const;
uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;
};
-void swap(CloundJobSubmission &a, CloundJobSubmission &b);
+void swap(CloudJobSubmission &a, CloudJobSubmission &b);
class JobSubmissionInterface {
diff --git a/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/API/Airavata.php b/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/API/Airavata.php
index 5200e42..8351cea 100644
--- a/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/API/Airavata.php
+++ b/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/API/Airavata.php
@@ -67,7 +67,9 @@
public function addLocalSubmissionDetails($computeResourceId, $priorityOrder, \Airavata\Model\AppCatalog\ComputeResource\LOCALSubmission $localSubmission);
public function updateLocalSubmissionDetails($jobSubmissionInterfaceId, \Airavata\Model\AppCatalog\ComputeResource\LOCALSubmission $localSubmission);
public function addSSHJobSubmissionDetails($computeResourceId, $priorityOrder, \Airavata\Model\AppCatalog\ComputeResource\SSHJobSubmission $sshJobSubmission);
+ public function addCloudJobSubmissionDetails($computeResourceId, $priorityOrder, \Airavata\Model\AppCatalog\ComputeResource\CloudJobSubmission $cloudSubmission);
public function updateSSHJobSubmissionDetails($jobSubmissionInterfaceId, \Airavata\Model\AppCatalog\ComputeResource\SSHJobSubmission $sshJobSubmission);
+ public function updateCloudJobSubmissionDetails($jobSubmissionInterfaceId, \Airavata\Model\AppCatalog\ComputeResource\CloudJobSubmission $sshJobSubmission);
public function addLocalDataMovementDetails($computeResourceId, $priorityOrder, \Airavata\Model\AppCatalog\ComputeResource\LOCALDataMovement $localDataMovement);
public function updateLocalDataMovementDetails($jobSubmissionInterfaceId, \Airavata\Model\AppCatalog\ComputeResource\LOCALDataMovement $localDataMovement);
public function addSCPDataMovementDetails($computeResourceId, $priorityOrder, \Airavata\Model\AppCatalog\ComputeResource\SCPDataMovement $scpDataMovement);
@@ -3097,6 +3099,68 @@
throw new \Exception("addSSHJobSubmissionDetails failed: unknown result");
}
+ public function addCloudJobSubmissionDetails($computeResourceId, $priorityOrder, \Airavata\Model\AppCatalog\ComputeResource\CloudJobSubmission $cloudSubmission)
+ {
+ $this->send_addCloudJobSubmissionDetails($computeResourceId, $priorityOrder, $cloudSubmission);
+ return $this->recv_addCloudJobSubmissionDetails();
+ }
+
+ public function send_addCloudJobSubmissionDetails($computeResourceId, $priorityOrder, \Airavata\Model\AppCatalog\ComputeResource\CloudJobSubmission $cloudSubmission)
+ {
+ $args = new \Airavata\API\Airavata_addCloudJobSubmissionDetails_args();
+ $args->computeResourceId = $computeResourceId;
+ $args->priorityOrder = $priorityOrder;
+ $args->cloudSubmission = $cloudSubmission;
+ $bin_accel = ($this->output_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_write_binary');
+ if ($bin_accel)
+ {
+ thrift_protocol_write_binary($this->output_, 'addCloudJobSubmissionDetails', TMessageType::CALL, $args, $this->seqid_, $this->output_->isStrictWrite());
+ }
+ else
+ {
+ $this->output_->writeMessageBegin('addCloudJobSubmissionDetails', TMessageType::CALL, $this->seqid_);
+ $args->write($this->output_);
+ $this->output_->writeMessageEnd();
+ $this->output_->getTransport()->flush();
+ }
+ }
+
+ public function recv_addCloudJobSubmissionDetails()
+ {
+ $bin_accel = ($this->input_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_read_binary');
+ if ($bin_accel) $result = thrift_protocol_read_binary($this->input_, '\Airavata\API\Airavata_addCloudJobSubmissionDetails_result', $this->input_->isStrictRead());
+ else
+ {
+ $rseqid = 0;
+ $fname = null;
+ $mtype = 0;
+
+ $this->input_->readMessageBegin($fname, $mtype, $rseqid);
+ if ($mtype == TMessageType::EXCEPTION) {
+ $x = new TApplicationException();
+ $x->read($this->input_);
+ $this->input_->readMessageEnd();
+ throw $x;
+ }
+ $result = new \Airavata\API\Airavata_addCloudJobSubmissionDetails_result();
+ $result->read($this->input_);
+ $this->input_->readMessageEnd();
+ }
+ if ($result->success !== null) {
+ 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 \Exception("addCloudJobSubmissionDetails failed: unknown result");
+ }
+
public function updateSSHJobSubmissionDetails($jobSubmissionInterfaceId, \Airavata\Model\AppCatalog\ComputeResource\SSHJobSubmission $sshJobSubmission)
{
$this->send_updateSSHJobSubmissionDetails($jobSubmissionInterfaceId, $sshJobSubmission);
@@ -3158,6 +3222,67 @@
throw new \Exception("updateSSHJobSubmissionDetails failed: unknown result");
}
+ public function updateCloudJobSubmissionDetails($jobSubmissionInterfaceId, \Airavata\Model\AppCatalog\ComputeResource\CloudJobSubmission $sshJobSubmission)
+ {
+ $this->send_updateCloudJobSubmissionDetails($jobSubmissionInterfaceId, $sshJobSubmission);
+ return $this->recv_updateCloudJobSubmissionDetails();
+ }
+
+ public function send_updateCloudJobSubmissionDetails($jobSubmissionInterfaceId, \Airavata\Model\AppCatalog\ComputeResource\CloudJobSubmission $sshJobSubmission)
+ {
+ $args = new \Airavata\API\Airavata_updateCloudJobSubmissionDetails_args();
+ $args->jobSubmissionInterfaceId = $jobSubmissionInterfaceId;
+ $args->sshJobSubmission = $sshJobSubmission;
+ $bin_accel = ($this->output_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_write_binary');
+ if ($bin_accel)
+ {
+ thrift_protocol_write_binary($this->output_, 'updateCloudJobSubmissionDetails', TMessageType::CALL, $args, $this->seqid_, $this->output_->isStrictWrite());
+ }
+ else
+ {
+ $this->output_->writeMessageBegin('updateCloudJobSubmissionDetails', TMessageType::CALL, $this->seqid_);
+ $args->write($this->output_);
+ $this->output_->writeMessageEnd();
+ $this->output_->getTransport()->flush();
+ }
+ }
+
+ public function recv_updateCloudJobSubmissionDetails()
+ {
+ $bin_accel = ($this->input_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_read_binary');
+ if ($bin_accel) $result = thrift_protocol_read_binary($this->input_, '\Airavata\API\Airavata_updateCloudJobSubmissionDetails_result', $this->input_->isStrictRead());
+ else
+ {
+ $rseqid = 0;
+ $fname = null;
+ $mtype = 0;
+
+ $this->input_->readMessageBegin($fname, $mtype, $rseqid);
+ if ($mtype == TMessageType::EXCEPTION) {
+ $x = new TApplicationException();
+ $x->read($this->input_);
+ $this->input_->readMessageEnd();
+ throw $x;
+ }
+ $result = new \Airavata\API\Airavata_updateCloudJobSubmissionDetails_result();
+ $result->read($this->input_);
+ $this->input_->readMessageEnd();
+ }
+ if ($result->success !== null) {
+ 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 \Exception("updateCloudJobSubmissionDetails failed: unknown result");
+ }
+
public function addLocalDataMovementDetails($computeResourceId, $priorityOrder, \Airavata\Model\AppCatalog\ComputeResource\LOCALDataMovement $localDataMovement)
{
$this->send_addLocalDataMovementDetails($computeResourceId, $priorityOrder, $localDataMovement);
@@ -15726,6 +15851,261 @@
}
+class Airavata_addCloudJobSubmissionDetails_args {
+ static $_TSPEC;
+
+ public $computeResourceId = null;
+ public $priorityOrder = null;
+ public $cloudSubmission = null;
+
+ public function __construct($vals=null) {
+ if (!isset(self::$_TSPEC)) {
+ self::$_TSPEC = array(
+ 1 => array(
+ 'var' => 'computeResourceId',
+ 'type' => TType::STRING,
+ ),
+ 2 => array(
+ 'var' => 'priorityOrder',
+ 'type' => TType::I32,
+ ),
+ 3 => array(
+ 'var' => 'cloudSubmission',
+ 'type' => TType::STRUCT,
+ 'class' => '\Airavata\Model\AppCatalog\ComputeResource\CloudJobSubmission',
+ ),
+ );
+ }
+ if (is_array($vals)) {
+ if (isset($vals['computeResourceId'])) {
+ $this->computeResourceId = $vals['computeResourceId'];
+ }
+ if (isset($vals['priorityOrder'])) {
+ $this->priorityOrder = $vals['priorityOrder'];
+ }
+ if (isset($vals['cloudSubmission'])) {
+ $this->cloudSubmission = $vals['cloudSubmission'];
+ }
+ }
+ }
+
+ public function getName() {
+ return 'Airavata_addCloudJobSubmissionDetails_args';
+ }
+
+ public function read($input)
+ {
+ $xfer = 0;
+ $fname = null;
+ $ftype = 0;
+ $fid = 0;
+ $xfer += $input->readStructBegin($fname);
+ while (true)
+ {
+ $xfer += $input->readFieldBegin($fname, $ftype, $fid);
+ if ($ftype == TType::STOP) {
+ break;
+ }
+ switch ($fid)
+ {
+ case 1:
+ if ($ftype == TType::STRING) {
+ $xfer += $input->readString($this->computeResourceId);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ case 2:
+ if ($ftype == TType::I32) {
+ $xfer += $input->readI32($this->priorityOrder);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ case 3:
+ if ($ftype == TType::STRUCT) {
+ $this->cloudSubmission = new \Airavata\Model\AppCatalog\ComputeResource\CloudJobSubmission();
+ $xfer += $this->cloudSubmission->read($input);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ default:
+ $xfer += $input->skip($ftype);
+ break;
+ }
+ $xfer += $input->readFieldEnd();
+ }
+ $xfer += $input->readStructEnd();
+ return $xfer;
+ }
+
+ public function write($output) {
+ $xfer = 0;
+ $xfer += $output->writeStructBegin('Airavata_addCloudJobSubmissionDetails_args');
+ if ($this->computeResourceId !== null) {
+ $xfer += $output->writeFieldBegin('computeResourceId', TType::STRING, 1);
+ $xfer += $output->writeString($this->computeResourceId);
+ $xfer += $output->writeFieldEnd();
+ }
+ if ($this->priorityOrder !== null) {
+ $xfer += $output->writeFieldBegin('priorityOrder', TType::I32, 2);
+ $xfer += $output->writeI32($this->priorityOrder);
+ $xfer += $output->writeFieldEnd();
+ }
+ if ($this->cloudSubmission !== null) {
+ if (!is_object($this->cloudSubmission)) {
+ throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA);
+ }
+ $xfer += $output->writeFieldBegin('cloudSubmission', TType::STRUCT, 3);
+ $xfer += $this->cloudSubmission->write($output);
+ $xfer += $output->writeFieldEnd();
+ }
+ $xfer += $output->writeFieldStop();
+ $xfer += $output->writeStructEnd();
+ return $xfer;
+ }
+
+}
+
+class Airavata_addCloudJobSubmissionDetails_result {
+ static $_TSPEC;
+
+ public $success = null;
+ public $ire = null;
+ public $ace = null;
+ public $ase = null;
+
+ public function __construct($vals=null) {
+ if (!isset(self::$_TSPEC)) {
+ self::$_TSPEC = array(
+ 0 => array(
+ 'var' => 'success',
+ 'type' => TType::BOOL,
+ ),
+ 1 => array(
+ 'var' => 'ire',
+ 'type' => TType::STRUCT,
+ 'class' => '\Airavata\API\Error\InvalidRequestException',
+ ),
+ 2 => array(
+ 'var' => 'ace',
+ 'type' => TType::STRUCT,
+ 'class' => '\Airavata\API\Error\AiravataClientException',
+ ),
+ 3 => array(
+ 'var' => 'ase',
+ 'type' => TType::STRUCT,
+ 'class' => '\Airavata\API\Error\AiravataSystemException',
+ ),
+ );
+ }
+ if (is_array($vals)) {
+ if (isset($vals['success'])) {
+ $this->success = $vals['success'];
+ }
+ if (isset($vals['ire'])) {
+ $this->ire = $vals['ire'];
+ }
+ if (isset($vals['ace'])) {
+ $this->ace = $vals['ace'];
+ }
+ if (isset($vals['ase'])) {
+ $this->ase = $vals['ase'];
+ }
+ }
+ }
+
+ public function getName() {
+ return 'Airavata_addCloudJobSubmissionDetails_result';
+ }
+
+ public function read($input)
+ {
+ $xfer = 0;
+ $fname = null;
+ $ftype = 0;
+ $fid = 0;
+ $xfer += $input->readStructBegin($fname);
+ while (true)
+ {
+ $xfer += $input->readFieldBegin($fname, $ftype, $fid);
+ if ($ftype == TType::STOP) {
+ break;
+ }
+ switch ($fid)
+ {
+ case 0:
+ if ($ftype == TType::BOOL) {
+ $xfer += $input->readBool($this->success);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ case 1:
+ if ($ftype == TType::STRUCT) {
+ $this->ire = new \Airavata\API\Error\InvalidRequestException();
+ $xfer += $this->ire->read($input);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ case 2:
+ if ($ftype == TType::STRUCT) {
+ $this->ace = new \Airavata\API\Error\AiravataClientException();
+ $xfer += $this->ace->read($input);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ case 3:
+ if ($ftype == TType::STRUCT) {
+ $this->ase = new \Airavata\API\Error\AiravataSystemException();
+ $xfer += $this->ase->read($input);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ default:
+ $xfer += $input->skip($ftype);
+ break;
+ }
+ $xfer += $input->readFieldEnd();
+ }
+ $xfer += $input->readStructEnd();
+ return $xfer;
+ }
+
+ public function write($output) {
+ $xfer = 0;
+ $xfer += $output->writeStructBegin('Airavata_addCloudJobSubmissionDetails_result');
+ if ($this->success !== null) {
+ $xfer += $output->writeFieldBegin('success', TType::BOOL, 0);
+ $xfer += $output->writeBool($this->success);
+ $xfer += $output->writeFieldEnd();
+ }
+ if ($this->ire !== null) {
+ $xfer += $output->writeFieldBegin('ire', TType::STRUCT, 1);
+ $xfer += $this->ire->write($output);
+ $xfer += $output->writeFieldEnd();
+ }
+ if ($this->ace !== null) {
+ $xfer += $output->writeFieldBegin('ace', TType::STRUCT, 2);
+ $xfer += $this->ace->write($output);
+ $xfer += $output->writeFieldEnd();
+ }
+ if ($this->ase !== null) {
+ $xfer += $output->writeFieldBegin('ase', TType::STRUCT, 3);
+ $xfer += $this->ase->write($output);
+ $xfer += $output->writeFieldEnd();
+ }
+ $xfer += $output->writeFieldStop();
+ $xfer += $output->writeStructEnd();
+ return $xfer;
+ }
+
+}
+
class Airavata_updateSSHJobSubmissionDetails_args {
static $_TSPEC;
@@ -15961,6 +16341,241 @@
}
+class Airavata_updateCloudJobSubmissionDetails_args {
+ static $_TSPEC;
+
+ public $jobSubmissionInterfaceId = null;
+ public $sshJobSubmission = null;
+
+ public function __construct($vals=null) {
+ if (!isset(self::$_TSPEC)) {
+ self::$_TSPEC = array(
+ 1 => array(
+ 'var' => 'jobSubmissionInterfaceId',
+ 'type' => TType::STRING,
+ ),
+ 2 => array(
+ 'var' => 'sshJobSubmission',
+ 'type' => TType::STRUCT,
+ 'class' => '\Airavata\Model\AppCatalog\ComputeResource\CloudJobSubmission',
+ ),
+ );
+ }
+ if (is_array($vals)) {
+ if (isset($vals['jobSubmissionInterfaceId'])) {
+ $this->jobSubmissionInterfaceId = $vals['jobSubmissionInterfaceId'];
+ }
+ if (isset($vals['sshJobSubmission'])) {
+ $this->sshJobSubmission = $vals['sshJobSubmission'];
+ }
+ }
+ }
+
+ public function getName() {
+ return 'Airavata_updateCloudJobSubmissionDetails_args';
+ }
+
+ public function read($input)
+ {
+ $xfer = 0;
+ $fname = null;
+ $ftype = 0;
+ $fid = 0;
+ $xfer += $input->readStructBegin($fname);
+ while (true)
+ {
+ $xfer += $input->readFieldBegin($fname, $ftype, $fid);
+ if ($ftype == TType::STOP) {
+ break;
+ }
+ switch ($fid)
+ {
+ case 1:
+ if ($ftype == TType::STRING) {
+ $xfer += $input->readString($this->jobSubmissionInterfaceId);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ case 2:
+ if ($ftype == TType::STRUCT) {
+ $this->sshJobSubmission = new \Airavata\Model\AppCatalog\ComputeResource\CloudJobSubmission();
+ $xfer += $this->sshJobSubmission->read($input);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ default:
+ $xfer += $input->skip($ftype);
+ break;
+ }
+ $xfer += $input->readFieldEnd();
+ }
+ $xfer += $input->readStructEnd();
+ return $xfer;
+ }
+
+ public function write($output) {
+ $xfer = 0;
+ $xfer += $output->writeStructBegin('Airavata_updateCloudJobSubmissionDetails_args');
+ if ($this->jobSubmissionInterfaceId !== null) {
+ $xfer += $output->writeFieldBegin('jobSubmissionInterfaceId', TType::STRING, 1);
+ $xfer += $output->writeString($this->jobSubmissionInterfaceId);
+ $xfer += $output->writeFieldEnd();
+ }
+ if ($this->sshJobSubmission !== null) {
+ if (!is_object($this->sshJobSubmission)) {
+ throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA);
+ }
+ $xfer += $output->writeFieldBegin('sshJobSubmission', TType::STRUCT, 2);
+ $xfer += $this->sshJobSubmission->write($output);
+ $xfer += $output->writeFieldEnd();
+ }
+ $xfer += $output->writeFieldStop();
+ $xfer += $output->writeStructEnd();
+ return $xfer;
+ }
+
+}
+
+class Airavata_updateCloudJobSubmissionDetails_result {
+ static $_TSPEC;
+
+ public $success = null;
+ public $ire = null;
+ public $ace = null;
+ public $ase = null;
+
+ public function __construct($vals=null) {
+ if (!isset(self::$_TSPEC)) {
+ self::$_TSPEC = array(
+ 0 => array(
+ 'var' => 'success',
+ 'type' => TType::BOOL,
+ ),
+ 1 => array(
+ 'var' => 'ire',
+ 'type' => TType::STRUCT,
+ 'class' => '\Airavata\API\Error\InvalidRequestException',
+ ),
+ 2 => array(
+ 'var' => 'ace',
+ 'type' => TType::STRUCT,
+ 'class' => '\Airavata\API\Error\AiravataClientException',
+ ),
+ 3 => array(
+ 'var' => 'ase',
+ 'type' => TType::STRUCT,
+ 'class' => '\Airavata\API\Error\AiravataSystemException',
+ ),
+ );
+ }
+ if (is_array($vals)) {
+ if (isset($vals['success'])) {
+ $this->success = $vals['success'];
+ }
+ if (isset($vals['ire'])) {
+ $this->ire = $vals['ire'];
+ }
+ if (isset($vals['ace'])) {
+ $this->ace = $vals['ace'];
+ }
+ if (isset($vals['ase'])) {
+ $this->ase = $vals['ase'];
+ }
+ }
+ }
+
+ public function getName() {
+ return 'Airavata_updateCloudJobSubmissionDetails_result';
+ }
+
+ public function read($input)
+ {
+ $xfer = 0;
+ $fname = null;
+ $ftype = 0;
+ $fid = 0;
+ $xfer += $input->readStructBegin($fname);
+ while (true)
+ {
+ $xfer += $input->readFieldBegin($fname, $ftype, $fid);
+ if ($ftype == TType::STOP) {
+ break;
+ }
+ switch ($fid)
+ {
+ case 0:
+ if ($ftype == TType::BOOL) {
+ $xfer += $input->readBool($this->success);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ case 1:
+ if ($ftype == TType::STRUCT) {
+ $this->ire = new \Airavata\API\Error\InvalidRequestException();
+ $xfer += $this->ire->read($input);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ case 2:
+ if ($ftype == TType::STRUCT) {
+ $this->ace = new \Airavata\API\Error\AiravataClientException();
+ $xfer += $this->ace->read($input);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ case 3:
+ if ($ftype == TType::STRUCT) {
+ $this->ase = new \Airavata\API\Error\AiravataSystemException();
+ $xfer += $this->ase->read($input);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ default:
+ $xfer += $input->skip($ftype);
+ break;
+ }
+ $xfer += $input->readFieldEnd();
+ }
+ $xfer += $input->readStructEnd();
+ return $xfer;
+ }
+
+ public function write($output) {
+ $xfer = 0;
+ $xfer += $output->writeStructBegin('Airavata_updateCloudJobSubmissionDetails_result');
+ if ($this->success !== null) {
+ $xfer += $output->writeFieldBegin('success', TType::BOOL, 0);
+ $xfer += $output->writeBool($this->success);
+ $xfer += $output->writeFieldEnd();
+ }
+ if ($this->ire !== null) {
+ $xfer += $output->writeFieldBegin('ire', TType::STRUCT, 1);
+ $xfer += $this->ire->write($output);
+ $xfer += $output->writeFieldEnd();
+ }
+ if ($this->ace !== null) {
+ $xfer += $output->writeFieldBegin('ace', TType::STRUCT, 2);
+ $xfer += $this->ace->write($output);
+ $xfer += $output->writeFieldEnd();
+ }
+ if ($this->ase !== null) {
+ $xfer += $output->writeFieldBegin('ase', TType::STRUCT, 3);
+ $xfer += $this->ase->write($output);
+ $xfer += $output->writeFieldEnd();
+ }
+ $xfer += $output->writeFieldStop();
+ $xfer += $output->writeStructEnd();
+ return $xfer;
+ }
+
+}
+
class Airavata_addLocalDataMovementDetails_args {
static $_TSPEC;
diff --git a/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/AppCatalog/ComputeResource/Types.php b/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/AppCatalog/ComputeResource/Types.php
index 3cecfe7..7f52308 100644
--- a/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/AppCatalog/ComputeResource/Types.php
+++ b/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/AppCatalog/ComputeResource/Types.php
@@ -1436,7 +1436,7 @@
}
-class CloundJobSubmission {
+class CloudJobSubmission {
static $_TSPEC;
public $jobSubmissionInterfaceId = "DO_NOT_SET_AT_CLIENTS";
@@ -1498,7 +1498,7 @@
}
public function getName() {
- return 'CloundJobSubmission';
+ return 'CloudJobSubmission';
}
public function read($input)
@@ -1570,7 +1570,7 @@
public function write($output) {
$xfer = 0;
- $xfer += $output->writeStructBegin('CloundJobSubmission');
+ $xfer += $output->writeStructBegin('CloudJobSubmission');
if ($this->jobSubmissionInterfaceId !== null) {
$xfer += $output->writeFieldBegin('jobSubmissionInterfaceId', TType::STRING, 1);
$xfer += $output->writeString($this->jobSubmissionInterfaceId);
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/CloudJobSubmission.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/CloudJobSubmission.java
new file mode 100644
index 0000000..3d85a15
--- /dev/null
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/CloudJobSubmission.java
@@ -0,0 +1,908 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * Autogenerated by Thrift Compiler (0.9.1)
+ *
+ * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+ * @generated
+ */
+package org.apache.airavata.model.appcatalog.computeresource;
+
+import org.apache.thrift.scheme.IScheme;
+import org.apache.thrift.scheme.SchemeFactory;
+import org.apache.thrift.scheme.StandardScheme;
+
+import org.apache.thrift.scheme.TupleScheme;
+import org.apache.thrift.protocol.TTupleProtocol;
+import org.apache.thrift.protocol.TProtocolException;
+import org.apache.thrift.EncodingUtils;
+import org.apache.thrift.TException;
+import org.apache.thrift.async.AsyncMethodCallback;
+import org.apache.thrift.server.AbstractNonblockingServer.*;
+import java.util.List;
+import java.util.ArrayList;
+import java.util.Map;
+import java.util.HashMap;
+import java.util.EnumMap;
+import java.util.Set;
+import java.util.HashSet;
+import java.util.EnumSet;
+import java.util.Collections;
+import java.util.BitSet;
+import java.nio.ByteBuffer;
+import java.util.Arrays;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+/**
+ * Cloud Job Submission
+ *
+ *
+ */
+@SuppressWarnings("all") public class CloudJobSubmission implements org.apache.thrift.TBase<CloudJobSubmission, CloudJobSubmission._Fields>, java.io.Serializable, Cloneable, Comparable<CloudJobSubmission> {
+ private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("CloudJobSubmission");
+
+ private static final org.apache.thrift.protocol.TField JOB_SUBMISSION_INTERFACE_ID_FIELD_DESC = new org.apache.thrift.protocol.TField("jobSubmissionInterfaceId", org.apache.thrift.protocol.TType.STRING, (short)1);
+ private static final org.apache.thrift.protocol.TField SECURITY_PROTOCOL_FIELD_DESC = new org.apache.thrift.protocol.TField("securityProtocol", org.apache.thrift.protocol.TType.I32, (short)2);
+ private static final org.apache.thrift.protocol.TField NODE_ID_FIELD_DESC = new org.apache.thrift.protocol.TField("nodeId", org.apache.thrift.protocol.TType.STRING, (short)3);
+ private static final org.apache.thrift.protocol.TField EXECUTABLE_TYPE_FIELD_DESC = new org.apache.thrift.protocol.TField("executableType", org.apache.thrift.protocol.TType.STRING, (short)4);
+ private static final org.apache.thrift.protocol.TField PROVIDER_NAME_FIELD_DESC = new org.apache.thrift.protocol.TField("providerName", org.apache.thrift.protocol.TType.I32, (short)5);
+ private static final org.apache.thrift.protocol.TField USER_ACCOUNT_NAME_FIELD_DESC = new org.apache.thrift.protocol.TField("userAccountName", org.apache.thrift.protocol.TType.STRING, (short)6);
+
+ private static final Map<Class<? extends IScheme>, SchemeFactory> schemes = new HashMap<Class<? extends IScheme>, SchemeFactory>();
+ static {
+ schemes.put(StandardScheme.class, new CloudJobSubmissionStandardSchemeFactory());
+ schemes.put(TupleScheme.class, new CloudJobSubmissionTupleSchemeFactory());
+ }
+
+ private String jobSubmissionInterfaceId; // required
+ private SecurityProtocol securityProtocol; // required
+ private String nodeId; // required
+ private String executableType; // required
+ private ProviderName providerName; // required
+ private String userAccountName; // 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 {
+ JOB_SUBMISSION_INTERFACE_ID((short)1, "jobSubmissionInterfaceId"),
+ /**
+ *
+ * @see SecurityProtocol
+ */
+ SECURITY_PROTOCOL((short)2, "securityProtocol"),
+ NODE_ID((short)3, "nodeId"),
+ EXECUTABLE_TYPE((short)4, "executableType"),
+ /**
+ *
+ * @see ProviderName
+ */
+ PROVIDER_NAME((short)5, "providerName"),
+ USER_ACCOUNT_NAME((short)6, "userAccountName");
+
+ 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: // JOB_SUBMISSION_INTERFACE_ID
+ return JOB_SUBMISSION_INTERFACE_ID;
+ case 2: // SECURITY_PROTOCOL
+ return SECURITY_PROTOCOL;
+ case 3: // NODE_ID
+ return NODE_ID;
+ case 4: // EXECUTABLE_TYPE
+ return EXECUTABLE_TYPE;
+ case 5: // PROVIDER_NAME
+ return PROVIDER_NAME;
+ case 6: // USER_ACCOUNT_NAME
+ return USER_ACCOUNT_NAME;
+ 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.JOB_SUBMISSION_INTERFACE_ID, new org.apache.thrift.meta_data.FieldMetaData("jobSubmissionInterfaceId", org.apache.thrift.TFieldRequirementType.REQUIRED,
+ new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
+ tmpMap.put(_Fields.SECURITY_PROTOCOL, new org.apache.thrift.meta_data.FieldMetaData("securityProtocol", org.apache.thrift.TFieldRequirementType.REQUIRED,
+ new org.apache.thrift.meta_data.EnumMetaData(org.apache.thrift.protocol.TType.ENUM, SecurityProtocol.class)));
+ tmpMap.put(_Fields.NODE_ID, new org.apache.thrift.meta_data.FieldMetaData("nodeId", org.apache.thrift.TFieldRequirementType.REQUIRED,
+ new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
+ tmpMap.put(_Fields.EXECUTABLE_TYPE, new org.apache.thrift.meta_data.FieldMetaData("executableType", org.apache.thrift.TFieldRequirementType.REQUIRED,
+ new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
+ tmpMap.put(_Fields.PROVIDER_NAME, new org.apache.thrift.meta_data.FieldMetaData("providerName", org.apache.thrift.TFieldRequirementType.REQUIRED,
+ new org.apache.thrift.meta_data.EnumMetaData(org.apache.thrift.protocol.TType.ENUM, ProviderName.class)));
+ tmpMap.put(_Fields.USER_ACCOUNT_NAME, new org.apache.thrift.meta_data.FieldMetaData("userAccountName", org.apache.thrift.TFieldRequirementType.REQUIRED,
+ new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
+ metaDataMap = Collections.unmodifiableMap(tmpMap);
+ org.apache.thrift.meta_data.FieldMetaData.addStructMetaDataMap(CloudJobSubmission.class, metaDataMap);
+ }
+
+ public CloudJobSubmission() {
+ this.jobSubmissionInterfaceId = "DO_NOT_SET_AT_CLIENTS";
+
+ }
+
+ public CloudJobSubmission(
+ String jobSubmissionInterfaceId,
+ SecurityProtocol securityProtocol,
+ String nodeId,
+ String executableType,
+ ProviderName providerName,
+ String userAccountName)
+ {
+ this();
+ this.jobSubmissionInterfaceId = jobSubmissionInterfaceId;
+ this.securityProtocol = securityProtocol;
+ this.nodeId = nodeId;
+ this.executableType = executableType;
+ this.providerName = providerName;
+ this.userAccountName = userAccountName;
+ }
+
+ /**
+ * Performs a deep copy on <i>other</i>.
+ */
+ public CloudJobSubmission(CloudJobSubmission other) {
+ if (other.isSetJobSubmissionInterfaceId()) {
+ this.jobSubmissionInterfaceId = other.jobSubmissionInterfaceId;
+ }
+ if (other.isSetSecurityProtocol()) {
+ this.securityProtocol = other.securityProtocol;
+ }
+ if (other.isSetNodeId()) {
+ this.nodeId = other.nodeId;
+ }
+ if (other.isSetExecutableType()) {
+ this.executableType = other.executableType;
+ }
+ if (other.isSetProviderName()) {
+ this.providerName = other.providerName;
+ }
+ if (other.isSetUserAccountName()) {
+ this.userAccountName = other.userAccountName;
+ }
+ }
+
+ public CloudJobSubmission deepCopy() {
+ return new CloudJobSubmission(this);
+ }
+
+ @Override
+ public void clear() {
+ this.jobSubmissionInterfaceId = "DO_NOT_SET_AT_CLIENTS";
+
+ this.securityProtocol = null;
+ this.nodeId = null;
+ this.executableType = null;
+ this.providerName = null;
+ this.userAccountName = null;
+ }
+
+ public String getJobSubmissionInterfaceId() {
+ return this.jobSubmissionInterfaceId;
+ }
+
+ public void setJobSubmissionInterfaceId(String jobSubmissionInterfaceId) {
+ this.jobSubmissionInterfaceId = jobSubmissionInterfaceId;
+ }
+
+ public void unsetJobSubmissionInterfaceId() {
+ this.jobSubmissionInterfaceId = null;
+ }
+
+ /** Returns true if field jobSubmissionInterfaceId is set (has been assigned a value) and false otherwise */
+ public boolean isSetJobSubmissionInterfaceId() {
+ return this.jobSubmissionInterfaceId != null;
+ }
+
+ public void setJobSubmissionInterfaceIdIsSet(boolean value) {
+ if (!value) {
+ this.jobSubmissionInterfaceId = null;
+ }
+ }
+
+ /**
+ *
+ * @see SecurityProtocol
+ */
+ public SecurityProtocol getSecurityProtocol() {
+ return this.securityProtocol;
+ }
+
+ /**
+ *
+ * @see SecurityProtocol
+ */
+ public void setSecurityProtocol(SecurityProtocol securityProtocol) {
+ this.securityProtocol = securityProtocol;
+ }
+
+ public void unsetSecurityProtocol() {
+ this.securityProtocol = null;
+ }
+
+ /** Returns true if field securityProtocol is set (has been assigned a value) and false otherwise */
+ public boolean isSetSecurityProtocol() {
+ return this.securityProtocol != null;
+ }
+
+ public void setSecurityProtocolIsSet(boolean value) {
+ if (!value) {
+ this.securityProtocol = null;
+ }
+ }
+
+ public String getNodeId() {
+ return this.nodeId;
+ }
+
+ public void setNodeId(String nodeId) {
+ this.nodeId = nodeId;
+ }
+
+ public void unsetNodeId() {
+ this.nodeId = null;
+ }
+
+ /** Returns true if field nodeId is set (has been assigned a value) and false otherwise */
+ public boolean isSetNodeId() {
+ return this.nodeId != null;
+ }
+
+ public void setNodeIdIsSet(boolean value) {
+ if (!value) {
+ this.nodeId = null;
+ }
+ }
+
+ public String getExecutableType() {
+ return this.executableType;
+ }
+
+ public void setExecutableType(String executableType) {
+ this.executableType = executableType;
+ }
+
+ public void unsetExecutableType() {
+ this.executableType = null;
+ }
+
+ /** Returns true if field executableType is set (has been assigned a value) and false otherwise */
+ public boolean isSetExecutableType() {
+ return this.executableType != null;
+ }
+
+ public void setExecutableTypeIsSet(boolean value) {
+ if (!value) {
+ this.executableType = null;
+ }
+ }
+
+ /**
+ *
+ * @see ProviderName
+ */
+ public ProviderName getProviderName() {
+ return this.providerName;
+ }
+
+ /**
+ *
+ * @see ProviderName
+ */
+ public void setProviderName(ProviderName providerName) {
+ this.providerName = providerName;
+ }
+
+ public void unsetProviderName() {
+ this.providerName = null;
+ }
+
+ /** Returns true if field providerName is set (has been assigned a value) and false otherwise */
+ public boolean isSetProviderName() {
+ return this.providerName != null;
+ }
+
+ public void setProviderNameIsSet(boolean value) {
+ if (!value) {
+ this.providerName = null;
+ }
+ }
+
+ public String getUserAccountName() {
+ return this.userAccountName;
+ }
+
+ public void setUserAccountName(String userAccountName) {
+ this.userAccountName = userAccountName;
+ }
+
+ public void unsetUserAccountName() {
+ this.userAccountName = null;
+ }
+
+ /** Returns true if field userAccountName is set (has been assigned a value) and false otherwise */
+ public boolean isSetUserAccountName() {
+ return this.userAccountName != null;
+ }
+
+ public void setUserAccountNameIsSet(boolean value) {
+ if (!value) {
+ this.userAccountName = null;
+ }
+ }
+
+ public void setFieldValue(_Fields field, Object value) {
+ switch (field) {
+ case JOB_SUBMISSION_INTERFACE_ID:
+ if (value == null) {
+ unsetJobSubmissionInterfaceId();
+ } else {
+ setJobSubmissionInterfaceId((String)value);
+ }
+ break;
+
+ case SECURITY_PROTOCOL:
+ if (value == null) {
+ unsetSecurityProtocol();
+ } else {
+ setSecurityProtocol((SecurityProtocol)value);
+ }
+ break;
+
+ case NODE_ID:
+ if (value == null) {
+ unsetNodeId();
+ } else {
+ setNodeId((String)value);
+ }
+ break;
+
+ case EXECUTABLE_TYPE:
+ if (value == null) {
+ unsetExecutableType();
+ } else {
+ setExecutableType((String)value);
+ }
+ break;
+
+ case PROVIDER_NAME:
+ if (value == null) {
+ unsetProviderName();
+ } else {
+ setProviderName((ProviderName)value);
+ }
+ break;
+
+ case USER_ACCOUNT_NAME:
+ if (value == null) {
+ unsetUserAccountName();
+ } else {
+ setUserAccountName((String)value);
+ }
+ break;
+
+ }
+ }
+
+ public Object getFieldValue(_Fields field) {
+ switch (field) {
+ case JOB_SUBMISSION_INTERFACE_ID:
+ return getJobSubmissionInterfaceId();
+
+ case SECURITY_PROTOCOL:
+ return getSecurityProtocol();
+
+ case NODE_ID:
+ return getNodeId();
+
+ case EXECUTABLE_TYPE:
+ return getExecutableType();
+
+ case PROVIDER_NAME:
+ return getProviderName();
+
+ case USER_ACCOUNT_NAME:
+ return getUserAccountName();
+
+ }
+ 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 JOB_SUBMISSION_INTERFACE_ID:
+ return isSetJobSubmissionInterfaceId();
+ case SECURITY_PROTOCOL:
+ return isSetSecurityProtocol();
+ case NODE_ID:
+ return isSetNodeId();
+ case EXECUTABLE_TYPE:
+ return isSetExecutableType();
+ case PROVIDER_NAME:
+ return isSetProviderName();
+ case USER_ACCOUNT_NAME:
+ return isSetUserAccountName();
+ }
+ throw new IllegalStateException();
+ }
+
+ @Override
+ public boolean equals(Object that) {
+ if (that == null)
+ return false;
+ if (that instanceof CloudJobSubmission)
+ return this.equals((CloudJobSubmission)that);
+ return false;
+ }
+
+ public boolean equals(CloudJobSubmission that) {
+ if (that == null)
+ return false;
+
+ boolean this_present_jobSubmissionInterfaceId = true && this.isSetJobSubmissionInterfaceId();
+ boolean that_present_jobSubmissionInterfaceId = true && that.isSetJobSubmissionInterfaceId();
+ if (this_present_jobSubmissionInterfaceId || that_present_jobSubmissionInterfaceId) {
+ if (!(this_present_jobSubmissionInterfaceId && that_present_jobSubmissionInterfaceId))
+ return false;
+ if (!this.jobSubmissionInterfaceId.equals(that.jobSubmissionInterfaceId))
+ return false;
+ }
+
+ boolean this_present_securityProtocol = true && this.isSetSecurityProtocol();
+ boolean that_present_securityProtocol = true && that.isSetSecurityProtocol();
+ if (this_present_securityProtocol || that_present_securityProtocol) {
+ if (!(this_present_securityProtocol && that_present_securityProtocol))
+ return false;
+ if (!this.securityProtocol.equals(that.securityProtocol))
+ return false;
+ }
+
+ boolean this_present_nodeId = true && this.isSetNodeId();
+ boolean that_present_nodeId = true && that.isSetNodeId();
+ if (this_present_nodeId || that_present_nodeId) {
+ if (!(this_present_nodeId && that_present_nodeId))
+ return false;
+ if (!this.nodeId.equals(that.nodeId))
+ return false;
+ }
+
+ boolean this_present_executableType = true && this.isSetExecutableType();
+ boolean that_present_executableType = true && that.isSetExecutableType();
+ if (this_present_executableType || that_present_executableType) {
+ if (!(this_present_executableType && that_present_executableType))
+ return false;
+ if (!this.executableType.equals(that.executableType))
+ return false;
+ }
+
+ boolean this_present_providerName = true && this.isSetProviderName();
+ boolean that_present_providerName = true && that.isSetProviderName();
+ if (this_present_providerName || that_present_providerName) {
+ if (!(this_present_providerName && that_present_providerName))
+ return false;
+ if (!this.providerName.equals(that.providerName))
+ return false;
+ }
+
+ boolean this_present_userAccountName = true && this.isSetUserAccountName();
+ boolean that_present_userAccountName = true && that.isSetUserAccountName();
+ if (this_present_userAccountName || that_present_userAccountName) {
+ if (!(this_present_userAccountName && that_present_userAccountName))
+ return false;
+ if (!this.userAccountName.equals(that.userAccountName))
+ return false;
+ }
+
+ return true;
+ }
+
+ @Override
+ public int hashCode() {
+ return 0;
+ }
+
+ @Override
+ public int compareTo(CloudJobSubmission other) {
+ if (!getClass().equals(other.getClass())) {
+ return getClass().getName().compareTo(other.getClass().getName());
+ }
+
+ int lastComparison = 0;
+
+ lastComparison = Boolean.valueOf(isSetJobSubmissionInterfaceId()).compareTo(other.isSetJobSubmissionInterfaceId());
+ if (lastComparison != 0) {
+ return lastComparison;
+ }
+ if (isSetJobSubmissionInterfaceId()) {
+ lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.jobSubmissionInterfaceId, other.jobSubmissionInterfaceId);
+ if (lastComparison != 0) {
+ return lastComparison;
+ }
+ }
+ lastComparison = Boolean.valueOf(isSetSecurityProtocol()).compareTo(other.isSetSecurityProtocol());
+ if (lastComparison != 0) {
+ return lastComparison;
+ }
+ if (isSetSecurityProtocol()) {
+ lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.securityProtocol, other.securityProtocol);
+ if (lastComparison != 0) {
+ return lastComparison;
+ }
+ }
+ lastComparison = Boolean.valueOf(isSetNodeId()).compareTo(other.isSetNodeId());
+ if (lastComparison != 0) {
+ return lastComparison;
+ }
+ if (isSetNodeId()) {
+ lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.nodeId, other.nodeId);
+ if (lastComparison != 0) {
+ return lastComparison;
+ }
+ }
+ lastComparison = Boolean.valueOf(isSetExecutableType()).compareTo(other.isSetExecutableType());
+ if (lastComparison != 0) {
+ return lastComparison;
+ }
+ if (isSetExecutableType()) {
+ lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.executableType, other.executableType);
+ if (lastComparison != 0) {
+ return lastComparison;
+ }
+ }
+ lastComparison = Boolean.valueOf(isSetProviderName()).compareTo(other.isSetProviderName());
+ if (lastComparison != 0) {
+ return lastComparison;
+ }
+ if (isSetProviderName()) {
+ lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.providerName, other.providerName);
+ if (lastComparison != 0) {
+ return lastComparison;
+ }
+ }
+ lastComparison = Boolean.valueOf(isSetUserAccountName()).compareTo(other.isSetUserAccountName());
+ if (lastComparison != 0) {
+ return lastComparison;
+ }
+ if (isSetUserAccountName()) {
+ lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.userAccountName, other.userAccountName);
+ 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("CloudJobSubmission(");
+ boolean first = true;
+
+ sb.append("jobSubmissionInterfaceId:");
+ if (this.jobSubmissionInterfaceId == null) {
+ sb.append("null");
+ } else {
+ sb.append(this.jobSubmissionInterfaceId);
+ }
+ first = false;
+ if (!first) sb.append(", ");
+ sb.append("securityProtocol:");
+ if (this.securityProtocol == null) {
+ sb.append("null");
+ } else {
+ sb.append(this.securityProtocol);
+ }
+ first = false;
+ if (!first) sb.append(", ");
+ sb.append("nodeId:");
+ if (this.nodeId == null) {
+ sb.append("null");
+ } else {
+ sb.append(this.nodeId);
+ }
+ first = false;
+ if (!first) sb.append(", ");
+ sb.append("executableType:");
+ if (this.executableType == null) {
+ sb.append("null");
+ } else {
+ sb.append(this.executableType);
+ }
+ first = false;
+ if (!first) sb.append(", ");
+ sb.append("providerName:");
+ if (this.providerName == null) {
+ sb.append("null");
+ } else {
+ sb.append(this.providerName);
+ }
+ first = false;
+ if (!first) sb.append(", ");
+ sb.append("userAccountName:");
+ if (this.userAccountName == null) {
+ sb.append("null");
+ } else {
+ sb.append(this.userAccountName);
+ }
+ first = false;
+ sb.append(")");
+ return sb.toString();
+ }
+
+ public void validate() throws org.apache.thrift.TException {
+ // check for required fields
+ if (!isSetJobSubmissionInterfaceId()) {
+ throw new org.apache.thrift.protocol.TProtocolException("Required field 'jobSubmissionInterfaceId' is unset! Struct:" + toString());
+ }
+
+ if (!isSetSecurityProtocol()) {
+ throw new org.apache.thrift.protocol.TProtocolException("Required field 'securityProtocol' is unset! Struct:" + toString());
+ }
+
+ if (!isSetNodeId()) {
+ throw new org.apache.thrift.protocol.TProtocolException("Required field 'nodeId' is unset! Struct:" + toString());
+ }
+
+ if (!isSetExecutableType()) {
+ throw new org.apache.thrift.protocol.TProtocolException("Required field 'executableType' is unset! Struct:" + toString());
+ }
+
+ if (!isSetProviderName()) {
+ throw new org.apache.thrift.protocol.TProtocolException("Required field 'providerName' is unset! Struct:" + toString());
+ }
+
+ if (!isSetUserAccountName()) {
+ throw new org.apache.thrift.protocol.TProtocolException("Required field 'userAccountName' is unset! Struct:" + toString());
+ }
+
+ // check for sub-struct validity
+ }
+
+ 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 CloudJobSubmissionStandardSchemeFactory implements SchemeFactory {
+ public CloudJobSubmissionStandardScheme getScheme() {
+ return new CloudJobSubmissionStandardScheme();
+ }
+ }
+
+ private static class CloudJobSubmissionStandardScheme extends StandardScheme<CloudJobSubmission> {
+
+ public void read(org.apache.thrift.protocol.TProtocol iprot, CloudJobSubmission 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: // JOB_SUBMISSION_INTERFACE_ID
+ if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
+ struct.jobSubmissionInterfaceId = iprot.readString();
+ struct.setJobSubmissionInterfaceIdIsSet(true);
+ } else {
+ org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+ }
+ break;
+ case 2: // SECURITY_PROTOCOL
+ if (schemeField.type == org.apache.thrift.protocol.TType.I32) {
+ struct.securityProtocol = SecurityProtocol.findByValue(iprot.readI32());
+ struct.setSecurityProtocolIsSet(true);
+ } else {
+ org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+ }
+ break;
+ case 3: // NODE_ID
+ if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
+ struct.nodeId = iprot.readString();
+ struct.setNodeIdIsSet(true);
+ } else {
+ org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+ }
+ break;
+ case 4: // EXECUTABLE_TYPE
+ if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
+ struct.executableType = iprot.readString();
+ struct.setExecutableTypeIsSet(true);
+ } else {
+ org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+ }
+ break;
+ case 5: // PROVIDER_NAME
+ if (schemeField.type == org.apache.thrift.protocol.TType.I32) {
+ struct.providerName = ProviderName.findByValue(iprot.readI32());
+ struct.setProviderNameIsSet(true);
+ } else {
+ org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+ }
+ break;
+ case 6: // USER_ACCOUNT_NAME
+ if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
+ struct.userAccountName = iprot.readString();
+ struct.setUserAccountNameIsSet(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();
+ struct.validate();
+ }
+
+ public void write(org.apache.thrift.protocol.TProtocol oprot, CloudJobSubmission struct) throws org.apache.thrift.TException {
+ struct.validate();
+
+ oprot.writeStructBegin(STRUCT_DESC);
+ if (struct.jobSubmissionInterfaceId != null) {
+ oprot.writeFieldBegin(JOB_SUBMISSION_INTERFACE_ID_FIELD_DESC);
+ oprot.writeString(struct.jobSubmissionInterfaceId);
+ oprot.writeFieldEnd();
+ }
+ if (struct.securityProtocol != null) {
+ oprot.writeFieldBegin(SECURITY_PROTOCOL_FIELD_DESC);
+ oprot.writeI32(struct.securityProtocol.getValue());
+ oprot.writeFieldEnd();
+ }
+ if (struct.nodeId != null) {
+ oprot.writeFieldBegin(NODE_ID_FIELD_DESC);
+ oprot.writeString(struct.nodeId);
+ oprot.writeFieldEnd();
+ }
+ if (struct.executableType != null) {
+ oprot.writeFieldBegin(EXECUTABLE_TYPE_FIELD_DESC);
+ oprot.writeString(struct.executableType);
+ oprot.writeFieldEnd();
+ }
+ if (struct.providerName != null) {
+ oprot.writeFieldBegin(PROVIDER_NAME_FIELD_DESC);
+ oprot.writeI32(struct.providerName.getValue());
+ oprot.writeFieldEnd();
+ }
+ if (struct.userAccountName != null) {
+ oprot.writeFieldBegin(USER_ACCOUNT_NAME_FIELD_DESC);
+ oprot.writeString(struct.userAccountName);
+ oprot.writeFieldEnd();
+ }
+ oprot.writeFieldStop();
+ oprot.writeStructEnd();
+ }
+
+ }
+
+ private static class CloudJobSubmissionTupleSchemeFactory implements SchemeFactory {
+ public CloudJobSubmissionTupleScheme getScheme() {
+ return new CloudJobSubmissionTupleScheme();
+ }
+ }
+
+ private static class CloudJobSubmissionTupleScheme extends TupleScheme<CloudJobSubmission> {
+
+ @Override
+ public void write(org.apache.thrift.protocol.TProtocol prot, CloudJobSubmission struct) throws org.apache.thrift.TException {
+ TTupleProtocol oprot = (TTupleProtocol) prot;
+ oprot.writeString(struct.jobSubmissionInterfaceId);
+ oprot.writeI32(struct.securityProtocol.getValue());
+ oprot.writeString(struct.nodeId);
+ oprot.writeString(struct.executableType);
+ oprot.writeI32(struct.providerName.getValue());
+ oprot.writeString(struct.userAccountName);
+ }
+
+ @Override
+ public void read(org.apache.thrift.protocol.TProtocol prot, CloudJobSubmission struct) throws org.apache.thrift.TException {
+ TTupleProtocol iprot = (TTupleProtocol) prot;
+ struct.jobSubmissionInterfaceId = iprot.readString();
+ struct.setJobSubmissionInterfaceIdIsSet(true);
+ struct.securityProtocol = SecurityProtocol.findByValue(iprot.readI32());
+ struct.setSecurityProtocolIsSet(true);
+ struct.nodeId = iprot.readString();
+ struct.setNodeIdIsSet(true);
+ struct.executableType = iprot.readString();
+ struct.setExecutableTypeIsSet(true);
+ struct.providerName = ProviderName.findByValue(iprot.readI32());
+ struct.setProviderNameIsSet(true);
+ struct.userAccountName = iprot.readString();
+ struct.setUserAccountNameIsSet(true);
+ }
+ }
+
+}
+
diff --git a/airavata-api/thrift-interface-descriptions/airavataAPI.thrift b/airavata-api/thrift-interface-descriptions/airavataAPI.thrift
index c90f1be..9ad2eed 100644
--- a/airavata-api/thrift-interface-descriptions/airavataAPI.thrift
+++ b/airavata-api/thrift-interface-descriptions/airavataAPI.thrift
@@ -924,6 +924,28 @@
2: airavataErrors.AiravataClientException ace,
3: airavataErrors.AiravataSystemException ase)
+ /**
+ * Add a Cloud Job Submission details to a compute resource
+ * App catalog will return a jobSubmissionInterfaceId which will be added to the jobSubmissionInterfaces.
+ *
+ * @param computeResourceId
+ * The identifier of the compute resource to which JobSubmission protocol to be added
+ *
+ * @param priorityOrder
+ * Specify the priority of this job manager. If this is the only jobmanager, the priority can be zero.
+ *
+ * @param sshJobSubmission
+ * The SSHJobSubmission object to be added to the resource.
+ *
+ * @return status
+ * Returns a success/failure of the deletion.
+**/
+ bool addCloudJobSubmissionDetails(1: required string computeResourceId,
+ 2: required i32 priorityOrder,
+ 3: required computeResourceModel.CloudJobSubmission cloudSubmission)
+ throws (1: airavataErrors.InvalidRequestException ire,
+ 2: airavataErrors.AiravataClientException ace,
+ 3: airavataErrors.AiravataSystemException ase)
/**
* Update the given SSH Job Submission details
*
@@ -943,6 +965,25 @@
2: airavataErrors.AiravataClientException ace,
3: airavataErrors.AiravataSystemException ase)
+/**
+ * Update the given SSH Job Submission details
+ *
+ * @param jobSubmissionInterfaceId
+ * The identifier of the JobSubmission Interface to be updated.
+ *
+ * @param cloudJobSubmission
+ * The CloudJobSubmission object to be updated.
+ *
+ * @return status
+ * Returns a success/failure of the deletion.
+ *
+ */
+ bool updateCloudJobSubmissionDetails(1: required string jobSubmissionInterfaceId,
+ 2: required computeResourceModel.CloudJobSubmission sshJobSubmission)
+ throws (1: airavataErrors.InvalidRequestException ire,
+ 2: airavataErrors.AiravataClientException ace,
+ 3: airavataErrors.AiravataSystemException ase)
+
/**
* Add a Local data movement details to a compute resource
* App catalog will return a dataMovementInterfaceId which will be added to the dataMovementInterfaces.
diff --git a/airavata-api/thrift-interface-descriptions/computeResourceModel.thrift b/airavata-api/thrift-interface-descriptions/computeResourceModel.thrift
index 270214a..0046beb 100644
--- a/airavata-api/thrift-interface-descriptions/computeResourceModel.thrift
+++ b/airavata-api/thrift-interface-descriptions/computeResourceModel.thrift
@@ -333,7 +333,7 @@
*
*
*/
-struct CloundJobSubmission {
+struct CloudJobSubmission {
1: required string jobSubmissionInterfaceId = DEFAULT_ID,
2: required SecurityProtocol securityProtocol,
3: required string nodeId,
diff --git a/modules/app-catalog/app-catalog-cpi/src/main/java/org/airavata/appcatalog/cpi/ComputeResource.java b/modules/app-catalog/app-catalog-cpi/src/main/java/org/airavata/appcatalog/cpi/ComputeResource.java
index 076ed14..23abe4d 100644
--- a/modules/app-catalog/app-catalog-cpi/src/main/java/org/airavata/appcatalog/cpi/ComputeResource.java
+++ b/modules/app-catalog/app-catalog-cpi/src/main/java/org/airavata/appcatalog/cpi/ComputeResource.java
@@ -22,16 +22,7 @@
import java.util.List;
import java.util.Map;
-import org.apache.airavata.model.appcatalog.computeresource.ComputeResourceDescription;
-import org.apache.airavata.model.appcatalog.computeresource.DataMovementInterface;
-import org.apache.airavata.model.appcatalog.computeresource.GlobusJobSubmission;
-import org.apache.airavata.model.appcatalog.computeresource.GridFTPDataMovement;
-import org.apache.airavata.model.appcatalog.computeresource.JobSubmissionInterface;
-import org.apache.airavata.model.appcatalog.computeresource.LOCALDataMovement;
-import org.apache.airavata.model.appcatalog.computeresource.LOCALSubmission;
-import org.apache.airavata.model.appcatalog.computeresource.ResourceJobManager;
-import org.apache.airavata.model.appcatalog.computeresource.SCPDataMovement;
-import org.apache.airavata.model.appcatalog.computeresource.SSHJobSubmission;
+import org.apache.airavata.model.appcatalog.computeresource.*;
public interface ComputeResource {
/**
@@ -54,6 +45,15 @@
*/
String addSSHJobSubmission (SSHJobSubmission sshJobSubmission) throws AppCatalogException;
+
+ /**
+ * This function will add a SSHJobSubmission to the database
+ * @param sshJobSubmission sshJobSubmission object
+ * @return unique submission ID generated by airavata
+ */
+ String addCloudJobSubmission (CloudJobSubmission sshJobSubmission) throws AppCatalogException;
+
+
String addResourceJobManager(ResourceJobManager resourceJobManager) throws AppCatalogException;
/**
@@ -145,6 +145,13 @@
*/
SSHJobSubmission getSSHJobSubmission (String submissionId) throws AppCatalogException;
+
+ /**
+ * This method will retrieve GSISSHJobSubmission object
+ * @param submissionId unique submission id
+ * @return GSISSHSubmission object
+ */
+ CloudJobSubmission getCloudJobSubmission (String submissionId) throws AppCatalogException;
// /**
// * This method will return a list of GSISSHSubmission objects according to given search criteria
// * @param filters map should be provided as the field name and it's value
diff --git a/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/impl/ComputeResourceImpl.java b/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/impl/ComputeResourceImpl.java
index 0b971c3..03f8625 100644
--- a/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/impl/ComputeResourceImpl.java
+++ b/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/impl/ComputeResourceImpl.java
@@ -25,41 +25,10 @@
import org.airavata.appcatalog.cpi.AppCatalogException;
import org.airavata.appcatalog.cpi.ComputeResource;
-import org.apache.aiaravata.application.catalog.data.resources.AbstractResource;
-import org.apache.aiaravata.application.catalog.data.resources.BatchQueueResource;
-import org.apache.aiaravata.application.catalog.data.resources.ComputeResourceFileSystemResource;
-import org.apache.aiaravata.application.catalog.data.resources.ComputeResourceResource;
-import org.apache.aiaravata.application.catalog.data.resources.DataMovementInterfaceResource;
-import org.apache.aiaravata.application.catalog.data.resources.DataMovementProtocolResource;
-import org.apache.aiaravata.application.catalog.data.resources.GridftpDataMovementResource;
-import org.apache.aiaravata.application.catalog.data.resources.GridftpEndpointResource;
-import org.apache.aiaravata.application.catalog.data.resources.HostAliasResource;
-import org.apache.aiaravata.application.catalog.data.resources.HostIPAddressResource;
-import org.apache.aiaravata.application.catalog.data.resources.JobManagerCommandResource;
-import org.apache.aiaravata.application.catalog.data.resources.JobSubmissionInterfaceResource;
-import org.apache.aiaravata.application.catalog.data.resources.LocalDataMovementResource;
-import org.apache.aiaravata.application.catalog.data.resources.LocalSubmissionResource;
-import org.apache.aiaravata.application.catalog.data.resources.Resource;
-import org.apache.aiaravata.application.catalog.data.resources.ResourceJobManagerResource;
-import org.apache.aiaravata.application.catalog.data.resources.ScpDataMovementResource;
-import org.apache.aiaravata.application.catalog.data.resources.SshJobSubmissionResource;
+import org.apache.aiaravata.application.catalog.data.resources.*;
import org.apache.aiaravata.application.catalog.data.util.AppCatalogThriftConversion;
import org.apache.aiaravata.application.catalog.data.util.AppCatalogUtils;
-import org.apache.airavata.model.appcatalog.computeresource.BatchQueue;
-import org.apache.airavata.model.appcatalog.computeresource.ComputeResourceDescription;
-import org.apache.airavata.model.appcatalog.computeresource.DataMovementInterface;
-import org.apache.airavata.model.appcatalog.computeresource.DataMovementProtocol;
-import org.apache.airavata.model.appcatalog.computeresource.FileSystems;
-import org.apache.airavata.model.appcatalog.computeresource.GlobusJobSubmission;
-import org.apache.airavata.model.appcatalog.computeresource.GridFTPDataMovement;
-import org.apache.airavata.model.appcatalog.computeresource.JobManagerCommand;
-import org.apache.airavata.model.appcatalog.computeresource.JobSubmissionInterface;
-import org.apache.airavata.model.appcatalog.computeresource.JobSubmissionProtocol;
-import org.apache.airavata.model.appcatalog.computeresource.LOCALDataMovement;
-import org.apache.airavata.model.appcatalog.computeresource.LOCALSubmission;
-import org.apache.airavata.model.appcatalog.computeresource.ResourceJobManager;
-import org.apache.airavata.model.appcatalog.computeresource.SCPDataMovement;
-import org.apache.airavata.model.appcatalog.computeresource.SSHJobSubmission;
+import org.apache.airavata.model.appcatalog.computeresource.*;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -214,6 +183,19 @@
}
@Override
+ public String addCloudJobSubmission(CloudJobSubmission sshJobSubmission) throws AppCatalogException {
+ try {
+ sshJobSubmission.setJobSubmissionInterfaceId(AppCatalogUtils.getID("Cloud"));
+ CloudSubmissionResource resource = AppCatalogThriftConversion.getCloudJobSubmission(sshJobSubmission);
+ resource.save();
+ return resource.getJobSubmissionInterfaceId();
+ }catch (Exception e) {
+ logger.error("Error while saving SSH Job Submission...", e);
+ throw new AppCatalogException(e);
+ }
+ }
+
+ @Override
public void addJobSubmissionProtocol(String computeResourceId, JobSubmissionInterface jobSubmissionInterface) throws AppCatalogException {
try {
JobSubmissionInterfaceResource jsi = AppCatalogThriftConversion.getJobSubmissionInterface(jobSubmissionInterface);
@@ -533,6 +515,18 @@
throw new AppCatalogException(e);
}
}
+
+ @Override
+ public CloudJobSubmission getCloudJobSubmission(String submissionId) throws AppCatalogException {
+ try {
+ CloudSubmissionResource resource = new CloudSubmissionResource();
+ resource = (CloudSubmissionResource)resource.get(submissionId);
+ return AppCatalogThriftConversion.getCloudJobSubmissionDescription(resource);
+ }catch (Exception e){
+ logger.error("Error while retrieving SSH Job Submission...", e);
+ throw new AppCatalogException(e);
+ }
+ }
//
// @Override
// public List<SSHJobSubmission> getSSHJobSubmissionList(Map<String, String> filters) throws AppCatalogException {
diff --git a/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/model/CloudJobSubmission.java b/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/model/CloudJobSubmission.java
new file mode 100644
index 0000000..2a9e8bb
--- /dev/null
+++ b/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/model/CloudJobSubmission.java
@@ -0,0 +1,102 @@
+/*
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+*/
+package org.apache.aiaravata.application.catalog.data.model;
+
+import org.apache.openjpa.persistence.DataCache;
+
+import javax.persistence.*;
+import java.io.Serializable;
+
+@DataCache
+@Entity
+@Table(name = "CLOUD_JOB_SUBMISSION")
+public class CloudJobSubmission implements Serializable {
+ @Id
+ @Column(name = "JOB_SUBMISSION_INTERFACE_ID")
+ private String jobSubmissionInterfaceId;
+
+ @Column(name = "SECURITY_PROTOCOL")
+ private String securityProtocol;
+
+ @Column(name = "NODE_ID")
+ private String nodeId;
+
+ @Column(name = "EXECUTABLE_TYPE")
+ private String executableType;
+
+ @Column(name = "PROVIDER_NAME")
+ private String providerName;
+
+ @Column(name = "USER_ACCOUNT_NAME")
+ private String userAccountName;
+
+
+ public String getExecutableType() {
+ return executableType;
+ }
+
+ public void setExecutableType(String executableType) {
+ this.executableType = executableType;
+ }
+
+ public String getProviderName() {
+ return providerName;
+ }
+
+ public void setProviderName(String providerName) {
+ this.providerName = providerName;
+ }
+
+ public String getUserAccountName() {
+ return userAccountName;
+ }
+
+ public void setUserAccountName(String userAccountName) {
+ this.userAccountName = userAccountName;
+ }
+
+ public String getNodeId() {
+ return nodeId;
+ }
+
+ public void setNodeId(String nodeId) {
+ this.nodeId = nodeId;
+ }
+
+ public String getJobSubmissionInterfaceId() {
+ return jobSubmissionInterfaceId;
+ }
+
+
+ public String getSecurityProtocol() {
+ return securityProtocol;
+ }
+
+
+ public void setJobSubmissionInterfaceId(String jobSubmissionInterfaceId) {
+ this.jobSubmissionInterfaceId=jobSubmissionInterfaceId;
+ }
+
+
+ public void setSecurityProtocol(String securityProtocol) {
+ this.securityProtocol=securityProtocol;
+ }
+}
diff --git a/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/resources/AbstractResource.java b/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/resources/AbstractResource.java
index ff51e30..d280b71 100644
--- a/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/resources/AbstractResource.java
+++ b/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/resources/AbstractResource.java
@@ -58,6 +58,7 @@
public static final String LOCAL_SUBMISSION = "LocalSubmission";
public static final String LOCAL_DATA_MOVEMENT = "LocalDataMovement";
public static final String SSH_JOB_SUBMISSION = "SshJobSubmission";
+ public static final String CLOUD_JOB_SUBMISSION = "CloudJobSubmission";
public static final String MODULE_LOAD_CMD = "ModuleLoadCmd";
// Compute Resource Table
diff --git a/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/resources/CloudSubmissionResource.java b/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/resources/CloudSubmissionResource.java
new file mode 100644
index 0000000..4f261f1
--- /dev/null
+++ b/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/resources/CloudSubmissionResource.java
@@ -0,0 +1,299 @@
+/*
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+*/
+package org.apache.aiaravata.application.catalog.data.resources;
+
+import org.airavata.appcatalog.cpi.AppCatalogException;
+import org.apache.aiaravata.application.catalog.data.model.CloudJobSubmission;
+import org.apache.aiaravata.application.catalog.data.model.ResourceJobManager;
+import org.apache.aiaravata.application.catalog.data.util.AppCatalogJPAUtils;
+import org.apache.aiaravata.application.catalog.data.util.AppCatalogQueryGenerator;
+import org.apache.aiaravata.application.catalog.data.util.AppCatalogResourceType;
+import org.apache.airavata.common.exception.ApplicationSettingsException;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import javax.persistence.EntityManager;
+import javax.persistence.Query;
+import java.util.ArrayList;
+import java.util.List;
+
+public class CloudSubmissionResource extends AbstractResource {
+ private final static Logger logger = LoggerFactory.getLogger(LocalSubmissionResource.class);
+ private String jobSubmissionInterfaceId;
+ private String securityProtocol;
+ private String nodeId;
+ private String executableType;
+ private String providerName;
+ private String userAccountName;
+
+ @Override
+ public void remove(Object identifier) throws AppCatalogException {
+ EntityManager em = null;
+ try {
+ em = AppCatalogJPAUtils.getEntityManager();
+ em.getTransaction().begin();
+ AppCatalogQueryGenerator generator = new AppCatalogQueryGenerator(CLOUD_JOB_SUBMISSION);
+ generator.setParameter(LocalSubmissionConstants.JOB_SUBMISSION_INTERFACE_ID, identifier);
+ Query q = generator.deleteQuery(em);
+ q.executeUpdate();
+ em.getTransaction().commit();
+ em.close();
+ } catch (ApplicationSettingsException e) {
+ logger.error(e.getMessage(), e);
+ throw new AppCatalogException(e);
+ } finally {
+ if (em != null && em.isOpen()) {
+ if (em.getTransaction().isActive()) {
+ em.getTransaction().rollback();
+ }
+ em.close();
+ }
+ }
+ }
+
+ @Override
+ public Resource get(Object identifier) throws AppCatalogException {
+ EntityManager em = null;
+ try {
+ em = AppCatalogJPAUtils.getEntityManager();
+ em.getTransaction().begin();
+ AppCatalogQueryGenerator generator = new AppCatalogQueryGenerator(CLOUD_JOB_SUBMISSION);
+ generator.setParameter(LocalSubmissionConstants.JOB_SUBMISSION_INTERFACE_ID, identifier);
+ Query q = generator.selectQuery(em);
+ CloudJobSubmission cloudJobSubmission = (CloudJobSubmission) q.getSingleResult();
+ CloudSubmissionResource localSubmissionResource = (CloudSubmissionResource) AppCatalogJPAUtils.getResource(AppCatalogResourceType.ClOUD_SUBMISSION, cloudJobSubmission);
+ em.getTransaction().commit();
+ em.close();
+ return localSubmissionResource;
+ } catch (ApplicationSettingsException e) {
+ logger.error(e.getMessage(), e);
+ throw new AppCatalogException(e);
+ } finally {
+ if (em != null && em.isOpen()) {
+ if (em.getTransaction().isActive()) {
+ em.getTransaction().rollback();
+ }
+ em.close();
+ }
+ }
+ }
+
+ @Override
+ public List<Resource> get(String fieldName, Object value) throws AppCatalogException {
+ List<Resource> localSubmissionResources = new ArrayList<Resource>();
+ EntityManager em = null;
+ try {
+ em = AppCatalogJPAUtils.getEntityManager();
+ em.getTransaction().begin();
+ AppCatalogQueryGenerator generator = new AppCatalogQueryGenerator(CLOUD_JOB_SUBMISSION);
+ Query q;
+ if ((fieldName.equals(LocalSubmissionConstants.RESOURCE_JOB_MANAGER_ID)) || (fieldName.equals(LocalSubmissionConstants.JOB_SUBMISSION_INTERFACE_ID))) {
+ generator.setParameter(fieldName, value);
+ q = generator.selectQuery(em);
+ List<?> results = q.getResultList();
+ for (Object result : results) {
+ CloudJobSubmission localSubmission = (CloudJobSubmission) result;
+ CloudSubmissionResource localSubmissionResource = (CloudSubmissionResource) AppCatalogJPAUtils.getResource(AppCatalogResourceType.ClOUD_SUBMISSION, localSubmission);
+ localSubmissionResources.add(localSubmissionResource);
+ }
+ } else {
+ em.getTransaction().commit();
+ em.close();
+ logger.error("Unsupported field name for Local Submission Resource.", new IllegalArgumentException());
+ throw new IllegalArgumentException("Unsupported field name for Local Submission Resource.");
+ }
+ em.getTransaction().commit();
+ em.close();
+ } catch (ApplicationSettingsException e) {
+ logger.error(e.getMessage(), e);
+ throw new AppCatalogException(e);
+ } finally {
+ if (em != null && em.isOpen()) {
+ if (em.getTransaction().isActive()) {
+ em.getTransaction().rollback();
+ }
+ em.close();
+ }
+ }
+ return localSubmissionResources;
+ }
+
+ @Override
+ public List<Resource> getAll() throws AppCatalogException {
+ return null;
+ }
+
+ @Override
+ public List<String> getAllIds() throws AppCatalogException {
+ return null;
+ }
+
+ @Override
+ public List<String> getIds(String fieldName, Object value) throws AppCatalogException {
+ List<String> localSubmissionResourceIDs = new ArrayList<String>();
+ EntityManager em = null;
+ try {
+ em = AppCatalogJPAUtils.getEntityManager();
+ em.getTransaction().begin();
+ AppCatalogQueryGenerator generator = new AppCatalogQueryGenerator(CLOUD_JOB_SUBMISSION);
+ Query q;
+ if ((fieldName.equals(LocalSubmissionConstants.RESOURCE_JOB_MANAGER_ID)) || (fieldName.equals(LocalSubmissionConstants.JOB_SUBMISSION_INTERFACE_ID))) {
+ generator.setParameter(fieldName, value);
+ q = generator.selectQuery(em);
+ List<?> results = q.getResultList();
+ for (Object result : results) {
+ CloudJobSubmission localSubmission = (CloudJobSubmission) result;
+ LocalSubmissionResource localSubmissionResource = (LocalSubmissionResource) AppCatalogJPAUtils.getResource(AppCatalogResourceType.ClOUD_SUBMISSION, localSubmission);
+ localSubmissionResourceIDs.add(localSubmissionResource.getJobSubmissionInterfaceId());
+ }
+ } else {
+ em.getTransaction().commit();
+ em.close();
+ logger.error("Unsupported field name for Local Submission Resource.", new IllegalArgumentException());
+ throw new IllegalArgumentException("Unsupported field name for Local Submission Resource.");
+ }
+ em.getTransaction().commit();
+ em.close();
+ } catch (ApplicationSettingsException e) {
+ logger.error(e.getMessage(), e);
+ throw new AppCatalogException(e);
+ } finally {
+ if (em != null && em.isOpen()) {
+ if (em.getTransaction().isActive()) {
+ em.getTransaction().rollback();
+ }
+ em.close();
+ }
+ }
+ return localSubmissionResourceIDs;
+ }
+
+ @Override
+ public void save() throws AppCatalogException {
+ EntityManager em = null;
+ try {
+ em = AppCatalogJPAUtils.getEntityManager();
+ CloudJobSubmission existingLocalSubmission = em.find(CloudJobSubmission.class, jobSubmissionInterfaceId);
+ em.close();
+ CloudJobSubmission cloudJobSubmission;
+ em = AppCatalogJPAUtils.getEntityManager();
+ em.getTransaction().begin();
+ if (existingLocalSubmission == null) {
+ cloudJobSubmission = new CloudJobSubmission();
+ } else {
+ cloudJobSubmission = existingLocalSubmission;
+ }
+ cloudJobSubmission.setExecutableType(getExecutableType());
+ cloudJobSubmission.setNodeId(getNodeId());
+ cloudJobSubmission.setJobSubmissionInterfaceId(getJobSubmissionInterfaceId());
+ cloudJobSubmission.setSecurityProtocol(getSecurityProtocol());
+ cloudJobSubmission.setJobSubmissionInterfaceId(getJobSubmissionInterfaceId());
+ cloudJobSubmission.setUserAccountName(getUserAccountName());
+ cloudJobSubmission.setProviderName(getProviderName());
+ if (existingLocalSubmission == null) {
+ em.persist(cloudJobSubmission);
+ } else {
+ em.merge(cloudJobSubmission);
+ }
+ em.getTransaction().commit();
+ em.close();
+ } catch (Exception e) {
+ logger.error(e.getMessage(), e);
+ throw new AppCatalogException(e);
+ } finally {
+ if (em != null && em.isOpen()) {
+ if (em.getTransaction().isActive()) {
+ em.getTransaction().rollback();
+ }
+ em.close();
+ }
+ }
+ }
+
+ @Override
+ public boolean isExists(Object identifier) throws AppCatalogException {
+ EntityManager em = null;
+ try {
+ em = AppCatalogJPAUtils.getEntityManager();
+ CloudJobSubmission localSubmission = em.find(CloudJobSubmission.class, identifier);
+ em.close();
+ return localSubmission != null;
+ } catch (ApplicationSettingsException e) {
+ logger.error(e.getMessage(), e);
+ throw new AppCatalogException(e);
+ } finally {
+ if (em != null && em.isOpen()) {
+ if (em.getTransaction().isActive()) {
+ em.getTransaction().rollback();
+ }
+ em.close();
+ }
+ }
+ }
+
+ public String getJobSubmissionInterfaceId() {
+ return jobSubmissionInterfaceId;
+ }
+
+ public String getSecurityProtocol() {
+ return securityProtocol;
+ }
+
+ public void setSecurityProtocol(String securityProtocol) {
+ this.securityProtocol = securityProtocol;
+ }
+
+ public String getNodeId() {
+ return nodeId;
+ }
+
+ public void setNodeId(String nodeId) {
+ this.nodeId = nodeId;
+ }
+
+ public String getExecutableType() {
+ return executableType;
+ }
+
+ public void setExecutableType(String executableType) {
+ this.executableType = executableType;
+ }
+
+ public String getProviderName() {
+ return providerName;
+ }
+
+ public void setProviderName(String providerName) {
+ this.providerName = providerName;
+ }
+
+ public String getUserAccountName() {
+ return userAccountName;
+ }
+
+ public void setUserAccountName(String userAccountName) {
+ this.userAccountName = userAccountName;
+ }
+
+ public void setJobSubmissionInterfaceId(String jobSubmissionInterfaceId) {
+ this.jobSubmissionInterfaceId=jobSubmissionInterfaceId;
+ }
+}
diff --git a/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/util/AppCatalogResourceType.java b/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/util/AppCatalogResourceType.java
index 6071e39..e4ee980 100644
--- a/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/util/AppCatalogResourceType.java
+++ b/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/util/AppCatalogResourceType.java
@@ -56,5 +56,6 @@
JOB_MANAGER_COMMAND,
LOCAL_SUBMISSION,
LOCAL_DATA_MOVEMENT,
- MODULE_LOAD_CMD
+ MODULE_LOAD_CMD,
+ ClOUD_SUBMISSION
}
diff --git a/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/util/AppCatalogThriftConversion.java b/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/util/AppCatalogThriftConversion.java
index 6c1cc9c..1d89a94 100644
--- a/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/util/AppCatalogThriftConversion.java
+++ b/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/util/AppCatalogThriftConversion.java
@@ -38,22 +38,7 @@
import org.apache.airavata.model.appcatalog.appinterface.DataType;
import org.apache.airavata.model.appcatalog.appinterface.InputDataObjectType;
import org.apache.airavata.model.appcatalog.appinterface.OutputDataObjectType;
-import org.apache.airavata.model.appcatalog.computeresource.BatchQueue;
-import org.apache.airavata.model.appcatalog.computeresource.ComputeResourceDescription;
-import org.apache.airavata.model.appcatalog.computeresource.DataMovementInterface;
-import org.apache.airavata.model.appcatalog.computeresource.DataMovementProtocol;
-import org.apache.airavata.model.appcatalog.computeresource.FileSystems;
-import org.apache.airavata.model.appcatalog.computeresource.GridFTPDataMovement;
-import org.apache.airavata.model.appcatalog.computeresource.JobManagerCommand;
-import org.apache.airavata.model.appcatalog.computeresource.JobSubmissionInterface;
-import org.apache.airavata.model.appcatalog.computeresource.JobSubmissionProtocol;
-import org.apache.airavata.model.appcatalog.computeresource.LOCALDataMovement;
-import org.apache.airavata.model.appcatalog.computeresource.LOCALSubmission;
-import org.apache.airavata.model.appcatalog.computeresource.ResourceJobManager;
-import org.apache.airavata.model.appcatalog.computeresource.ResourceJobManagerType;
-import org.apache.airavata.model.appcatalog.computeresource.SCPDataMovement;
-import org.apache.airavata.model.appcatalog.computeresource.SSHJobSubmission;
-import org.apache.airavata.model.appcatalog.computeresource.SecurityProtocol;
+import org.apache.airavata.model.appcatalog.computeresource.*;
import org.apache.airavata.model.appcatalog.gatewayprofile.ComputeResourcePreference;
import org.apache.airavata.model.appcatalog.gatewayprofile.GatewayResourceProfile;
@@ -247,6 +232,21 @@
return resource;
}
+ public static CloudSubmissionResource getCloudJobSubmission (CloudJobSubmission submission){
+ CloudSubmissionResource resource = new CloudSubmissionResource();
+ resource.setJobSubmissionInterfaceId(submission.getJobSubmissionInterfaceId());
+ if (submission.getSecurityProtocol() != null){
+ resource.setSecurityProtocol(submission.getSecurityProtocol().toString());
+ }
+ if(submission.getProviderName() != null){
+ resource.setProviderName(submission.getProviderName().toString());
+ }
+ resource.setUserAccountName(submission.getUserAccountName());
+ resource.setNodeId(submission.getNodeId());
+ resource.setExecutableType(submission.getExecutableType());
+ return resource;
+ }
+
public static LocalDataMovementResource getLocalDataMovement(LOCALDataMovement localSubmission)throws AppCatalogException{
LocalDataMovementResource submission = new LocalDataMovementResource();
submission.setDataMovementInterfaceId(localSubmission.getDataMovementInterfaceId());
@@ -314,6 +314,17 @@
return sshJobSubmission;
}
+ public static CloudJobSubmission getCloudJobSubmissionDescription (CloudSubmissionResource submission) throws AppCatalogException {
+ CloudJobSubmission cloudJobSubmission = new CloudJobSubmission();
+ cloudJobSubmission.setJobSubmissionInterfaceId(submission.getJobSubmissionInterfaceId());
+ cloudJobSubmission.setExecutableType(submission.getExecutableType());
+ cloudJobSubmission.setSecurityProtocol(SecurityProtocol.valueOf(submission.getSecurityProtocol()));
+ cloudJobSubmission.setNodeId(submission.getNodeId());
+ cloudJobSubmission.setUserAccountName(submission.getUserAccountName());
+ cloudJobSubmission.setProviderName(ProviderName.valueOf(submission.getProviderName()));
+ return cloudJobSubmission;
+ }
+
// public static GlobusJobSubmission getGlobusJobSubmissionDescription (GlobusJobSubmissionResource submission) throws AppCatalogException {
// GlobusJobSubmission globusJobSubmission = new GlobusJobSubmission();
// globusJobSubmission.setJobSubmissionInterfaceId(submission.getSubmissionID());