refactoring the datacatalog code
Project: http://git-wip-us.apache.org/repos/asf/airavata/repo Commit: http://git-wip-us.apache.org/repos/asf/airavata/commit/a963d3f0 Tree: http://git-wip-us.apache.org/repos/asf/airavata/tree/a963d3f0 Diff: http://git-wip-us.apache.org/repos/asf/airavata/diff/a963d3f0 Branch: refs/heads/develop Commit: a963d3f0cbbd47a2775154ee1881aebd24a60b15 Parents: 6d32024 Author: scnakandala <[email protected]> Authored: Tue Mar 22 12:36:31 2016 -0400 Committer: scnakandala <[email protected]> Committed: Tue Mar 22 12:36:31 2016 -0400 ---------------------------------------------------------------------- .../server/handler/AiravataServerHandler.java | 106 +- .../java/org/apache/airavata/api/Airavata.java | 47021 +++++++---------- .../main/resources/lib/airavata/Airavata.cpp | 22115 ++++---- .../src/main/resources/lib/airavata/Airavata.h | 1004 +- .../lib/airavata/Airavata_server.skeleton.cpp | 39 - .../resources/lib/airavata/airavata_api_types.h | 2 +- .../lib/airavata/airavata_data_models_types.h | 2 +- .../airavata/data_catalog_models_constants.cpp | 34 + .../airavata/data_catalog_models_constants.h | 41 + .../lib/airavata/data_catalog_models_types.cpp | 845 + .../lib/airavata/data_catalog_models_types.h | 355 + .../resources/lib/Airavata/API/Airavata.php | 10013 ++-- .../lib/Airavata/Model/Data/Product/Types.php | 856 + .../lib/apache/airavata/api/Airavata-remote | 52 +- .../lib/apache/airavata/api/Airavata.py | 6371 +-- .../resources/lib/apache/airavata/api/ttypes.py | 2 +- .../airavata/model/data/product/__init__.py | 1 + .../airavata/model/data/product/constants.py | 11 + .../airavata/model/data/product/ttypes.py | 536 + .../lib/apache/airavata/model/ttypes.py | 2 +- .../client/samples/DataManagerSample.java | 79 - .../apache/airavata/model/ComponentStatus.java | 2 +- .../org/apache/airavata/model/EdgeModel.java | 2 +- .../org/apache/airavata/model/NodeModel.java | 2 +- .../org/apache/airavata/model/PortModel.java | 2 +- .../apache/airavata/model/WorkflowModel.java | 2 +- .../apache/airavata/model/WorkflowStatus.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 +- .../model/data/product/DataProductModel.java | 1837 + .../model/data/product/DataProductType.java | 65 + .../data/product/DataReplicaLocationModel.java | 1618 + .../data/product/ReplicaLocationCategory.java | 68 + .../data/product/ReplicaPersistentType.java | 62 + .../data/resource/DataReplicaLocationModel.java | 1635 - .../model/data/resource/DataResourceModel.java | 1837 - .../model/data/resource/DataResourceType.java | 62 - .../data/resource/ReplicaLocationCategory.java | 68 - .../data/resource/ReplicaPersistentType.java | 62 - .../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 +- modules/data-manager/data-manager-core/pom.xml | 61 - .../data/manager/core/DataManagerFactory.java | 34 - .../data/manager/core/DataManagerImpl.java | 444 - .../data/manager/core/ssh/CommandOutput.java | 34 - .../data/manager/core/ssh/SSHApiException.java | 33 - .../data/manager/core/ssh/SSHUtils.java | 506 - .../manager/core/ssh/StandardOutReader.java | 86 - .../manager/core/DataManagerFactoryTest.java | 45 - .../data/manager/core/DataManagerImplTest.java | 208 - .../data/manager/core/utils/AppCatInit.java | 320 - .../data/manager/core/utils/DataCatInit.java | 315 - modules/data-manager/data-manager-cpi/pom.xml | 30 - .../airavata/data/manager/cpi/DataManager.java | 121 - .../data/manager/cpi/DataManagerConstants.java | 28 - .../data/manager/cpi/DataManagerException.java | 35 - modules/data-manager/pom.xml | 54 - .../core/data/catalog/impl/DataCatalogImpl.java | 67 +- .../core/data/catalog/model/DataProduct.java | 177 + .../data/catalog/model/DataProductMetaData.java | 77 + .../catalog/model/DataProductMetaData_PK.java | 59 + .../data/catalog/model/DataReplicaLocation.java | 24 +- .../core/data/catalog/model/DataResource.java | 177 - .../catalog/model/DataResourceMetaData.java | 77 - .../catalog/model/DataResourceMetaData_PK.java | 59 - .../catalog/utils/DataCatalogConstants.java | 4 +- .../utils/ThriftDataModelConversion.java | 150 +- .../src/main/resources/META-INF/persistence.xml | 4 +- .../src/main/resources/datacatalog-derby.sql | 26 +- .../airavata/data/catalog/DataCatalogTest.java | 105 +- .../src/test/resources/datacatalog-derby.sql | 52 - .../airavata/registry/cpi/DataCatalog.java | 12 +- .../registry/cpi/DataCatalogException.java | 1 - pom.xml | 1 - .../airavata-apis/airavata_api.thrift | 69 +- .../data-models/airavata_data_models.thrift | 2 +- .../data_catalog_models.thrift | 72 + .../replica_catalog_models.thrift | 74 - 148 files changed, 41753 insertions(+), 58851 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/airavata/blob/a963d3f0/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 c9b5d39..ed892c0 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 @@ -32,9 +32,6 @@ import org.apache.airavata.credential.store.client.CredentialStoreClientFactory; import org.apache.airavata.credential.store.cpi.CredentialStoreService; import org.apache.airavata.credential.store.datamodel.SSHCredential; import org.apache.airavata.credential.store.exception.CredentialStoreException; -import org.apache.airavata.data.manager.core.DataManagerFactory; -import org.apache.airavata.data.manager.cpi.DataManager; -import org.apache.airavata.data.manager.cpi.DataManagerException; import org.apache.airavata.messaging.core.MessageContext; import org.apache.airavata.messaging.core.Publisher; import org.apache.airavata.messaging.core.PublisherFactory; @@ -50,9 +47,8 @@ import org.apache.airavata.model.appcatalog.storageresource.StorageResourceDescr 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; +import org.apache.airavata.model.data.movement.*; import org.apache.airavata.model.error.*; import org.apache.airavata.model.experiment.*; import org.apache.airavata.model.job.JobModel; @@ -76,12 +72,14 @@ import org.apache.airavata.registry.core.experiment.catalog.ExpCatResourceUtils; import org.apache.airavata.registry.core.experiment.catalog.impl.RegistryFactory; import org.apache.airavata.registry.cpi.*; import org.apache.airavata.registry.cpi.utils.Constants; - import org.apache.thrift.TException; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import java.util.*; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; public class AiravataServerHandler implements Airavata.Iface { private static final Logger logger = LoggerFactory.getLogger(AiravataServerHandler.class); @@ -4282,100 +4280,6 @@ public class AiravataServerHandler implements Airavata.Iface { } } - /** - * * Data Manager Related API Methods - * * - */ - - @Override - @SecurityCheck - public String registerDataResource(AuthzToken authzToken, DataResourceModel dataResourceModel) throws InvalidRequestException, AiravataClientException, AiravataSystemException, AuthorizationException, TException { - try { - DataManager dataManager = DataManagerFactory.getDataManager(); - return dataManager.registerResource(dataResourceModel); - } catch (DataManagerException e) { - String msg = "Error in publishing the data resource"+dataResourceModel.getResourceName()+"."; - logger.error(msg, e); - AiravataSystemException exception = new AiravataSystemException(AiravataErrorType.INTERNAL_ERROR); - exception.setMessage(msg+" More info : " + e.getMessage()); - throw exception; - } - } - - @Override - @SecurityCheck - public void updateDataResource(AuthzToken authzToken, DataResourceModel dataResourceModel) throws InvalidRequestException, AiravataClientException, AiravataSystemException, AuthorizationException, TException { - try { - DataManager dataManager = DataManagerFactory.getDataManager(); - dataManager.updateResource(dataResourceModel); - } catch (DataManagerException e) { - String msg = "Error in updating the data resource"+dataResourceModel.getResourceName()+"."; - logger.error(msg, e); - AiravataSystemException exception = new AiravataSystemException(AiravataErrorType.INTERNAL_ERROR); - exception.setMessage(msg+" More info : " + e.getMessage()); - throw exception; - } - } - - @Override - @SecurityCheck - public void removeDataResource(AuthzToken authzToken, String resourceId) throws InvalidRequestException, AiravataClientException, AiravataSystemException, AuthorizationException, TException { - try { - DataManager dataManager = DataManagerFactory.getDataManager(); - dataManager.removeResource(resourceId); - } catch (DataManagerException e) { - String msg = "Error in removing the data resource "+resourceId+"."; - logger.error(msg, e); - AiravataSystemException exception = new AiravataSystemException(AiravataErrorType.INTERNAL_ERROR); - exception.setMessage(msg+" More info : " + e.getMessage()); - throw exception; - } - } - - @Override - @SecurityCheck - public DataResourceModel getDataResource(AuthzToken authzToken, String resourceId) throws InvalidRequestException, - AiravataClientException, AiravataSystemException, AuthorizationException, TException { - try { - DataManager dataManager = DataManagerFactory.getDataManager(); - return dataManager.getResource(resourceId); - } catch (DataManagerException e) { - String msg = "Error in retreiving the data resource "+resourceId+"."; - logger.error(msg, e); - AiravataSystemException exception = new AiravataSystemException(AiravataErrorType.INTERNAL_ERROR); - exception.setMessage(msg+" More info : " + e.getMessage()); - throw exception; - } - } - - @Override - public String copyDataResource(AuthzToken authzToken, String resourceId, String destStorageResourceId, String destinationParentPath) throws InvalidRequestException, AiravataClientException, AiravataSystemException, AuthorizationException, TException { - try { - DataManager dataManager = DataManagerFactory.getDataManager(); - return dataManager.copyResource(resourceId, destStorageResourceId, destinationParentPath); - } catch (DataManagerException e) { - String msg = "Error in copying the data resource "+resourceId+"."; - logger.error(msg, e); - AiravataSystemException exception = new AiravataSystemException(AiravataErrorType.INTERNAL_ERROR); - exception.setMessage(msg+" More info : " + e.getMessage()); - throw exception; - } - } - - @Override - public String copyDataReplica(AuthzToken authzToken, String resourceId, String replicaId, String destStorageResourceId, String destinationParentPath) throws InvalidRequestException, AiravataClientException, AiravataSystemException, AuthorizationException, TException { - try { - DataManager dataManager = DataManagerFactory.getDataManager(); - return dataManager.copyReplica(resourceId, replicaId, destStorageResourceId, destinationParentPath); - } catch (DataManagerException e) { - String msg = "Error in copying the data replica "+replicaId+"."; - logger.error(msg, e); - AiravataSystemException exception = new AiravataSystemException(AiravataErrorType.INTERNAL_ERROR); - exception.setMessage(msg+" More info : " + e.getMessage()); - throw exception; - } - } - private WorkflowCatalog getWorkflowCatalog() { if (workflowCatalog == null) { try {
