You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airavata.apache.org by ch...@apache.org on 2016/01/15 21:48:30 UTC
[4/4] airavata git commit: adding clone application interface
function to API
adding clone application interface function to API
Project: http://git-wip-us.apache.org/repos/asf/airavata/repo
Commit: http://git-wip-us.apache.org/repos/asf/airavata/commit/113490ef
Tree: http://git-wip-us.apache.org/repos/asf/airavata/tree/113490ef
Diff: http://git-wip-us.apache.org/repos/asf/airavata/diff/113490ef
Branch: refs/heads/develop
Commit: 113490efb513365157b512ae35367c3eb08b4306
Parents: 1a30d7f
Author: Chathuri Wimalasena <ch...@apache.org>
Authored: Fri Jan 15 15:49:21 2016 -0500
Committer: Chathuri Wimalasena <ch...@apache.org>
Committed: Fri Jan 15 15:49:21 2016 -0500
----------------------------------------------------------------------
.../server/handler/AiravataServerHandler.java | 28 +
.../java/org/apache/airavata/api/Airavata.java | 11085 ++++++++++-------
.../main/resources/lib/airavata/Airavata.cpp | 560 +
.../src/main/resources/lib/airavata/Airavata.h | 178 +
.../lib/airavata/Airavata_server.skeleton.cpp | 5 +
.../resources/lib/Airavata/API/Airavata.php | 402 +
.../lib/apache/airavata/api/Airavata-remote | 7 +
.../lib/apache/airavata/api/Airavata.py | 314 +
.../org/apache/airavata/model/Workflow.java | 2 +-
.../ApplicationDeploymentDescription.java | 2 +-
.../appdeployment/ApplicationModule.java | 2 +-
.../appcatalog/appdeployment/CommandObject.java | 2 +-
.../appcatalog/appdeployment/SetEnvPaths.java | 2 +-
.../ApplicationInterfaceDescription.java | 2 +-
.../appcatalog/computeresource/BatchQueue.java | 2 +-
.../computeresource/CloudJobSubmission.java | 2 +-
.../ComputeResourceDescription.java | 2 +-
.../computeresource/GlobusJobSubmission.java | 2 +-
.../computeresource/JobSubmissionInterface.java | 2 +-
.../computeresource/LOCALSubmission.java | 2 +-
.../computeresource/ResourceJobManager.java | 2 +-
.../computeresource/SSHJobSubmission.java | 2 +-
.../computeresource/UnicoreJobSubmission.java | 2 +-
.../ComputeResourcePreference.java | 2 +-
.../gatewayprofile/GatewayResourceProfile.java | 2 +-
.../gatewayprofile/StoragePreference.java | 2 +-
.../StorageResourceDescription.java | 2 +-
.../application/io/InputDataObjectType.java | 2 +-
.../application/io/OutputDataObjectType.java | 2 +-
.../airavata/model/commons/ErrorModel.java | 2 +-
.../model/commons/ValidationResults.java | 2 +-
.../airavata/model/commons/ValidatorResult.java | 2 +-
.../data/movement/DataMovementInterface.java | 2 +-
.../data/movement/GridFTPDataMovement.java | 2 +-
.../model/data/movement/LOCALDataMovement.java | 2 +-
.../model/data/movement/SCPDataMovement.java | 2 +-
.../data/movement/UnicoreDataMovement.java | 2 +-
.../data/resource/DataReplicaLocationModel.java | 2 +-
.../model/data/resource/DataResourceModel.java | 2 +-
.../model/error/AiravataClientException.java | 2 +-
.../model/error/AiravataSystemException.java | 2 +-
.../model/error/AuthenticationException.java | 2 +-
.../model/error/AuthorizationException.java | 2 +-
.../error/ExperimentNotFoundException.java | 2 +-
.../model/error/InvalidRequestException.java | 2 +-
.../model/error/LaunchValidationException.java | 2 +-
.../model/error/ProjectNotFoundException.java | 2 +-
.../airavata/model/error/TimedOutException.java | 2 +-
.../airavata/model/error/ValidationResults.java | 2 +-
.../airavata/model/error/ValidatorResult.java | 2 +-
.../model/experiment/ExperimentModel.java | 2 +-
.../model/experiment/ExperimentStatistics.java | 2 +-
.../experiment/ExperimentSummaryModel.java | 2 +-
.../experiment/UserConfigurationDataModel.java | 2 +-
.../org/apache/airavata/model/job/JobModel.java | 2 +-
.../event/ExperimentStatusChangeEvent.java | 2 +-
.../model/messaging/event/JobIdentifier.java | 2 +-
.../messaging/event/JobStatusChangeEvent.java | 2 +-
.../event/JobStatusChangeRequestEvent.java | 2 +-
.../airavata/model/messaging/event/Message.java | 2 +-
.../messaging/event/ProcessIdentifier.java | 2 +-
.../event/ProcessStatusChangeEvent.java | 2 +-
.../event/ProcessStatusChangeRequestEvent.java | 2 +-
.../messaging/event/ProcessSubmitEvent.java | 2 +-
.../messaging/event/ProcessTerminateEvent.java | 2 +-
.../model/messaging/event/TaskIdentifier.java | 2 +-
.../messaging/event/TaskOutputChangeEvent.java | 2 +-
.../messaging/event/TaskStatusChangeEvent.java | 2 +-
.../event/TaskStatusChangeRequestEvent.java | 2 +-
.../airavata/model/process/ProcessModel.java | 2 +-
.../ComputationalResourceSchedulingModel.java | 2 +-
.../airavata/model/security/AuthzToken.java | 2 +-
.../airavata/model/status/ExperimentStatus.java | 2 +-
.../apache/airavata/model/status/JobStatus.java | 2 +-
.../airavata/model/status/ProcessStatus.java | 2 +-
.../airavata/model/status/TaskStatus.java | 2 +-
.../model/task/DataStagingTaskModel.java | 2 +-
.../model/task/EnvironmentSetupTaskModel.java | 2 +-
.../model/task/JobSubmissionTaskModel.java | 2 +-
.../airavata/model/task/MonitorTaskModel.java | 2 +-
.../apache/airavata/model/task/TaskModel.java | 2 +-
.../airavata/model/workspace/Gateway.java | 2 +-
.../apache/airavata/model/workspace/Group.java | 2 +-
.../airavata/model/workspace/Project.java | 2 +-
.../apache/airavata/model/workspace/User.java | 2 +-
.../airavata-apis/airavata_api.thrift | 9 +
86 files changed, 7949 insertions(+), 4793 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/airavata/blob/113490ef/airavata-api/airavata-api-server/src/main/java/org/apache/airavata/api/server/handler/AiravataServerHandler.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-api-server/src/main/java/org/apache/airavata/api/server/handler/AiravataServerHandler.java b/airavata-api/airavata-api-server/src/main/java/org/apache/airavata/api/server/handler/AiravataServerHandler.java
index d9f5dc6..fecf861 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
@@ -49,6 +49,7 @@ import org.apache.airavata.model.appcatalog.gatewayprofile.StoragePreference;
import org.apache.airavata.model.appcatalog.storageresource.StorageResourceDescription;
import org.apache.airavata.model.application.io.InputDataObjectType;
import org.apache.airavata.model.application.io.OutputDataObjectType;
+import org.apache.airavata.model.commons.airavata_commonsConstants;
import org.apache.airavata.model.data.movement.*;
import org.apache.airavata.model.data.movement.DMType;
import org.apache.airavata.model.data.resource.DataResourceModel;
@@ -2322,6 +2323,33 @@ public class AiravataServerHandler implements Airavata.Iface {
}
}
+ @Override
+ public String cloneApplicationInterface(AuthzToken authzToken, String existingAppInterfaceID, String newApplicationName, String gatewayId) throws InvalidRequestException, AiravataClientException, AiravataSystemException, AuthorizationException, TException {
+ if (!isGatewayExistInternal(gatewayId)){
+ logger.error("Gateway does not exist.Please provide a valid gateway id...");
+ throw new AiravataSystemException(AiravataErrorType.INTERNAL_ERROR);
+ }
+ try {
+ appCatalog = RegistryFactory.getAppCatalog();
+ if (!appCatalog.getApplicationInterface().isApplicationInterfaceExists(existingAppInterfaceID)){
+ logger.error("Provided application interface does not exist.Please provide a valid application interface id...");
+ throw new AiravataSystemException(AiravataErrorType.INTERNAL_ERROR);
+ }
+ ApplicationInterfaceDescription existingInterface = appCatalog.getApplicationInterface().getApplicationInterface(existingAppInterfaceID);
+ existingInterface.setApplicationName(newApplicationName);
+ existingInterface.setApplicationInterfaceId(airavata_commonsConstants.DEFAULT_ID);
+ String interfaceId = appCatalog.getApplicationInterface().addApplicationInterface(existingInterface, gatewayId);
+ logger.info("Airavata cloned application interface : " + existingAppInterfaceID + " for gateway id : " + gatewayId );
+ return interfaceId;
+ } catch (AppCatalogException e) {
+ logger.error("Error while adding application interface...", e);
+ AiravataSystemException exception = new AiravataSystemException();
+ exception.setAiravataErrorType(AiravataErrorType.INTERNAL_ERROR);
+ exception.setMessage("Error while adding application interface. More info : " + e.getMessage());
+ throw exception;
+ }
+ }
+
/**
* Fetch a Application Interface.
*