You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airavata.apache.org by ma...@apache.org on 2019/02/07 15:35:09 UTC

[airavata] branch develop updated: AIRAVATA-2977 Replacing registry-core with registry-refactoring

This is an automated email from the ASF dual-hosted git repository.

machristie pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/airavata.git


The following commit(s) were added to refs/heads/develop by this push:
     new 05db6bc  AIRAVATA-2977 Replacing registry-core with registry-refactoring
05db6bc is described below

commit 05db6bcd44e70067e154243401c16b3a1f96ac2d
Author: Marcus Christie <ma...@apache.org>
AuthorDate: Thu Feb 7 10:33:58 2019 -0500

    AIRAVATA-2977 Replacing registry-core with registry-refactoring
---
 .../src/main/assembly/bin-assembly.xml             |    2 +-
 modules/registry-refactoring/pom.xml               |  167 --
 .../src/main/resources/META-INF/persistence.xml    |  136 --
 .../src/main/resources/appcatalog-derby.sql        |  738 --------
 .../src/main/resources/appcatalog-mysql.sql        |  729 --------
 .../src/main/resources/expcatalog-derby.sql        |  404 -----
 .../src/main/resources/expcatalog-mysql.sql        |  406 -----
 .../src/main/resources/replicacatalog-derby.sql    |   86 -
 .../src/main/resources/replicacatalog-mysql.sql    |   81 -
 .../src/main/resources/workflowcatalog-derby.sql   |  128 --
 .../src/main/resources/workflowcatalog-mysql.sql   |  128 --
 modules/registry/pom.xml                           |    1 +
 modules/registry/registry-core/pom.xml             |  158 +-
 .../airavata/registry/core/RegistryException.java  |    0
 .../core/app/catalog/impl/AppCatalogImpl.java      |   62 -
 .../catalog/impl/ApplicationDeploymentImpl.java    |  455 -----
 .../app/catalog/impl/ApplicationInterfaceImpl.java |  475 -----
 .../core/app/catalog/impl/ComputeResourceImpl.java |  965 ----------
 .../app/catalog/impl/GwyResourceProfileImpl.java   |  372 ----
 .../core/app/catalog/impl/StorageResourceImpl.java |  277 ---
 .../app/catalog/impl/UsrResourceProfileImpl.java   |  365 ----
 .../core/app/catalog/model/AppEnvironment.java     |   85 -
 .../core/app/catalog/model/AppEnvironment_PK.java  |   62 -
 .../core/app/catalog/model/AppInput_PK.java        |   62 -
 .../core/app/catalog/model/AppModuleMapping.java   |   75 -
 .../app/catalog/model/AppModuleMapping_PK.java     |   62 -
 .../core/app/catalog/model/AppOutput_PK.java       |   62 -
 .../app/catalog/model/ApplicationDeployment.java   |  196 ---
 .../app/catalog/model/ApplicationIntInput.java     |  175 --
 .../app/catalog/model/ApplicationIntOutput.java    |  154 --
 .../app/catalog/model/ApplicationInterface.java    |  114 --
 .../core/app/catalog/model/ApplicationModule.java  |  105 --
 .../core/app/catalog/model/BatchQueue.java         |  197 ---
 .../core/app/catalog/model/BatchQueue_PK.java      |   61 -
 .../core/app/catalog/model/CloudJobSubmission.java |  101 --
 .../core/app/catalog/model/ComputeResource.java    |  187 --
 .../catalog/model/ComputeResourceFileSystem.java   |   85 -
 .../model/ComputeResourceFileSystem_PK.java        |   60 -
 .../catalog/model/ComputeResourcePreference.java   |  240 ---
 .../catalog/model/ComputeResourcePreferencePK.java |   62 -
 .../core/app/catalog/model/Configuration.java      |   72 -
 .../core/app/catalog/model/Configuration_PK.java   |   63 -
 .../app/catalog/model/DataMovementInterface.java   |  119 --
 .../catalog/model/DataMovementInterface_PK.java    |   60 -
 .../app/catalog/model/DataStorageResource.java     |  111 --
 .../core/app/catalog/model/GSISSHExport.java       |   71 -
 .../core/app/catalog/model/GSISSHExportPK.java     |   62 -
 .../core/app/catalog/model/GSISSHSubmission.java   |   80 -
 .../core/app/catalog/model/GatewayProfile.java     |   98 --
 .../core/app/catalog/model/GlobusGKEndPointPK.java |   62 -
 .../core/app/catalog/model/GlobusGKEndpoint.java   |   63 -
 .../app/catalog/model/GlobusJobSubmission.java     |   60 -
 .../app/catalog/model/GridftpDataMovement.java     |   78 -
 .../core/app/catalog/model/GridftpEndpoint.java    |   97 -
 .../core/app/catalog/model/GridftpEndpoint_PK.java |   60 -
 .../registry/core/app/catalog/model/HostAlias.java |   62 -
 .../core/app/catalog/model/HostAliasPK.java        |   62 -
 .../core/app/catalog/model/HostIPAddress.java      |   63 -
 .../core/app/catalog/model/HostIPAddressPK.java    |   62 -
 .../core/app/catalog/model/JobManagerCommand.java  |   84 -
 .../app/catalog/model/JobManagerCommand_PK.java    |   60 -
 .../app/catalog/model/JobSubmissionInterface.java  |  119 --
 .../catalog/model/JobSubmissionInterface_PK.java   |   60 -
 .../core/app/catalog/model/LibraryApendPath.java   |   74 -
 .../app/catalog/model/LibraryApendPath_PK.java     |   62 -
 .../core/app/catalog/model/LibraryPrepandPath.java |   74 -
 .../app/catalog/model/LibraryPrepandPath_PK.java   |   62 -
 .../core/app/catalog/model/LocalDataMovement.java  |   44 -
 .../core/app/catalog/model/LocalSubmission.java    |  104 --
 .../core/app/catalog/model/ModuleLoadCmd.java      |   77 -
 .../core/app/catalog/model/ModuleLoadCmd_PK.java   |   61 -
 .../catalog/model/ParallelismPrefixCommand.java    |   76 -
 .../catalog/model/ParallelismPrefixCommand_PK.java |   60 -
 .../core/app/catalog/model/PostJobCommand.java     |   82 -
 .../core/app/catalog/model/PostJobCommandPK.java   |   62 -
 .../core/app/catalog/model/PreJobCommand.java      |   82 -
 .../core/app/catalog/model/PreJobCommandPK.java    |   62 -
 .../core/app/catalog/model/ResourceJobManager.java |  101 --
 .../model/SSHAccountProvisionerConfiguration.java  |   98 --
 .../SSHAccountProvisionerConfigurationPK.java      |   57 -
 .../core/app/catalog/model/ScpDataMovement.java    |  112 --
 .../core/app/catalog/model/SshJobSubmission.java   |  139 --
 .../core/app/catalog/model/StorageInterface.java   |  111 --
 .../app/catalog/model/StorageInterface_PK.java     |   60 -
 .../core/app/catalog/model/StoragePreference.java  |   93 -
 .../app/catalog/model/StoragePreferencePK.java     |   62 -
 .../core/app/catalog/model/StorageResource.java    |  108 --
 .../app/catalog/model/UnicoreDataMovement.java     |   63 -
 .../app/catalog/model/UnicoreJobSubmission.java    |   64 -
 .../model/UserComputeResourcePreference.java       |  197 ---
 .../model/UserComputeResourcePreferencePK.java     |   77 -
 .../app/catalog/model/UserResourceProfile.java     |  110 --
 .../app/catalog/model/UserResourceProfilePK.java   |   76 -
 .../app/catalog/model/UserStoragePreference.java   |  107 --
 .../app/catalog/model/UserStoragePreferencePK.java |   78 -
 .../catalog/resources/AppCatAbstractResource.java  |  442 -----
 .../app/catalog/resources/AppCatalogResource.java  |  109 --
 .../catalog/resources/AppDeploymentResource.java   |  563 ------
 .../catalog/resources/AppEnvironmentResource.java  |  324 ----
 .../catalog/resources/AppInterfaceResource.java    |  438 -----
 .../AppModuleMappingAppCatalogResourceAppCat.java  |  355 ----
 .../app/catalog/resources/AppModuleResource.java   |  419 -----
 .../resources/ApplicationInputResource.java        |  509 ------
 .../resources/ApplicationOutputResource.java       |  483 -----
 .../app/catalog/resources/BatchQueueResource.java  |  460 -----
 .../catalog/resources/CloudSubmissionResource.java |  343 ----
 .../resources/ComputeHostPreferenceResource.java   |  557 ------
 .../ComputeResourceFileSystemResource.java         |  350 ----
 .../catalog/resources/ComputeResourceResource.java |  483 -----
 .../resources/DataMovementInterfaceResource.java   |  377 ----
 .../catalog/resources/GSISSHExportResource.java    |  369 ----
 .../resources/GSISSHSubmissionResource.java        |  418 -----
 .../catalog/resources/GatewayProfileResource.java  |  391 -----
 .../resources/GlobusGKEndpointResource.java        |  368 ----
 .../resources/GlobusJobSubmissionResource.java     |  355 ----
 .../resources/GridftpDataMovementResource.java     |  326 ----
 .../catalog/resources/GridftpEndpointResource.java |  363 ----
 .../catalog/resources/HostAliasAppResource.java    |  362 ----
 .../catalog/resources/HostIPAddressResource.java   |  363 ----
 .../resources/JobManagerCommandResource.java       |  351 ----
 .../resources/JobSubmissionInterfaceResource.java  |  382 ----
 .../resources/LibraryApendPathResource.java        |  325 ----
 .../resources/LibraryPrepandPathResource.java      |  324 ----
 .../resources/LocalDataMovementResource.java       |  293 ----
 .../catalog/resources/LocalSubmissionResource.java |  346 ----
 .../catalog/resources/ModuleLoadCmdResource.java   |  353 ----
 .../ParallelismPrefixCommandResource.java          |  348 ----
 .../catalog/resources/PostJobCommandResource.java  |  375 ----
 .../catalog/resources/PreJobCommandResource.java   |  375 ----
 .../resources/ResourceJobManagerResource.java      |  345 ----
 .../catalog/resources/ScpDataMovementResource.java |  353 ----
 .../resources/SshJobSubmissionResource.java        |  377 ----
 .../resources/StorageInterfaceResource.java        |  379 ----
 .../resources/StoragePreferenceResource.java       |  355 ----
 .../catalog/resources/StorageResourceResource.java |  403 -----
 .../resources/UnicoreDataMovementResource.java     |  283 ---
 .../resources/UnicoreJobSubmissionResource.java    |  371 ----
 .../UserComputeHostPreferenceResource.java         |  467 -----
 .../resources/UserResourceProfileResource.java     |  455 -----
 .../resources/UserStoragePreferenceResource.java   |  381 ----
 .../core/app/catalog/util/AppCatalogJPAUtils.java  | 1061 -----------
 .../app/catalog/util/AppCatalogQueryGenerator.java |   94 -
 .../app/catalog/util/AppCatalogResourceType.java   |   68 -
 .../catalog/util/AppCatalogThriftConversion.java   |  987 -----------
 .../core/app/catalog/util/AppCatalogUtils.java     |   29 -
 .../AiravataWorkflowEntity.java                    |    0
 .../AiravataWorkflowErrorEntity.java               |    0
 .../AiravataWorkflowErrorPK.java                   |    0
 .../AiravataWorkflowStatusEntity.java              |    0
 .../AiravataWorkflowStatusPK.java                  |    0
 .../ApplicationErrorEntity.java                    |    0
 .../ApplicationErrorPK.java                        |    0
 .../ApplicationStatusEntity.java                   |    0
 .../ApplicationStatusPK.java                       |    0
 .../HandlerErrorEntity.java                        |    0
 .../airavataworkflowcatalog/HandlerErrorPK.java    |    0
 .../HandlerInputEntity.java                        |    0
 .../airavataworkflowcatalog/HandlerInputPK.java    |    0
 .../HandlerOutputEntity.java                       |    0
 .../airavataworkflowcatalog/HandlerOutputPK.java   |    0
 .../HandlerStatusEntity.java                       |    0
 .../airavataworkflowcatalog/HandlerStatusPK.java   |    0
 .../WorkflowApplicationEntity.java                 |    0
 .../WorkflowApplicationPK.java                     |    0
 .../WorkflowConnectionEntity.java                  |    0
 .../WorkflowConnectionPK.java                      |    0
 .../WorkflowDataBlockEntity.java                   |    0
 .../WorkflowHandlerEntity.java                     |    0
 .../airavataworkflowcatalog/WorkflowHandlerPK.java |    0
 .../entities/appcatalog/AppEnvironmentEntity.java  |    0
 .../core/entities/appcatalog/AppEnvironmentPK.java |    0
 .../appcatalog/AppModuleMappingEntity.java         |    0
 .../entities/appcatalog/AppModuleMappingPK.java    |    0
 .../appcatalog/ApplicationDeploymentEntity.java    |    0
 .../appcatalog/ApplicationInputEntity.java         |    0
 .../entities/appcatalog/ApplicationInputPK.java    |    0
 .../appcatalog/ApplicationInterfaceEntity.java     |    0
 .../appcatalog/ApplicationModuleEntity.java        |    0
 .../appcatalog/ApplicationOutputEntity.java        |    0
 .../entities/appcatalog/ApplicationOutputPK.java   |    0
 .../core/entities/appcatalog/BatchQueueEntity.java |    0
 .../core/entities/appcatalog/BatchQueuePK.java     |    0
 .../appcatalog/BatchQueueResourcePolicyEntity.java |    0
 .../appcatalog/CloudJobSubmissionEntity.java       |    0
 .../entities/appcatalog/ComputeResourceEntity.java |    0
 .../ComputeResourceFileSystemEntity.java           |    0
 .../appcatalog/ComputeResourceFileSystemPK.java    |    0
 .../appcatalog/ComputeResourcePolicyEntity.java    |    0
 .../ComputeResourcePreferenceEntity.java           |    0
 .../appcatalog/ComputeResourcePreferencePK.java    |    0
 .../appcatalog/DataMovementInterfaceEntity.java    |    0
 .../appcatalog/DataMovementInterfacePK.java        |    0
 .../entities/appcatalog/GatewayGroupsEntity.java   |    0
 .../entities/appcatalog/GatewayProfileEntity.java  |    0
 .../appcatalog/GlobusGkEndpointEntity.java         |    0
 .../entities/appcatalog/GlobusGkEndpointPK.java    |    0
 .../appcatalog/GlobusSubmissionEntity.java         |    0
 .../appcatalog/GridftpDataMovementEntity.java      |    0
 .../entities/appcatalog/GridftpEndpointEntity.java |    0
 .../entities/appcatalog/GridftpEndpointPK.java     |    0
 .../appcatalog/GroupComputeResourcePrefEntity.java |    0
 .../appcatalog/GroupComputeResourcePrefPK.java     |    0
 .../appcatalog/GroupResourceProfileEntity.java     |    0
 .../GroupSSHAccountProvisionerConfig.java          |    0
 .../GroupSSHAccountProvisionerConfigPK.java        |    0
 .../entities/appcatalog/GsisshExportEntity.java    |    0
 .../core/entities/appcatalog/GsisshExportPK.java   |    0
 .../appcatalog/GsisshPostjobcommandEntity.java     |    0
 .../appcatalog/GsisshPostjobcommandPK.java         |    0
 .../appcatalog/GsisshPrejobcommandEntity.java      |    0
 .../entities/appcatalog/GsisshPrejobcommandPK.java |    0
 .../appcatalog/GsisshSubmissionEntity.java         |    0
 .../appcatalog/JobManagerCommandEntity.java        |    0
 .../entities/appcatalog/JobManagerCommandPK.java   |    0
 .../appcatalog/JobSubmissionInterfaceEntity.java   |    0
 .../appcatalog/JobSubmissionInterfacePK.java       |    0
 .../appcatalog/LibraryApendPathEntity.java         |    0
 .../entities/appcatalog/LibraryAppendPathPK.java   |    0
 .../appcatalog/LibraryPrependPathEntity.java       |    0
 .../entities/appcatalog/LibraryPrependPathPK.java  |    0
 .../appcatalog/LocalDataMovementEntity.java        |    0
 .../entities/appcatalog/LocalSubmissionEntity.java |    0
 .../entities/appcatalog/ModuleLoadCmdEntity.java   |    0
 .../core/entities/appcatalog/ModuleLoadCmdPK.java  |    0
 .../appcatalog/ParallelismCommandEntity.java       |    0
 .../entities/appcatalog/ParallelismCommandPK.java  |    0
 .../entities/appcatalog/ParserConnectorEntity.java |    0
 .../appcatalog/ParserConnectorInputEntity.java     |    0
 .../core/entities/appcatalog/ParserEntity.java     |    0
 .../entities/appcatalog/ParserInputEntity.java     |    0
 .../entities/appcatalog/ParserOutputEntity.java    |    0
 .../entities/appcatalog/ParsingTemplateEntity.java |    0
 .../appcatalog/ParsingTemplateInputEntity.java     |    0
 .../entities/appcatalog/PostjobCommandEntity.java  |    0
 .../core/entities/appcatalog/PostjobCommandPK.java |    0
 .../entities/appcatalog/PrejobCommandEntity.java   |    0
 .../core/entities/appcatalog/PrejobCommandPK.java  |    0
 .../appcatalog/ResourceJobManagerEntity.java       |    0
 .../SSHAccountProvisionerConfiguration.java        |    0
 .../SSHAccountProvisionerConfigurationPK.java      |    0
 .../entities/appcatalog/ScpDataMovementEntity.java |    0
 .../appcatalog/SshJobSubmissionEntity.java         |    0
 .../appcatalog/StorageInterfaceEntity.java         |    0
 .../entities/appcatalog/StorageInterfacePK.java    |    0
 .../appcatalog/StoragePreferenceEntity.java        |    0
 .../entities/appcatalog/StoragePreferencePK.java   |    0
 .../entities/appcatalog/StorageResourceEntity.java |    0
 .../appcatalog/UnicoreDatamovementEntity.java      |    0
 .../appcatalog/UnicoreSubmissionEntity.java        |    0
 .../UserComputeResourcePreferenceEntity.java       |    0
 .../UserComputeResourcePreferencePK.java           |    0
 .../appcatalog/UserResourceProfileEntity.java      |    0
 .../entities/appcatalog/UserResourceProfilePK.java |    0
 .../appcatalog/UserStoragePreferenceEntity.java    |    0
 .../appcatalog/UserStoragePreferencePK.java        |    0
 .../core/entities/expcatalog/ExperimentEntity.java |    0
 .../entities/expcatalog/ExperimentErrorEntity.java |    0
 .../entities/expcatalog/ExperimentErrorPK.java     |    0
 .../entities/expcatalog/ExperimentInputEntity.java |    0
 .../entities/expcatalog/ExperimentInputPK.java     |    0
 .../expcatalog/ExperimentOutputEntity.java         |    0
 .../entities/expcatalog/ExperimentOutputPK.java    |    0
 .../expcatalog/ExperimentStatusEntity.java         |    0
 .../entities/expcatalog/ExperimentStatusPK.java    |    0
 .../expcatalog/ExperimentSummaryEntity.java        |    0
 .../core/entities/expcatalog/GatewayEntity.java    |    0
 .../entities/expcatalog/GatewayWorkerEntity.java   |    0
 .../core/entities/expcatalog/GatewayWorkerPK.java  |    0
 .../core/entities/expcatalog/JobEntity.java        |    0
 .../registry/core/entities/expcatalog/JobPK.java   |    0
 .../core/entities/expcatalog/JobStatusEntity.java  |    0
 .../core/entities/expcatalog/JobStatusPK.java      |    0
 .../entities/expcatalog/NotificationEntity.java    |    0
 .../core/entities/expcatalog/ProcessEntity.java    |    0
 .../entities/expcatalog/ProcessErrorEntity.java    |    0
 .../core/entities/expcatalog/ProcessErrorPK.java   |    0
 .../entities/expcatalog/ProcessInputEntity.java    |    0
 .../core/entities/expcatalog/ProcessInputPK.java   |    0
 .../entities/expcatalog/ProcessOutputEntity.java   |    0
 .../core/entities/expcatalog/ProcessOutputPK.java  |    0
 .../expcatalog/ProcessResourceScheduleEntity.java  |    0
 .../entities/expcatalog/ProcessStatusEntity.java   |    0
 .../core/entities/expcatalog/ProcessStatusPK.java  |    0
 .../core/entities/expcatalog/ProjectEntity.java    |    0
 .../entities/expcatalog/ProjectUserEntity.java     |    0
 .../core/entities/expcatalog/ProjectUserPK.java    |    0
 .../entities/expcatalog/QueueStatusEntity.java     |    0
 .../core/entities/expcatalog/QueueStatusPK.java    |    0
 .../core/entities/expcatalog/TaskEntity.java       |    0
 .../core/entities/expcatalog/TaskErrorEntity.java  |    0
 .../core/entities/expcatalog/TaskErrorPK.java      |    0
 .../core/entities/expcatalog/TaskStatusEntity.java |    0
 .../core/entities/expcatalog/TaskStatusPK.java     |    0
 .../expcatalog/UserConfigurationDataEntity.java    |    0
 .../core/entities/expcatalog/UserEntity.java       |    0
 .../registry/core/entities/expcatalog/UserPK.java  |    0
 .../replicacatalog/ConfigurationEntity.java        |    0
 .../entities/replicacatalog/ConfigurationPK.java   |    0
 .../entities/replicacatalog/DataProductEntity.java |    0
 .../replicacatalog/DataProductMetadataEntity.java  |    0
 .../replicacatalog/DataProductMetadataPK.java      |    0
 .../replicacatalog/DataReplicaLocationEntity.java  |    0
 .../replicacatalog/DataReplicaMetadataEntity.java  |    0
 .../replicacatalog/DataReplicaMetadataPK.java      |    0
 .../workflowcatalog/ComponentStatusEntity.java     |    0
 .../core/entities/workflowcatalog/EdgeEntity.java  |    0
 .../core/entities/workflowcatalog/EdgePK.java      |    0
 .../core/entities/workflowcatalog/NodeEntity.java  |    0
 .../core/entities/workflowcatalog/NodePK.java      |    0
 .../core/entities/workflowcatalog/PortEntity.java  |    0
 .../core/entities/workflowcatalog/PortPK.java      |    0
 .../entities/workflowcatalog/WorkflowEntity.java   |    0
 .../workflowcatalog/WorkflowInputEntity.java       |    0
 .../entities/workflowcatalog/WorkflowInputPK.java  |    0
 .../workflowcatalog/WorkflowOutputEntity.java      |    0
 .../entities/workflowcatalog/WorkflowOutputPK.java |    0
 .../workflowcatalog/WorkflowStatusEntity.java      |    0
 .../entities/workflowcatalog/WorkflowStatusPK.java |    0
 .../experiment/catalog/ExpCatResourceUtils.java    |  404 -----
 .../experiment/catalog/ExperimentCatResource.java  |   70 -
 .../core/experiment/catalog/JPAConstants.java      |   30 -
 .../core/experiment/catalog/ResourceType.java      |   47 -
 .../catalog/impl/ExperimentCatalogImpl.java        |  749 --------
 .../catalog/impl/ExperimentRegistry.java           | 1847 --------------------
 .../experiment/catalog/impl/GatewayRegistry.java   |  143 --
 .../catalog/impl/NotificationRegistry.java         |   89 -
 .../experiment/catalog/impl/ProjectRegistry.java   |  306 ----
 .../experiment/catalog/impl/RegistryFactory.java   |  113 --
 .../core/experiment/catalog/impl/UserRegistry.java |   39 -
 .../core/experiment/catalog/model/Experiment.java  |  285 ---
 .../experiment/catalog/model/ExperimentError.java  |  153 --
 .../catalog/model/ExperimentErrorPK.java           |   74 -
 .../experiment/catalog/model/ExperimentInput.java  |  230 ---
 .../catalog/model/ExperimentInputPK.java           |   73 -
 .../experiment/catalog/model/ExperimentOutput.java |  207 ---
 .../catalog/model/ExperimentOutputPK.java          |   73 -
 .../experiment/catalog/model/ExperimentStatus.java |  123 --
 .../catalog/model/ExperimentStatusPK.java          |   73 -
 .../catalog/model/ExperimentSummary.java           |  187 --
 .../core/experiment/catalog/model/Gateway.java     |  270 ---
 .../experiment/catalog/model/GatewayWorker.java    |   85 -
 .../experiment/catalog/model/GatewayWorkerPK.java  |   74 -
 .../core/experiment/catalog/model/Job.java         |  202 ---
 .../core/experiment/catalog/model/JobPK.java       |   73 -
 .../core/experiment/catalog/model/JobStatus.java   |  134 --
 .../core/experiment/catalog/model/JobStatusPK.java |   86 -
 .../experiment/catalog/model/Notification.java     |  117 --
 .../core/experiment/catalog/model/Process.java     |  333 ----
 .../experiment/catalog/model/ProcessError.java     |  153 --
 .../experiment/catalog/model/ProcessErrorPK.java   |   73 -
 .../experiment/catalog/model/ProcessInput.java     |  231 ---
 .../experiment/catalog/model/ProcessInputPK.java   |   73 -
 .../experiment/catalog/model/ProcessOutput.java    |  207 ---
 .../experiment/catalog/model/ProcessOutputPK.java  |   73 -
 .../catalog/model/ProcessResourceSchedule.java     |  201 ---
 .../experiment/catalog/model/ProcessStatus.java    |  124 --
 .../experiment/catalog/model/ProcessStatusPK.java  |   74 -
 .../core/experiment/catalog/model/Project.java     |  156 --
 .../core/experiment/catalog/model/ProjectUser.java |   96 -
 .../experiment/catalog/model/ProjectUserPK.java    |   73 -
 .../core/experiment/catalog/model/QueueStatus.java |   98 --
 .../experiment/catalog/model/QueueStatusPK.java    |   87 -
 .../core/experiment/catalog/model/Task.java        |  170 --
 .../core/experiment/catalog/model/TaskError.java   |  152 --
 .../core/experiment/catalog/model/TaskErrorPK.java |   73 -
 .../core/experiment/catalog/model/TaskStatus.java  |  123 --
 .../experiment/catalog/model/TaskStatusPK.java     |   73 -
 .../catalog/model/UserConfigurationData.java       |  316 ----
 .../core/experiment/catalog/model/UserPK.java      |   74 -
 .../core/experiment/catalog/model/Users.java       |  145 --
 .../catalog/resources/AbstractExpCatResource.java  |  308 ----
 .../catalog/resources/ExperimentErrorResource.java |  182 --
 .../catalog/resources/ExperimentInputResource.java |  251 ---
 .../resources/ExperimentOutputResource.java        |  231 ---
 .../catalog/resources/ExperimentResource.java      |  640 -------
 .../resources/ExperimentStatisticsResource.java    |  168 --
 .../resources/ExperimentStatusResource.java        |  162 --
 .../resources/ExperimentSummaryResource.java       |  159 --
 .../catalog/resources/GatewayResource.java         |  586 -------
 .../experiment/catalog/resources/JobResource.java  |  384 ----
 .../catalog/resources/JobStatusResource.java       |  177 --
 .../catalog/resources/NotificationResource.java    |  288 ---
 .../catalog/resources/ProcessErrorResource.java    |  181 --
 .../catalog/resources/ProcessInputResource.java    |  251 ---
 .../catalog/resources/ProcessOutputResource.java   |  232 ---
 .../catalog/resources/ProcessResource.java         |  756 --------
 .../resources/ProcessResourceScheduleResource.java |  227 ---
 .../catalog/resources/ProcessStatusResource.java   |  166 --
 .../catalog/resources/ProjectResource.java         |  506 ------
 .../catalog/resources/ProjectUserResource.java     |  121 --
 .../catalog/resources/QueueStatusResource.java     |  207 ---
 .../catalog/resources/TaskErrorResource.java       |  181 --
 .../experiment/catalog/resources/TaskResource.java |  454 -----
 .../catalog/resources/TaskStatusResource.java      |  162 --
 .../resources/UserConfigurationDataResource.java   |  327 ----
 .../experiment/catalog/resources/UserResource.java |  215 ---
 .../core/experiment/catalog/resources/Utils.java   |  752 --------
 .../catalog/resources/WorkerResource.java          |  822 ---------
 .../experiment/catalog/utils/QueryGenerator.java   |  128 --
 .../catalog/utils/ThriftDataModelConversion.java   |  638 -------
 .../airavata/registry/core/impl/RegistryImpl.java  |   47 -
 .../replica/catalog/impl/ReplicaCatalogImpl.java   |  408 -----
 .../core/replica/catalog/model/Configuration.java  |   73 -
 .../replica/catalog/model/Configuration_PK.java    |   63 -
 .../core/replica/catalog/model/DataProduct.java    |  176 --
 .../replica/catalog/model/DataProductMetaData.java |   76 -
 .../catalog/model/DataProductMetaData_PK.java      |   58 -
 .../replica/catalog/model/DataReplicaLocation.java |  168 --
 .../replica/catalog/model/DataReplicaMetaData.java |   76 -
 .../catalog/model/DataReplicaMetaData_PK.java      |   58 -
 .../catalog/utils/ReplicaCatalogConstants.java     |   48 -
 .../catalog/utils/ReplicaCatalogJPAUtils.java      |   80 -
 .../utils/ReplicaCatalogQueryGenerator.java        |  109 --
 .../catalog/utils/ThriftDataModelConversion.java   |  222 ---
 .../core/repositories/AbstractRepository.java      |    0
 .../appcatalog/AppCatAbstractRepository.java       |    0
 .../ApplicationDeploymentRepository.java           |    0
 .../appcatalog/ApplicationInputRepository.java     |    0
 .../appcatalog/ApplicationInterfaceRepository.java |    0
 .../appcatalog/ApplicationModuleRepository.java    |    0
 .../appcatalog/ApplicationOutputRepository.java    |    0
 .../appcatalog/BatchQueuePolicyRepository.java     |    0
 .../appcatalog/BatchQueueRepository.java           |    0
 .../ComputeResourcePolicyRepository.java           |    0
 .../appcatalog/ComputeResourcePrefRepository.java  |    0
 .../appcatalog/ComputeResourceRepository.java      |    0
 .../appcatalog/DataMovementRepository.java         |    0
 .../appcatalog/GatewayGroupsRepository.java        |    0
 .../appcatalog/GroupResourceProfileRepository.java |    0
 .../appcatalog/GrpComputePrefRepository.java       |    0
 .../appcatalog/GwyResourceProfileRepository.java   |    0
 .../JobSubmissionInterfaceRepository.java          |    0
 .../repositories/appcatalog/ParserRepository.java  |    0
 .../appcatalog/ParsingTemplateRepository.java      |    0
 .../appcatalog/ResourceJobManagerRepository.java   |    0
 .../appcatalog/StoragePrefRepository.java          |    0
 .../appcatalog/StorageResourceRepository.java      |    0
 .../UserComputeResourcePreferenceRepository.java   |    0
 .../appcatalog/UserResourceProfileRepository.java  |    0
 .../UserStoragePreferenceRepository.java           |    0
 .../expcatalog/ExpCatAbstractRepository.java       |    0
 .../expcatalog/ExperimentErrorRepository.java      |    0
 .../expcatalog/ExperimentInputRepository.java      |    0
 .../expcatalog/ExperimentOutputRepository.java     |    0
 .../expcatalog/ExperimentRepository.java           |    0
 .../expcatalog/ExperimentStatusRepository.java     |    0
 .../expcatalog/ExperimentSummaryRepository.java    |    0
 .../repositories/expcatalog/GatewayRepository.java |    0
 .../repositories/expcatalog/JobRepository.java     |    0
 .../expcatalog/JobStatusRepository.java            |    0
 .../expcatalog/NotificationRepository.java         |    0
 .../expcatalog/ProcessErrorRepository.java         |    0
 .../expcatalog/ProcessInputRepository.java         |    0
 .../expcatalog/ProcessOutputRepository.java        |    0
 .../repositories/expcatalog/ProcessRepository.java |    0
 .../expcatalog/ProcessStatusRepository.java        |    0
 .../repositories/expcatalog/ProjectRepository.java |    0
 .../expcatalog/QueueStatusRepository.java          |    0
 .../expcatalog/TaskErrorRepository.java            |    0
 .../repositories/expcatalog/TaskRepository.java    |    0
 .../expcatalog/TaskStatusRepository.java           |    0
 .../repositories/expcatalog/UserRepository.java    |    0
 .../replicacatalog/DataProductRepository.java      |    0
 .../DataReplicaLocationRepository.java             |    0
 .../replicacatalog/RepCatAbstractRepository.java   |    0
 .../WorkflowCatAbstractRepository.java             |    0
 .../workflowcatalog/WorkflowRepository.java        |    0
 .../core/utils/AppCatalogDBInitConfig.java         |    0
 .../registry/core/utils/AppCatalogJDBCConfig.java  |    0
 .../registry/core/utils/AppCatalogUtils.java       |    0
 .../airavata/registry/core/utils/Committer.java    |    0
 .../airavata/registry/core/utils/DBConstants.java  |    0
 .../utils/DozerConverter/StorageDateConverter.java |    0
 .../core/utils/ExpCatalogDBInitConfig.java         |    0
 .../registry/core/utils/ExpCatalogJDBCConfig.java  |    0
 .../registry/core/utils/ExpCatalogUtils.java       |    0
 .../core/utils/JPAUtil/AppCatalogJPAUtils.java     |    0
 .../core/utils/JPAUtil/ExpCatalogJPAUtils.java     |    0
 .../core/utils/JPAUtil/RepCatalogJPAUtils.java     |    0
 .../utils/JPAUtil/WorkflowCatalogJPAUtils.java     |    0
 .../registry/core/utils/ObjectMapperSingleton.java |    0
 .../registry/core/utils/QueryConstants.java        |    0
 .../core/utils/ReplicaCatalogDBInitConfig.java     |    0
 .../core/utils/ReplicaCatalogJDBCConfig.java       |    0
 .../core/utils/WorkflowCatalogDBInitConfig.java    |    0
 .../core/utils/WorkflowCatalogJDBCConfig.java      |    0
 .../registry/core/utils/WorkflowCatalogUtils.java  |    0
 .../workflow/catalog/impl/WorkflowCatalogImpl.java |  252 ---
 .../workflow/catalog/model/ComponentStatus.java    |   99 --
 .../registry/core/workflow/catalog/model/Edge.java |  112 --
 .../core/workflow/catalog/model/Edge_PK.java       |   62 -
 .../registry/core/workflow/catalog/model/Node.java |  134 --
 .../core/workflow/catalog/model/Node_PK.java       |   62 -
 .../registry/core/workflow/catalog/model/Port.java |  112 --
 .../core/workflow/catalog/model/Port_PK.java       |   62 -
 .../core/workflow/catalog/model/Workflow.java      |  122 --
 .../core/workflow/catalog/model/WorkflowInput.java |  165 --
 .../workflow/catalog/model/WorkflowInput_PK.java   |   62 -
 .../workflow/catalog/model/WorkflowOutput.java     |  155 --
 .../workflow/catalog/model/WorkflowOutput_PK.java  |   62 -
 .../workflow/catalog/model/WorkflowStatus.java     |  101 --
 .../workflow/catalog/model/WorkflowStatus_PK.java  |   62 -
 .../catalog/resources/ComponentStatusResource.java |  340 ----
 .../workflow/catalog/resources/EdgeResource.java   |  380 ----
 .../workflow/catalog/resources/NodeResource.java   |  402 -----
 .../workflow/catalog/resources/PortResource.java   |  380 ----
 .../resources/WorkflowCatAbstractResource.java     |   86 -
 .../catalog/resources/WorkflowCatalogResource.java |  109 --
 .../catalog/resources/WorkflowInputResource.java   |  496 ------
 .../catalog/resources/WorkflowOutputResource.java  |  489 ------
 .../catalog/resources/WorkflowResource.java        |  435 -----
 .../catalog/resources/WorkflowStatusResource.java  |  369 ----
 .../catalog/utils/WorkflowCatalogJPAUtils.java     |  268 ---
 .../utils/WorkflowCatalogQueryGenerator.java       |   88 -
 .../catalog/utils/WorkflowCatalogResourceType.java |   31 -
 .../utils/WorkflowCatalogThriftConversion.java     |   74 -
 .../catalog/utils/WorkflowCatalogUtils.java        |   29 -
 .../META-INF/generate-sql-persistence.xml          |    0
 .../src/main/resources/META-INF/persistence.xml    |  198 ++-
 .../resources/airavataworkflowcatalog-derby.sql    |    1 -
 .../src/main/resources/appcatalog-derby.sql        |  318 +++-
 .../src/main/resources/appcatalog-mysql.sql        |  404 +++--
 .../src/main/resources/dozer_mapping.xml           |    0
 .../src/main/resources/expcatalog-derby.sql        |  480 ++---
 .../src/main/resources/expcatalog-mysql.sql        |  534 +++---
 .../src/main/resources/replicacatalog-derby.sql    |   24 +-
 .../src/main/resources/replicacatalog-mysql.sql    |   22 +-
 .../src/main/resources/workflowcatalog-derby.sql   |    4 +-
 .../src/main/resources/workflowcatalog-mysql.sql   |    4 +-
 .../airavata/app/catalog/AppDeploymentTest.java    |  156 --
 .../airavata/app/catalog/AppInterfaceTest.java     |  189 --
 .../app/catalog/AppModuleResourceTest.java         |  119 --
 ...ComputeAppCatalogExperimentCatResourceTest.java |  296 ----
 .../airavata/app/catalog/GatewayProfileTest.java   |  125 --
 .../app/catalog/StorageResourceAppCatalogTest.java |  150 --
 .../app/catalog/UserResourceProfileTest.java       |  184 --
 .../airavata/app/catalog/util/Initialize.java      |  318 ----
 .../experiment/catalog/AbstractResourceTest.java   |   89 -
 .../catalog/ExperimentInputResourceTest.java       |   96 -
 .../catalog/ExperimentOutputResourceTest.java      |   95 -
 .../experiment/catalog/ExperimentResourceTest.java |   96 -
 .../experiment/catalog/GatewayResourceTest.java    |  141 --
 .../experiment/catalog/JobResourceTest.java        |  109 --
 .../experiment/catalog/ProcessResourceTest.java    |   82 -
 .../catalog/QueueStatusResourceTest.java           |   95 -
 .../experiment/catalog/TaskResourceTest.java       |   96 -
 .../catalog/UserConfigurationDataTest.java         |   80 -
 .../experiment/catalog/UserResourceTest.java       |   75 -
 .../experiment/catalog/util/Initialize.java        |  328 ----
 .../ApplicationDeploymentRepositoryTest.java       |    0
 .../ApplicationInterfaceRepositoryTest.java        |    0
 .../appcatalog/ComputeResourceRepositoryTest.java  |    0
 .../appcatalog/GatewayGroupsRepositoryTest.java    |    0
 .../appcatalog/GatewayProfileRepositoryTest.java   |    0
 .../GroupResourceProfileRepositoryTest.java        |    0
 .../JobSubmissionInterfaceRepositoryTest.java      |    0
 .../appcatalog/StorageResourceRepositoryTest.java  |    0
 .../UserResourceProfileRepositoryTest.java         |    0
 .../core/repositories/common/TestBase.java         |    0
 .../expcatalog/ExperimentErrorRepositoryTest.java  |    0
 .../expcatalog/ExperimentInputRepositoryTest.java  |    0
 .../expcatalog/ExperimentOutputRepositoryTest.java |    0
 .../expcatalog/ExperimentRepositoryTest.java       |    0
 .../expcatalog/ExperimentStatusRepositoryTest.java |    0
 .../ExperimentSummaryRepositoryTest.java           |    0
 .../expcatalog/GatewayRepositoryTest.java          |    0
 .../repositories/expcatalog/JobRepositoryTest.java |    0
 .../expcatalog/JobStatusRepositoryTest.java        |    0
 .../expcatalog/NotificationRepositoryTest.java     |    0
 .../expcatalog/ProcessErrorRepositoryTest.java     |    0
 .../expcatalog/ProcessInputRepositoryTest.java     |    0
 .../expcatalog/ProcessOutputRepositoryTest.java    |    0
 .../expcatalog/ProcessRepositoryTest.java          |    0
 .../expcatalog/ProcessStatusRepositoryTest.java    |    0
 .../expcatalog/ProjectRepositoryTest.java          |    0
 .../expcatalog/QueueStatusRepositoryTest.java      |    0
 .../expcatalog/TaskErrorRepositoryTest.java        |    0
 .../expcatalog/TaskRepositoryTest.java             |    0
 .../expcatalog/TaskStatusRepositoryTest.java       |    0
 .../expcatalog/UserRepositoryTest.java             |    0
 .../replicacatalog/DataProductRepositoryTest.java  |    0
 .../DataReplicaLocationRepositoryTest.java         |    0
 .../workflowcatalog/WorkflowRepositoryTest.java    |    0
 .../replica/catalog/ReplicaCatalogTest.java        |  105 --
 .../airavata/replica/catalog/util/Initialize.java  |  313 ----
 .../src/test/resources/airavata-server.properties  |    0
 .../registry-core}/src/test/resources/logback.xml  |    0
 .../registry-server/registry-api-service/pom.xml   |    2 +-
 pom.xml                                            |    1 -
 589 files changed, 1261 insertions(+), 62836 deletions(-)

diff --git a/modules/distribution/src/main/assembly/bin-assembly.xml b/modules/distribution/src/main/assembly/bin-assembly.xml
index a97d326..865dca6 100644
--- a/modules/distribution/src/main/assembly/bin-assembly.xml
+++ b/modules/distribution/src/main/assembly/bin-assembly.xml
@@ -68,7 +68,7 @@
 
         <!-- ********************** copy database scripts ********************** -->
         <fileSet>
-            <directory>../registry-refactoring/src/main/resources/
+            <directory>../registry/registry-core/src/main/resources/
             </directory>
             <outputDirectory>bin/database_scripts
             </outputDirectory>
diff --git a/modules/registry-refactoring/pom.xml b/modules/registry-refactoring/pom.xml
deleted file mode 100644
index f26a44a..0000000
--- a/modules/registry-refactoring/pom.xml
+++ /dev/null
@@ -1,167 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project xmlns="http://maven.apache.org/POM/4.0.0"
-         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
-    <modelVersion>4.0.0</modelVersion>
-
-    <parent>
-        <groupId>org.apache.airavata</groupId>
-        <artifactId>airavata</artifactId>
-        <version>0.17-SNAPSHOT</version>
-        <relativePath>../../pom.xml</relativePath>
-    </parent>
-
-    <groupId>org.apache.airavata</groupId>
-    <artifactId>registry-refactoring</artifactId>
-
-    <properties>
-        <derby.version>10.11.1.1</derby.version>
-        <surefire.version>2.18.1</surefire.version>
-        <skipTests>false</skipTests>
-        <mysql.connector.version>5.1.34</mysql.connector.version>
-    </properties>
-
-    <dependencies>
-        <dependency>
-            <groupId>org.apache.airavata</groupId>
-            <artifactId>airavata-data-models</artifactId>
-            <version>${project.version}</version>
-        </dependency>
-        <dependency>
-            <groupId>net.sf.dozer</groupId>
-            <artifactId>dozer</artifactId>
-            <version>5.4.0</version>
-            <exclusions>
-               <exclusion>
-                   <groupId>org.slf4j</groupId>
-                   <artifactId>slf4j-log4j12</artifactId>
-               </exclusion>
-            </exclusions>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.openjpa</groupId>
-            <artifactId>openjpa</artifactId>
-            <version>${openjpa.version}</version>
-        </dependency>
-
-        <dependency>
-            <groupId>mysql</groupId>
-            <artifactId>mysql-connector-java</artifactId>
-            <version>${mysql.connector.version}</version>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.derby</groupId>
-            <artifactId>derby</artifactId>
-            <version>${derby.version}</version>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.derby</groupId>
-            <artifactId>derbyclient</artifactId>
-            <version>${derby.version}</version>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.derby</groupId>
-            <artifactId>derbynet</artifactId>
-            <version>${derby.version}</version>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.derby</groupId>
-            <artifactId>derbytools</artifactId>
-            <version>${derby.version}</version>
-        </dependency>
-        <dependency>
-            <groupId>junit</groupId>
-            <artifactId>junit</artifactId>
-            <version>4.12</version>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>ch.qos.logback</groupId>
-            <artifactId>logback-classic</artifactId>
-            <version>${logback.version}</version>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.airavata</groupId>
-            <artifactId>airavata-commons</artifactId>
-            <version>0.17-SNAPSHOT</version>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.airavata</groupId>
-            <artifactId>airavata-server-configuration</artifactId>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.airavata</groupId>
-            <artifactId>airavata-registry-cpi</artifactId>
-            <version>0.17-SNAPSHOT</version>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.ibatis</groupId>
-            <artifactId>ibatis-sqlmap</artifactId>
-            <version>2.3.0</version>
-        </dependency>
-
-    </dependencies>
-
-    <build>
-        <plugins>
-            <plugin>
-                <groupId>org.apache.maven.plugins</groupId>
-                <artifactId>maven-compiler-plugin</artifactId>
-                <version>3.1</version>
-                <configuration>
-                    <source>1.8</source>
-                    <target>1.8</target>
-                </configuration>
-            </plugin>
-            <plugin>
-                <groupId>org.apache.openjpa</groupId>
-                <artifactId>openjpa-maven-plugin</artifactId>
-                <version>${openjpa.version}</version>
-                <configuration>
-                    <includes>**/entities/*.class</includes>
-                    <excludes>**/entities/XML*.class</excludes>
-                    <addDefaultConstructor>true</addDefaultConstructor>
-                    <enforcePropertyRestrictions>true</enforcePropertyRestrictions>
-                </configuration>
-                <executions>
-                    <execution>
-                        <id>enhancer</id>
-                        <phase>process-classes</phase>
-                        <goals>
-                            <goal>enhance</goal>
-                        </goals>
-                    </execution>
-                    <execution>
-                        <!-- execute with `mvn compile openjpa:sql@generate-sql` or `mvn process-classes` -->
-                        <id>generate-sql</id>
-                        <configuration>
-                            <!-- openjpa:sql doesn't work well with multiple persistence-unit's in persistence.xml, so
-                            use this single persistence-unit persistence.xml to list any classes for which SQL schema
-                            generation is desired -->
-                            <persistenceXmlFile>${basedir}/src/main/resources/META-INF/generate-sql-persistence.xml</persistenceXmlFile>
-                            <sqlAction>build</sqlAction>
-                            <connectionDriverName>org.apache.derby.jdbc.ClientDriver</connectionDriverName>
-                        </configuration>
-                        <goals>
-                            <goal>sql</goal>
-                        </goals>
-                    </execution>
-                </executions>
-            </plugin>
-            <plugin>
-                <groupId>org.apache.maven.plugins</groupId>
-                <artifactId>maven-surefire-plugin</artifactId>
-                <version>${surefire.version}</version>
-                <inherited>true</inherited>
-                <configuration>
-                    <failIfNoTests>false</failIfNoTests>
-                    <skipTests>${skipTests}</skipTests>
-                    <workingDirectory>${project.build.testOutputDirectory}</workingDirectory>
-                </configuration>
-            </plugin>
-        </plugins>
-    </build>
-
-</project>
diff --git a/modules/registry-refactoring/src/main/resources/META-INF/persistence.xml b/modules/registry-refactoring/src/main/resources/META-INF/persistence.xml
deleted file mode 100644
index 37df5ac..0000000
--- a/modules/registry-refactoring/src/main/resources/META-INF/persistence.xml
+++ /dev/null
@@ -1,136 +0,0 @@
-<?xml version="1.0"?>
-<!--*
- *
- * 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.
- *
-* -->
-<persistence xmlns="http://java.sun.com/xml/ns/persistence" version="2.0">
-    <persistence-unit name="appcatalog_data_new">
-        <provider>org.apache.openjpa.persistence.PersistenceProviderImpl</provider>
-        <class>org.apache.airavata.registry.core.entities.appcatalog.GridftpDataMovementEntity</class>
-        <class>org.apache.airavata.registry.core.entities.appcatalog.ResourceJobManagerEntity</class>
-        <class>org.apache.airavata.registry.core.entities.appcatalog.ComputeResourceEntity</class>
-        <class>org.apache.airavata.registry.core.entities.appcatalog.ApplicationModuleEntity</class>
-        <class>org.apache.airavata.registry.core.entities.appcatalog.ApplicationDeploymentEntity</class>
-        <class>org.apache.airavata.registry.core.entities.appcatalog.ApplicationInterfaceEntity</class>
-        <class>org.apache.airavata.registry.core.entities.appcatalog.GatewayGroupsEntity</class>
-        <class>org.apache.airavata.registry.core.entities.appcatalog.GatewayProfileEntity</class>
-        <class>org.apache.airavata.registry.core.entities.appcatalog.StorageResourceEntity</class>
-        <class>org.apache.airavata.registry.core.entities.appcatalog.ScpDataMovementEntity</class>
-        <class>org.apache.airavata.registry.core.entities.appcatalog.SshJobSubmissionEntity</class>
-        <class>org.apache.airavata.registry.core.entities.appcatalog.GlobusSubmissionEntity</class>
-        <class>org.apache.airavata.registry.core.entities.appcatalog.GsisshSubmissionEntity</class>
-        <class>org.apache.airavata.registry.core.entities.appcatalog.GridftpEndpointEntity</class>
-        <class>org.apache.airavata.registry.core.entities.appcatalog.ComputeResourcePreferenceEntity</class>
-        <class>org.apache.airavata.registry.core.entities.appcatalog.JobSubmissionInterfaceEntity</class>
-        <class>org.apache.airavata.registry.core.entities.appcatalog.DataMovementInterfaceEntity</class>
-        <class>org.apache.airavata.registry.core.entities.appcatalog.StorageInterfaceEntity</class>
-        <class>org.apache.airavata.registry.core.entities.appcatalog.LocalSubmissionEntity</class>
-        <class>org.apache.airavata.registry.core.entities.appcatalog.GlobusGkEndpointEntity</class>
-        <class>org.apache.airavata.registry.core.entities.appcatalog.UnicoreDatamovementEntity</class>
-        <class>org.apache.airavata.registry.core.entities.appcatalog.UnicoreSubmissionEntity</class>
-        <class>org.apache.airavata.registry.core.entities.appcatalog.GsisshPostjobcommandEntity</class>
-        <class>org.apache.airavata.registry.core.entities.appcatalog.GsisshPrejobcommandEntity</class>
-        <class>org.apache.airavata.registry.core.entities.appcatalog.GsisshExportEntity</class>
-        <class>org.apache.airavata.registry.core.entities.appcatalog.LibraryApendPathEntity</class>
-        <class>org.apache.airavata.registry.core.entities.appcatalog.LibraryPrependPathEntity</class>
-        <class>org.apache.airavata.registry.core.entities.appcatalog.AppEnvironmentEntity</class>
-        <class>org.apache.airavata.registry.core.entities.appcatalog.PrejobCommandEntity</class>
-        <class>org.apache.airavata.registry.core.entities.appcatalog.PostjobCommandEntity</class>
-        <class>org.apache.airavata.registry.core.entities.appcatalog.AppModuleMappingEntity</class>
-        <class>org.apache.airavata.registry.core.entities.appcatalog.ApplicationInputEntity</class>
-        <class>org.apache.airavata.registry.core.entities.appcatalog.ApplicationOutputEntity</class>
-        <class>org.apache.airavata.registry.core.entities.appcatalog.BatchQueueEntity</class>
-        <class>org.apache.airavata.registry.core.entities.appcatalog.ComputeResourceFileSystemEntity</class>
-        <class>org.apache.airavata.registry.core.entities.appcatalog.CloudJobSubmissionEntity</class>
-        <class>org.apache.airavata.registry.core.entities.appcatalog.JobManagerCommandEntity</class>
-        <class>org.apache.airavata.registry.core.entities.appcatalog.ParallelismCommandEntity</class>
-        <class>org.apache.airavata.registry.core.entities.appcatalog.LocalDataMovementEntity</class>
-        <class>org.apache.airavata.registry.core.entities.appcatalog.StoragePreferenceEntity</class>
-        <class>org.apache.airavata.registry.core.entities.appcatalog.SSHAccountProvisionerConfiguration</class>
-        <class>org.apache.airavata.registry.core.entities.appcatalog.BatchQueueResourcePolicyEntity</class>
-        <class>org.apache.airavata.registry.core.entities.appcatalog.ComputeResourcePolicyEntity</class>
-        <class>org.apache.airavata.registry.core.entities.appcatalog.GroupComputeResourcePrefEntity</class>
-        <class>org.apache.airavata.registry.core.entities.appcatalog.GroupSSHAccountProvisionerConfig</class>
-        <class>org.apache.airavata.registry.core.entities.appcatalog.GroupResourceProfileEntity</class>
-        <class>org.apache.airavata.registry.core.entities.appcatalog.ModuleLoadCmdEntity</class>
-        <class>org.apache.airavata.registry.core.entities.appcatalog.UserResourceProfileEntity</class>
-        <class>org.apache.airavata.registry.core.entities.appcatalog.UserComputeResourcePreferenceEntity</class>
-        <class>org.apache.airavata.registry.core.entities.appcatalog.UserStoragePreferenceEntity</class>
-        <class>org.apache.airavata.registry.core.entities.appcatalog.ParserEntity</class>
-        <class>org.apache.airavata.registry.core.entities.appcatalog.ParserInputEntity</class>
-        <class>org.apache.airavata.registry.core.entities.appcatalog.ParserOutputEntity</class>
-        <class>org.apache.airavata.registry.core.entities.appcatalog.ParsingTemplateEntity</class>
-        <class>org.apache.airavata.registry.core.entities.appcatalog.ParsingTemplateInputEntity</class>
-        <class>org.apache.airavata.registry.core.entities.appcatalog.ParserConnectorInputEntity</class>
-        <class>org.apache.airavata.registry.core.entities.appcatalog.ParserConnectorEntity</class>
-        <exclude-unlisted-classes>true</exclude-unlisted-classes>
-    </persistence-unit>
-    <persistence-unit name="replicacatalog_data_new">
-        <class>org.apache.airavata.registry.core.entities.replicacatalog.ConfigurationEntity</class>
-        <class>org.apache.airavata.registry.core.entities.replicacatalog.DataProductEntity</class>
-        <class>org.apache.airavata.registry.core.entities.replicacatalog.DataProductMetadataEntity</class>
-        <class>org.apache.airavata.registry.core.entities.replicacatalog.DataReplicaLocationEntity</class>
-        <class>org.apache.airavata.registry.core.entities.replicacatalog.DataReplicaMetadataEntity</class>
-        <exclude-unlisted-classes>true</exclude-unlisted-classes>
-    </persistence-unit>
-    <persistence-unit name="workflowcatalog_data_new">
-        <class>org.apache.airavata.registry.core.entities.airavataworkflowcatalog.AiravataWorkflowEntity</class>
-        <class>org.apache.airavata.registry.core.entities.airavataworkflowcatalog.AiravataWorkflowErrorEntity</class>
-        <class>org.apache.airavata.registry.core.entities.airavataworkflowcatalog.AiravataWorkflowStatusEntity</class>
-        <class>org.apache.airavata.registry.core.entities.airavataworkflowcatalog.ApplicationErrorEntity</class>
-        <class>org.apache.airavata.registry.core.entities.airavataworkflowcatalog.ApplicationStatusEntity</class>
-        <class>org.apache.airavata.registry.core.entities.airavataworkflowcatalog.HandlerErrorEntity</class>
-        <class>org.apache.airavata.registry.core.entities.airavataworkflowcatalog.HandlerInputEntity</class>
-        <class>org.apache.airavata.registry.core.entities.airavataworkflowcatalog.HandlerOutputEntity</class>
-        <class>org.apache.airavata.registry.core.entities.airavataworkflowcatalog.HandlerStatusEntity</class>
-        <class>org.apache.airavata.registry.core.entities.airavataworkflowcatalog.WorkflowApplicationEntity</class>
-        <class>org.apache.airavata.registry.core.entities.airavataworkflowcatalog.WorkflowConnectionEntity</class>
-        <class>org.apache.airavata.registry.core.entities.airavataworkflowcatalog.WorkflowDataBlockEntity</class>
-        <class>org.apache.airavata.registry.core.entities.airavataworkflowcatalog.WorkflowHandlerEntity</class>
-        <exclude-unlisted-classes>true</exclude-unlisted-classes>
-    </persistence-unit>
-    <persistence-unit name="experiment_data_new">
-        <class>org.apache.airavata.registry.core.entities.expcatalog.ExperimentEntity</class>
-        <class>org.apache.airavata.registry.core.entities.expcatalog.ExperimentErrorEntity</class>
-        <class>org.apache.airavata.registry.core.entities.expcatalog.ExperimentInputEntity</class>
-        <class>org.apache.airavata.registry.core.entities.expcatalog.ExperimentOutputEntity</class>
-        <class>org.apache.airavata.registry.core.entities.expcatalog.ExperimentStatusEntity</class>
-        <class>org.apache.airavata.registry.core.entities.expcatalog.ExperimentSummaryEntity</class>
-        <class>org.apache.airavata.registry.core.entities.expcatalog.GatewayEntity</class>
-        <class>org.apache.airavata.registry.core.entities.expcatalog.GatewayWorkerEntity</class>
-        <class>org.apache.airavata.registry.core.entities.expcatalog.JobEntity</class>
-        <class>org.apache.airavata.registry.core.entities.expcatalog.JobStatusEntity</class>
-        <class>org.apache.airavata.registry.core.entities.expcatalog.NotificationEntity</class>
-        <class>org.apache.airavata.registry.core.entities.expcatalog.ProcessEntity</class>
-        <class>org.apache.airavata.registry.core.entities.expcatalog.ProcessErrorEntity</class>
-        <class>org.apache.airavata.registry.core.entities.expcatalog.ProcessInputEntity</class>
-        <class>org.apache.airavata.registry.core.entities.expcatalog.ProcessOutputEntity</class>
-        <class>org.apache.airavata.registry.core.entities.expcatalog.ProcessResourceScheduleEntity</class>
-        <class>org.apache.airavata.registry.core.entities.expcatalog.ProcessStatusEntity</class>
-        <class>org.apache.airavata.registry.core.entities.expcatalog.ProjectEntity</class>
-        <class>org.apache.airavata.registry.core.entities.expcatalog.ProjectUserEntity</class>
-        <class>org.apache.airavata.registry.core.entities.expcatalog.QueueStatusEntity</class>
-        <class>org.apache.airavata.registry.core.entities.expcatalog.TaskEntity</class>
-        <class>org.apache.airavata.registry.core.entities.expcatalog.TaskErrorEntity</class>
-        <class>org.apache.airavata.registry.core.entities.expcatalog.TaskStatusEntity</class>
-        <class>org.apache.airavata.registry.core.entities.expcatalog.UserConfigurationDataEntity</class>
-        <class>org.apache.airavata.registry.core.entities.expcatalog.UserEntity</class>
-        <exclude-unlisted-classes>true</exclude-unlisted-classes>
-    </persistence-unit>
-</persistence>
diff --git a/modules/registry-refactoring/src/main/resources/appcatalog-derby.sql b/modules/registry-refactoring/src/main/resources/appcatalog-derby.sql
deleted file mode 100644
index da7bb1b..0000000
--- a/modules/registry-refactoring/src/main/resources/appcatalog-derby.sql
+++ /dev/null
@@ -1,738 +0,0 @@
-/*
- *
- * 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.
- *
- */
-
-/* registry-refactoring: app catalog DB init script */
-CREATE TABLE COMPUTE_RESOURCE
-(
-        RESOURCE_ID VARCHAR (255) NOT NULL,
-        HOST_NAME VARCHAR (255) NOT NULL,
-        RESOURCE_DESCRIPTION VARCHAR (255),
-        CREATION_TIME TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
-        UPDATE_TIME TIMESTAMP DEFAULT '0000-00-00 00:00:00',
-        MAX_MEMORY_NODE INTEGER,
-        CPUS_PER_NODE INTEGER,
-        DEFAULT_NODE_COUNT INTEGER,
-        DEFAULT_CPU_COUNT INTEGER,
-        DEFAULT_WALLTIME INTEGER,
-        ENABLED SMALLINT,
-        GATEWAY_USAGE_REPORTING SMALLINT,
-        GATEWAY_USAGE_MODULE_LOAD_CMD VARCHAR(500),
-        GATEWAY_USAGE_EXECUTABLE VARCHAR(255),
-        PRIMARY KEY (RESOURCE_ID)
-);
-
-CREATE TABLE HOST_ALIAS
-(
-         RESOURCE_ID VARCHAR(255) NOT NULL,
-         ALIAS VARCHAR(255),
-         PRIMARY KEY(RESOURCE_ID,ALIAS),
-         FOREIGN KEY (RESOURCE_ID) REFERENCES COMPUTE_RESOURCE(RESOURCE_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE HOST_IPADDRESS
-(
-         RESOURCE_ID VARCHAR(255) NOT NULL,
-         IP_ADDRESS VARCHAR(255),
-         PRIMARY KEY(RESOURCE_ID,IP_ADDRESS),
-         FOREIGN KEY (RESOURCE_ID) REFERENCES COMPUTE_RESOURCE(RESOURCE_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE GSISSH_SUBMISSION
-(
-         SUBMISSION_ID VARCHAR(255),
-         RESOURCE_JOB_MANAGER VARCHAR(255),
-         SSH_PORT INTEGER,
-         INSTALLED_PATH VARCHAR(255),
-         MONITOR_MODE VARCHAR(255),
-         PRIMARY KEY(SUBMISSION_ID)
-);
-
-CREATE TABLE GSISSH_EXPORT
-(
-         SUBMISSION_ID VARCHAR(255) NOT NULL,
-         EXPORT VARCHAR(255),
-         PRIMARY KEY(SUBMISSION_ID, EXPORT),
-         FOREIGN KEY (SUBMISSION_ID) REFERENCES GSISSH_SUBMISSION(SUBMISSION_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE GSISSH_PREJOBCOMMAND
-(
-         SUBMISSION_ID VARCHAR(255) NOT NULL,
-         COMMAND VARCHAR(255),
-         PRIMARY KEY(SUBMISSION_ID, COMMAND),
-         FOREIGN KEY (SUBMISSION_ID) REFERENCES GSISSH_SUBMISSION(SUBMISSION_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE GSISSH_POSTJOBCOMMAND
-(
-         SUBMISSION_ID VARCHAR(255) NOT NULL,
-         COMMAND VARCHAR(255),
-         PRIMARY KEY(SUBMISSION_ID, COMMAND),
-         FOREIGN KEY (SUBMISSION_ID) REFERENCES GSISSH_SUBMISSION(SUBMISSION_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE GLOBUS_SUBMISSION
-(
-         SUBMISSION_ID VARCHAR(255),
-         RESOURCE_JOB_MANAGER VARCHAR(255),
-         SECURITY_PROTOCAL VARCHAR(255),
-         PRIMARY KEY(SUBMISSION_ID)
-);
-
-CREATE TABLE UNICORE_SUBMISSION
-(
-         SUBMISSION_ID VARCHAR(255),
-         SECURITY_PROTOCAL VARCHAR(255),
-         UNICORE_ENDPOINT_URL VARCHAR(255),
-         PRIMARY KEY(SUBMISSION_ID)
-);
-
-CREATE TABLE UNICORE_DATAMOVEMENT
-(
-         DATAMOVEMENT_ID VARCHAR(255),
-         SECURITY_PROTOCAL VARCHAR(255),
-         UNICORE_ENDPOINT_URL VARCHAR(255),
-         PRIMARY KEY(DATAMOVEMENT_ID)
-);
-
-
-CREATE TABLE GLOBUS_GK_ENDPOINT
-(
-         SUBMISSION_ID VARCHAR(255) NOT NULL,
-         ENDPOINT VARCHAR(255),
-         PRIMARY KEY(SUBMISSION_ID, ENDPOINT),
-         FOREIGN KEY (SUBMISSION_ID) REFERENCES GLOBUS_SUBMISSION(SUBMISSION_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE RESOURCE_JOB_MANAGER
-(
-        RESOURCE_JOB_MANAGER_ID VARCHAR (255) NOT NULL,
-        PUSH_MONITORING_ENDPOINT VARCHAR (255),
-        JOB_MANAGER_BIN_PATH VARCHAR (255),
-        RESOURCE_JOB_MANAGER_TYPE VARCHAR (255) NOT NULL,
-        CREATION_TIME TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
-        UPDATE_TIME TIMESTAMP DEFAULT '0000-00-00 00:00:00',
-        PRIMARY KEY (RESOURCE_JOB_MANAGER_ID)
-);
-
-
-
-CREATE TABLE SSH_JOB_SUBMISSION
-(
-        RESOURCE_JOB_MANAGER_ID VARCHAR (255) NOT NULL,
-        JOB_SUBMISSION_INTERFACE_ID VARCHAR (255) NOT NULL,
-        ALTERNATIVE_SSH_HOSTNAME VARCHAR (255),
-        SECURITY_PROTOCOL VARCHAR (255) NOT NULL,
-        SSH_PORT INTEGER,
-        MONITOR_MODE VARCHAR (255),
-        CREATION_TIME TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
-        UPDATE_TIME TIMESTAMP DEFAULT '0000-00-00 00:00:00',
-        PRIMARY KEY (JOB_SUBMISSION_INTERFACE_ID),
-        FOREIGN KEY (RESOURCE_JOB_MANAGER_ID) REFERENCES RESOURCE_JOB_MANAGER(RESOURCE_JOB_MANAGER_ID)
-);
-
-CREATE TABLE SCP_DATA_MOVEMENT
-(
-        QUEUE_DESCRIPTION VARCHAR (255),
-        DATA_MOVEMENT_INTERFACE_ID VARCHAR (255) NOT NULL,
-        SECURITY_PROTOCOL VARCHAR (255) NOT NULL,
-        ALTERNATIVE_SCP_HOSTNAME VARCHAR (255),
-        SSH_PORT INTEGER,
-        CREATION_TIME TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
-        UPDATE_TIME TIMESTAMP DEFAULT '0000-00-00 00:00:00',
-        PRIMARY KEY (DATA_MOVEMENT_INTERFACE_ID)
-);
-
-CREATE TABLE GRIDFTP_DATA_MOVEMENT
-(
-        DATA_MOVEMENT_INTERFACE_ID VARCHAR (255) NOT NULL,
-        SECURITY_PROTOCOL VARCHAR (255) NOT NULL,
-        CREATION_TIME TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
-        UPDATE_TIME TIMESTAMP DEFAULT '0000-00-00 00:00:00',
-        PRIMARY KEY (DATA_MOVEMENT_INTERFACE_ID)
-);
-
-CREATE TABLE GRIDFTP_ENDPOINT
-(
-        ENDPOINT VARCHAR (255) NOT NULL,
-        DATA_MOVEMENT_INTERFACE_ID VARCHAR (255) NOT NULL,
-        PRIMARY KEY (DATA_MOVEMENT_INTERFACE_ID,ENDPOINT),
-        CREATION_TIME TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
-        UPDATE_TIME TIMESTAMP DEFAULT '0000-00-00 00:00:00',
-        FOREIGN KEY (DATA_MOVEMENT_INTERFACE_ID) REFERENCES GRIDFTP_DATA_MOVEMENT(DATA_MOVEMENT_INTERFACE_ID) ON DELETE CASCADE
-);
-
---CREATE TABLE JOB_SUBMISSION_PROTOCOL
---(
---         RESOURCE_ID VARCHAR(255),
---         SUBMISSION_ID VARCHAR(255),
---         JOB_TYPE VARCHAR(255),
---         CREATION_TIME TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
---         UPDATE_TIME TIMESTAMP DEFAULT '0000-00-00 00:00:00',
---         PRIMARY KEY(RESOURCE_ID,SUBMISSION_ID,JOB_TYPE),
---         FOREIGN KEY (RESOURCE_ID) REFERENCES COMPUTE_RESOURCE(RESOURCE_ID) ON DELETE CASCADE
---);
---
---CREATE TABLE DATA_MOVEMENT_PROTOCOL
---(
---         RESOURCE_ID VARCHAR(255),
---         DATA_MOVE_ID VARCHAR(255),
---         DATA_MOVE_TYPE VARCHAR(255),
---         CREATION_TIME TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
---         UPDATE_TIME TIMESTAMP DEFAULT '0000-00-00 00:00:00',
---         PRIMARY KEY(RESOURCE_ID,DATA_MOVE_ID,DATA_MOVE_TYPE),
---         FOREIGN KEY (RESOURCE_ID) REFERENCES COMPUTE_RESOURCE(RESOURCE_ID) ON DELETE CASCADE
---);
-
-CREATE TABLE APPLICATION_MODULE
-(
-         MODULE_ID VARCHAR(255),
-         MODULE_NAME VARCHAR(255),
-         MODULE_VERSION VARCHAR(255),
-         MODULE_DESC VARCHAR(500),
-         GATEWAY_ID VARCHAR (255) NOT NULL,
-         CREATION_TIME TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL,
-         UPDATE_TIME TIMESTAMP DEFAULT '0000-00-00 00:00:00' NOT NULL,
-         PRIMARY KEY(MODULE_ID)
-);
-
-CREATE TABLE APPLICATION_DEPLOYMENT
-(
-         DEPLOYMENT_ID VARCHAR(255),
-         APP_MODULE_ID VARCHAR(255) NOT NULL,
-         COMPUTE_HOSTID VARCHAR(255) NOT NULL,
-         EXECUTABLE_PATH VARCHAR(255),
-	       PARALLELISM VARCHAR(255),
-         APPLICATION_DESC VARCHAR(255),
-         ENV_MODULE_LOAD_CMD VARCHAR(255),
-         CREATION_TIME TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL,
-         UPDATE_TIME TIMESTAMP DEFAULT '0000-00-00 00:00:00' NOT NULL,
-         GATEWAY_ID VARCHAR(255) NOT NULL,
-         DEFAULT_QUEUE_NAME VARCHAR(255),
-         DEFAULT_NODE_COUNT INTEGER,
-         DEFAULT_CPU_COUNT INTEGER,
-         DEFAULT_WALLTIME INTEGER,
-         EDITABLE_BY_USER SMALLINT,
-         PRIMARY KEY(DEPLOYMENT_ID),
-         FOREIGN KEY (COMPUTE_HOSTID) REFERENCES COMPUTE_RESOURCE(RESOURCE_ID) ON DELETE CASCADE,
-         FOREIGN KEY (APP_MODULE_ID) REFERENCES APPLICATION_MODULE(MODULE_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE MODULE_LOAD_CMD
-(
-        CMD VARCHAR (255) NOT NULL,
-        APP_DEPLOYMENT_ID VARCHAR (255) NOT NULL,
-        COMMAND_ORDER INTEGER,
-        PRIMARY KEY (APP_DEPLOYMENT_ID,CMD),
-        FOREIGN KEY (APP_DEPLOYMENT_ID) REFERENCES APPLICATION_DEPLOYMENT(DEPLOYMENT_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE PREJOB_COMMAND
-(
-         APPDEPLOYMENT_ID VARCHAR(255) NOT NULL,
-         COMMAND VARCHAR(255),
-         COMMAND_ORDER INTEGER,
-         PRIMARY KEY(APPDEPLOYMENT_ID, COMMAND),
-         FOREIGN KEY (APPDEPLOYMENT_ID) REFERENCES APPLICATION_DEPLOYMENT(DEPLOYMENT_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE POSTJOB_COMMAND
-(
-         APPDEPLOYMENT_ID VARCHAR(255) NOT NULL,
-         COMMAND VARCHAR(255),
-         COMMAND_ORDER INTEGER,
-         PRIMARY KEY(APPDEPLOYMENT_ID, COMMAND),
-         FOREIGN KEY (APPDEPLOYMENT_ID) REFERENCES APPLICATION_DEPLOYMENT(DEPLOYMENT_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE LIBRARY_PREPAND_PATH
-(
-         DEPLOYMENT_ID VARCHAR(255) NOT NULL,
-         NAME VARCHAR(255),
-         VALUE VARCHAR(255),
-         PRIMARY KEY(DEPLOYMENT_ID, NAME),
-         FOREIGN KEY (DEPLOYMENT_ID) REFERENCES APPLICATION_DEPLOYMENT(DEPLOYMENT_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE LIBRARY_APEND_PATH
-(
-         DEPLOYMENT_ID VARCHAR(255) NOT NULL,
-         NAME VARCHAR(255),
-         VALUE VARCHAR(255),
-         PRIMARY KEY(DEPLOYMENT_ID, NAME),
-         FOREIGN KEY (DEPLOYMENT_ID) REFERENCES APPLICATION_DEPLOYMENT(DEPLOYMENT_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE APP_ENVIRONMENT
-(
-         DEPLOYMENT_ID VARCHAR(255) NOT NULL,
-         NAME VARCHAR(255),
-         VALUE VARCHAR(255),
-         ENV_ORDER INTEGER,
-         PRIMARY KEY(DEPLOYMENT_ID, NAME),
-         FOREIGN KEY (DEPLOYMENT_ID) REFERENCES APPLICATION_DEPLOYMENT(DEPLOYMENT_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE APPLICATION_INTERFACE
-(
-         INTERFACE_ID VARCHAR(255),
-         APPLICATION_NAME VARCHAR(255),
-         APPLICATION_DESCRIPTION VARCHAR(500),
-         GATEWAY_ID VARCHAR(255) NOT NULL,
-         ARCHIVE_WORKING_DIRECTORY SMALLINT,
-         HAS_OPTIONAL_FILE_INPUTS SMALLINT,
-         CREATION_TIME TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL,
-         UPDATE_TIME TIMESTAMP DEFAULT '0000-00-00 00:00:00' NOT NULL,
-         PRIMARY KEY(INTERFACE_ID)
-);
-
-CREATE TABLE APP_MODULE_MAPPING
-(
-         INTERFACE_ID VARCHAR(255) NOT NULL,
-         MODULE_ID VARCHAR(255) NOT NULL,
-         PRIMARY KEY(INTERFACE_ID, MODULE_ID),
-         FOREIGN KEY (INTERFACE_ID) REFERENCES APPLICATION_INTERFACE(INTERFACE_ID) ON DELETE CASCADE,
-         FOREIGN KEY (MODULE_ID) REFERENCES APPLICATION_MODULE(MODULE_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE APPLICATION_INPUT
-(
-         INTERFACE_ID VARCHAR(255) NOT NULL,
-         INPUT_KEY VARCHAR(255),
-         INPUT_VALUE VARCHAR(255),
-         DATA_TYPE VARCHAR(255),
-         METADATA VARCHAR(4096),
-         APP_ARGUMENT VARCHAR(255),
-         STANDARD_INPUT SMALLINT,
-         USER_FRIENDLY_DESC VARCHAR(255),
-         INPUT_ORDER INTEGER,
-         IS_REQUIRED SMALLINT,
-         REQUIRED_TO_COMMANDLINE SMALLINT,
-         DATA_STAGED SMALLINT,
-         IS_READ_ONLY SMALLINT,
-         PRIMARY KEY(INTERFACE_ID,INPUT_KEY),
-         FOREIGN KEY (INTERFACE_ID) REFERENCES APPLICATION_INTERFACE(INTERFACE_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE APPLICATION_OUTPUT
-(
-         INTERFACE_ID VARCHAR(255) NOT NULL,
-         OUTPUT_KEY VARCHAR(255),
-         OUTPUT_VALUE VARCHAR(255),
-         DATA_TYPE VARCHAR(255),
-         IS_REQUIRED SMALLINT,
-         REQUIRED_TO_COMMANDLINE SMALLINT,
-         DATA_MOVEMENT SMALLINT,
-         DATA_NAME_LOCATION VARCHAR(255),
-         SEARCH_QUERY VARCHAR(255),
-         APP_ARGUMENT VARCHAR(255),
-         OUTPUT_STREAMING SMALLINT,
-         PRIMARY KEY(INTERFACE_ID,OUTPUT_KEY),
-         FOREIGN KEY (INTERFACE_ID) REFERENCES APPLICATION_INTERFACE(INTERFACE_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE GATEWAY_PROFILE
-(
-         GATEWAY_ID VARCHAR(255),
-         CREATION_TIME TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
-         UPDATE_TIME TIMESTAMP DEFAULT '0000-00-00 00:00:00',
-         CS_TOKEN VARCHAR (255),
-         IDENTITY_SERVER_TENANT VARCHAR (255),
-         IDENTITY_SERVER_PWD_CRED_TOKEN VARCHAR (255),
-         PRIMARY KEY(GATEWAY_ID)
-);
-
-CREATE TABLE COMPUTE_RESOURCE_PREFERENCE
-(
-        GATEWAY_ID VARCHAR(255) NOT NULL,
-        RESOURCE_ID VARCHAR(255) NOT NULL,
-        OVERRIDE_BY_AIRAVATA SMALLINT,
-        PREFERED_JOB_SUB_PROTOCOL VARCHAR(255),
-        PREFERED_DATA_MOVE_PROTOCOL VARCHAR(255),
-        PREFERED_BATCH_QUEUE VARCHAR(255),
-        SCRATCH_LOCATION VARCHAR(255),
-        ALLOCATION_PROJECT_NUMBER VARCHAR(255),
-        LOGIN_USERNAME VARCHAR(255),
-        RESOURCE_CS_TOKEN VARCHAR(255),
-        USAGE_REPORTING_GATEWAY_ID VARCHAR(255),
-        QUALITY_OF_SERVICE VARCHAR(255),
-        RESERVATION VARCHAR (255),
-        RESERVATION_START_TIME timestamp,
-        RESERVATION_END_TIME timestamp,
-        SSH_ACCOUNT_PROVISIONER VARCHAR(255),
-        SSH_ACCOUNT_PROVISIONER_ADDITIONAL_INFO VARCHAR(1000),
-        PRIMARY KEY(GATEWAY_ID,RESOURCE_ID),
-        FOREIGN KEY (RESOURCE_ID) REFERENCES COMPUTE_RESOURCE(RESOURCE_ID) ON DELETE CASCADE,
-        FOREIGN KEY (GATEWAY_ID) REFERENCES GATEWAY_PROFILE(GATEWAY_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE SSH_ACCOUNT_PROVISIONER_CONFIG
-(
-        GATEWAY_ID VARCHAR(255) NOT NULL,
-        RESOURCE_ID VARCHAR(255) NOT NULL,
-        CONFIG_NAME VARCHAR(255) NOT NULL,
-        CONFIG_VALUE VARCHAR(255),
-        PRIMARY KEY (GATEWAY_ID, RESOURCE_ID, CONFIG_NAME),
-        FOREIGN KEY (GATEWAY_ID, RESOURCE_ID) REFERENCES COMPUTE_RESOURCE_PREFERENCE (GATEWAY_ID, RESOURCE_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE BATCH_QUEUE
-(
-        COMPUTE_RESOURCE_ID VARCHAR(255) NOT NULL,
-        MAX_RUNTIME INTEGER,
-        MAX_JOB_IN_QUEUE INTEGER,
-        QUEUE_DESCRIPTION VARCHAR(255),
-        QUEUE_NAME VARCHAR(255) NOT NULL,
-        MAX_PROCESSORS INTEGER,
-        MAX_NODES INTEGER,
-        MAX_MEMORY INTEGER,
-        CPU_PER_NODE INTEGER,
-        DEFAULT_NODE_COUNT INTEGER,
-        DEFAULT_CPU_COUNT INTEGER,
-        DEFAULT_WALLTIME INTEGER,
-        QUEUE_SPECIFIC_MACROS VARCHAR(255),
-        IS_DEFAULT_QUEUE SMALLINT,
-        PRIMARY KEY (COMPUTE_RESOURCE_ID,QUEUE_NAME),
-        FOREIGN KEY (COMPUTE_RESOURCE_ID) REFERENCES COMPUTE_RESOURCE(RESOURCE_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE COMPUTE_RESOURCE_FILE_SYSTEM
-(
-        COMPUTE_RESOURCE_ID VARCHAR (255) NOT NULL,
-        PATH VARCHAR (255),
-        FILE_SYSTEM VARCHAR (255) NOT NULL,
-        PRIMARY KEY (COMPUTE_RESOURCE_ID,FILE_SYSTEM),
-        FOREIGN KEY (COMPUTE_RESOURCE_ID) REFERENCES COMPUTE_RESOURCE(RESOURCE_ID) ON DELETE CASCADE
-  );
-
-CREATE TABLE JOB_SUBMISSION_INTERFACE
-(
-        JOB_SUBMISSION_INTERFACE_ID VARCHAR (255) NOT NULL,
-        COMPUTE_RESOURCE_ID VARCHAR (255) NOT NULL,
-        JOB_SUBMISSION_PROTOCOL VARCHAR (255) NOT NULL,
-        PRIORITY_ORDER INTEGER,
-        CREATION_TIME TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
-        UPDATE_TIME TIMESTAMP DEFAULT '0000-00-00 00:00:00',
-        PRIMARY KEY (COMPUTE_RESOURCE_ID,JOB_SUBMISSION_INTERFACE_ID),
-        FOREIGN KEY (COMPUTE_RESOURCE_ID) REFERENCES COMPUTE_RESOURCE(RESOURCE_ID) ON DELETE CASCADE
-);
- 
-CREATE TABLE DATA_MOVEMENT_INTERFACE
-(
-        COMPUTE_RESOURCE_ID VARCHAR (255) NOT NULL,
-        DATA_MOVEMENT_PROTOCOL VARCHAR (255) NOT NULL,
-        DATA_MOVEMENT_INTERFACE_ID VARCHAR (255) NOT NULL,
-        PRIORITY_ORDER INTEGER,
-        CREATION_TIME TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
-        UPDATE_TIME TIMESTAMP DEFAULT '0000-00-00 00:00:00',
-        PRIMARY KEY (COMPUTE_RESOURCE_ID,DATA_MOVEMENT_INTERFACE_ID),
-        FOREIGN KEY (COMPUTE_RESOURCE_ID) REFERENCES COMPUTE_RESOURCE(RESOURCE_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE STORAGE_RESOURCE
-(
-        STORAGE_RESOURCE_ID VARCHAR (255) NOT NULL,
-        HOST_NAME VARCHAR (255) NOT NULL,
-        DESCRIPTION VARCHAR (255),
-        ENABLED SMALLINT ,
-        CREATION_TIME TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
-        UPDATE_TIME TIMESTAMP DEFAULT '0000-00-00 00:00:00',
-        PRIMARY KEY (STORAGE_RESOURCE_ID)
-);
-
-CREATE TABLE STORAGE_INTERFACE
-(
-        STORAGE_RESOURCE_ID VARCHAR (255) NOT NULL,
-        DATA_MOVEMENT_INTERFACE_ID VARCHAR (255) NOT NULL,
-        DATA_MOVEMENT_PROTOCOL VARCHAR (255) NOT NULL,
-        PRIORITY_ORDER INTEGER,
-        CREATION_TIME TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
-        UPDATE_TIME TIMESTAMP DEFAULT '0000-00-00 00:00:00',
-        PRIMARY KEY (STORAGE_RESOURCE_ID,DATA_MOVEMENT_INTERFACE_ID),
-        FOREIGN KEY (STORAGE_RESOURCE_ID) REFERENCES STORAGE_RESOURCE(STORAGE_RESOURCE_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE JOB_MANAGER_COMMAND
-(
-        RESOURCE_JOB_MANAGER_ID VARCHAR (255) NOT NULL,
-        COMMAND_TYPE VARCHAR (255) NOT NULL,
-        COMMAND VARCHAR (255),
-        PRIMARY KEY (RESOURCE_JOB_MANAGER_ID,COMMAND_TYPE),
-        FOREIGN KEY (RESOURCE_JOB_MANAGER_ID) REFERENCES RESOURCE_JOB_MANAGER(RESOURCE_JOB_MANAGER_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE PARALLELISM_COMMAND
-(
-        RESOURCE_JOB_MANAGER_ID VARCHAR (255) NOT NULL,
-        COMMAND_TYPE VARCHAR (255) NOT NULL,
-        COMMAND VARCHAR (255),
-        PRIMARY KEY (RESOURCE_JOB_MANAGER_ID,COMMAND_TYPE),
-        FOREIGN KEY (RESOURCE_JOB_MANAGER_ID) REFERENCES RESOURCE_JOB_MANAGER(RESOURCE_JOB_MANAGER_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE LOCAL_SUBMISSION
-(
-        RESOURCE_JOB_MANAGER_ID VARCHAR (255) NOT NULL,
-        JOB_SUBMISSION_INTERFACE_ID VARCHAR (255) NOT NULL,
-        SECURITY_PROTOCOL VARCHAR (255) NOT NULL,
-        CREATION_TIME TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
-        UPDATE_TIME TIMESTAMP DEFAULT '0000-00-00 00:00:00',
-        PRIMARY KEY (JOB_SUBMISSION_INTERFACE_ID),
-        FOREIGN KEY (RESOURCE_JOB_MANAGER_ID) REFERENCES RESOURCE_JOB_MANAGER(RESOURCE_JOB_MANAGER_ID)
-);
-
-CREATE TABLE LOCAL_DATA_MOVEMENT
-(
-  DATA_MOVEMENT_INTERFACE_ID VARCHAR (255) NOT NULL,
-  PRIMARY KEY (DATA_MOVEMENT_INTERFACE_ID)
-);
-
-CREATE TABLE STORAGE_PREFERENCE
-(
-        GATEWAY_ID VARCHAR(255) NOT NULL,
-        STORAGE_RESOURCE_ID VARCHAR(255) NOT NULL,
-        LOGIN_USERNAME VARCHAR(255),
-        FS_ROOT_LOCATION VARCHAR(255),
-        RESOURCE_CS_TOKEN VARCHAR(255),
-        PRIMARY KEY(GATEWAY_ID,STORAGE_RESOURCE_ID),
-        FOREIGN KEY (GATEWAY_ID) REFERENCES GATEWAY_PROFILE(GATEWAY_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE USER_RESOURCE_PROFILE (
-  USER_ID varchar(255) NOT NULL,
-  CREATION_TIME TIMESTAMP DEFAULT NULL,
-  CS_TOKEN varchar(255) DEFAULT NULL,
-  GATEWAY_ID varchar(255) DEFAULT NULL,
-  IDENTITY_SERVER_PWD_CRED_TOKEN varchar(255) DEFAULT NULL,
-  IDENTITY_SERVER_TENANT varchar(255) DEFAULT NULL,
-  UPDATE_TIME TIMESTAMP DEFAULT NULL,
-  PRIMARY KEY (USER_ID,GATEWAY_ID)
-);
-
-CREATE TABLE USER_STORAGE_PREFERENCE (
-  STORAGE_RESOURCE_ID varchar(255) NOT NULL,
-  USER_ID varchar(255) NOT NULL,
-  RESOURCE_CS_TOKEN varchar(255) DEFAULT NULL,
-  FS_ROOT_LOCATION varchar(255) DEFAULT NULL,
-  GATEWAY_ID varchar(255) DEFAULT NULL,
-  LOGIN_USERNAME varchar(255) DEFAULT NULL,
-  PRIMARY KEY (STORAGE_RESOURCE_ID,USER_ID,GATEWAY_ID)
-);
-
-CREATE TABLE USER_COMPUTE_RESOURCE_PREFERENCE (
-  RESOURCE_ID varchar(255) NOT NULL,
-  USER_ID varchar(255) NOT NULL,
-  PREFERED_BATCH_QUEUE varchar(255) DEFAULT NULL,
-  RESOURCE_CS_TOKEN varchar(255) DEFAULT NULL,
-  GATEWAY_ID varchar(255) DEFAULT NULL,
-  LOGIN_USERNAME varchar(255) DEFAULT NULL,
-  ALLOCATION_PROJECT_NUMBER varchar(255) DEFAULT NULL,
-  QUALITY_OF_SERVICE varchar(255) DEFAULT NULL,
-  RESERVATION varchar(255) DEFAULT NULL,
-  RESERVATION_END_TIME TIMESTAMP DEFAULT NULL,
-  RESERVATION_START_TIME TIMESTAMP DEFAULT NULL,
-  SCRATCH_LOCATION varchar(255) DEFAULT NULL,
-  VALIDATED SMALLINT NOT NULL DEFAULT 0,
-  PRIMARY KEY (RESOURCE_ID,USER_ID,GATEWAY_ID)
-);
-
-CREATE TABLE GROUP_RESOURCE_PROFILE (
-  GATEWAY_ID varchar(255) NOT NULL,
-  GROUP_RESOURCE_PROFILE_ID varchar(255) NOT NULL,
-  GROUP_RESOURCE_PROFILE_NAME varchar(255) DEFAULT NULL,
-  CREATION_TIME BIGINT NOT NULL,
-  UPDATE_TIME BIGINT NOT NULL,
-  DEFAULT_CREDENTIAL_STORE_TOKEN varchar(255) DEFAULT NULL,
-  PRIMARY KEY (GROUP_RESOURCE_PROFILE_ID),
-  UNIQUE (GATEWAY_ID, GROUP_RESOURCE_PROFILE_NAME)
-);
-
-CREATE TABLE BATCH_QUEUE_RESOURCE_POLICY (
-  RESOURCE_POLICY_ID varchar(255) NOT NULL,
-  COMPUTE_RESOURCE_ID varchar(255) NOT NULL,
-  GROUP_RESOURCE_PROFILE_ID varchar(255) NOT NULL,
-  QUEUE_NAME varchar(255) NOT NULL,
-  MAX_ALLOWED_NODES INTEGER,
-  MAX_ALLOWED_CORES INTEGER,
-  MAX_ALLOWED_WALLTIME INTEGER,
-  PRIMARY KEY (RESOURCE_POLICY_ID),
-  FOREIGN KEY (COMPUTE_RESOURCE_ID) REFERENCES COMPUTE_RESOURCE(RESOURCE_ID) ON DELETE CASCADE,
-  FOREIGN KEY (GROUP_RESOURCE_PROFILE_ID) REFERENCES GROUP_RESOURCE_PROFILE(GROUP_RESOURCE_PROFILE_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE COMPUTE_RESOURCE_POLICY (
-    RESOURCE_POLICY_ID varchar(255) NOT NULL,
-    COMPUTE_RESOURCE_ID varchar(255) NOT NULL,
-    GROUP_RESOURCE_PROFILE_ID varchar(255) NOT NULL,
-    PRIMARY KEY (RESOURCE_POLICY_ID),
-    FOREIGN KEY (COMPUTE_RESOURCE_ID) REFERENCES COMPUTE_RESOURCE(RESOURCE_ID) ON DELETE CASCADE,
-    FOREIGN KEY (GROUP_RESOURCE_PROFILE_ID) REFERENCES GROUP_RESOURCE_PROFILE(GROUP_RESOURCE_PROFILE_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE COMPUTE_RESOURCE_POLICY_QUEUES (
-    RESOURCE_POLICY_ID varchar(255) NOT NULL,
-    QUEUE_NAME varchar(255) NOT NULL,
-    PRIMARY KEY (RESOURCE_POLICY_ID, QUEUE_NAME),
-    FOREIGN KEY (RESOURCE_POLICY_ID) REFERENCES COMPUTE_RESOURCE_POLICY(RESOURCE_POLICY_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE GROUP_COMPUTE_RESOURCE_PREFERENCE
-(
-        RESOURCE_ID VARCHAR(255) NOT NULL,
-        GROUP_RESOURCE_PROFILE_ID varchar(255) NOT NULL,
-        OVERRIDE_BY_AIRAVATA SMALLINT,
-        PREFERED_JOB_SUB_PROTOCOL VARCHAR(255),
-        PREFERED_DATA_MOVE_PROTOCOL VARCHAR(255),
-        PREFERED_BATCH_QUEUE VARCHAR(255),
-        SCRATCH_LOCATION VARCHAR(255),
-        ALLOCATION_PROJECT_NUMBER VARCHAR(255),
-        LOGIN_USERNAME VARCHAR(255),
-        RESOURCE_CS_TOKEN VARCHAR(255),
-        USAGE_REPORTING_GATEWAY_ID VARCHAR(255),
-        QUALITY_OF_SERVICE VARCHAR(255),
-        RESERVATION VARCHAR (255),
-        RESERVATION_START_TIME timestamp,
-        RESERVATION_END_TIME timestamp,
-        SSH_ACCOUNT_PROVISIONER VARCHAR(255),
-        SSH_ACCOUNT_PROVISIONER_ADDITIONAL_INFO VARCHAR(1000),
-        PRIMARY KEY(RESOURCE_ID,GROUP_RESOURCE_PROFILE_ID),
-        FOREIGN KEY (RESOURCE_ID) REFERENCES COMPUTE_RESOURCE(RESOURCE_ID) ON DELETE CASCADE,
-        FOREIGN KEY (GROUP_RESOURCE_PROFILE_ID) REFERENCES GROUP_RESOURCE_PROFILE(GROUP_RESOURCE_PROFILE_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE GRP_SSH_ACC_PROV_CONFIG
-(
-        RESOURCE_ID VARCHAR(255) NOT NULL,
-        GROUP_RESOURCE_PROFILE_ID VARCHAR(255) NOT NULL,
-        CONFIG_NAME VARCHAR(255) NOT NULL,
-        CONFIG_VALUE VARCHAR(255),
-        PRIMARY KEY (RESOURCE_ID, CONFIG_NAME, GROUP_RESOURCE_PROFILE_ID),
-        FOREIGN KEY (RESOURCE_ID,GROUP_RESOURCE_PROFILE_ID) REFERENCES GROUP_COMPUTE_RESOURCE_PREFERENCE (RESOURCE_ID,GROUP_RESOURCE_PROFILE_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE PARSING_TEMPLATE
-(
-        PARSING_TEMPLATE_ID VARCHAR(255) NOT NULL,
-        APP_INTERFACE_ID VARCHAR(255) NOT NULL,
-        GATEWAY_ID VARCHAR(255) NOT NULL,
-        PRIMARY KEY (PARSING_TEMPLATE_ID)
-);
-
-CREATE TABLE PARSER
-(
-        PARSER_ID VARCHAR(255) NOT NULL,
-        IMAGE_NAME VARCHAR(255) NOT NULL,
-        OUTPUT_DIR_PATH VARCHAR(255) NOT NULL,
-        INPUT_DIR_PATH VARCHAR(255) NOT NULL,
-        EXECUTION_COMMAND VARCHAR(255) NOT NULL,
-        GATEWAY_ID VARCHAR(255) NOT NULL,
-        PRIMARY KEY (PARSER_ID)
-);
-
-CREATE TABLE PARSER_OUTPUT
-(
-        PARSER_OUTPUT_ID VARCHAR(255) NOT NULL,
-        PARSER_OUTPUT_NAME VARCHAR(255) NOT NULL,
-        PARSER_OUTPUT_REQUIRED SMALLINT NOT NULL,
-        PARSER_ID VARCHAR(255) NOT NULL,
-        OUTPUT_TYPE VARCHAR(255) NOT NULL,
-        PRIMARY KEY (PARSER_OUTPUT_ID),
-        FOREIGN KEY (PARSER_ID) REFERENCES PARSER (PARSER_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE PARSER_INPUT
-(
-        PARSER_INPUT_ID VARCHAR(255) NOT NULL,
-        PARSER_INPUT_NAME VARCHAR(255) NOT NULL,
-        PARSER_INPUT_REQUIRED SMALLINT NOT NULL,
-        PARSER_ID VARCHAR(255) NOT NULL,
-        INPUT_TYPE VARCHAR(255) NOT NULL,
-        PRIMARY KEY (PARSER_INPUT_ID),
-        FOREIGN KEY (PARSER_ID) REFERENCES PARSER (PARSER_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE PARSING_TEMPLATE_INPUT
-(
-        PARSING_TEMPLATE_INPUT_ID VARCHAR(255) NOT NULL,
-        TARGET_PARSER_INPUT_ID VARCHAR(255) NOT NULL,
-        APPLICATION_OUTPUT_NAME VARCHAR(255),
-        VALUE VARCHAR(255),
-        PARSING_TEMPLATE_ID VARCHAR(255) NOT NULL,
-        PRIMARY KEY (PARSING_TEMPLATE_INPUT_ID),
-        FOREIGN KEY (TARGET_PARSER_INPUT_ID) REFERENCES PARSER_INPUT (PARSER_INPUT_ID) ON DELETE CASCADE,
-        FOREIGN KEY (PARSING_TEMPLATE_ID) REFERENCES PARSING_TEMPLATE (PARSING_TEMPLATE_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE PARSER_CONNECTOR
-(
-        PARSER_CONNECTOR_ID VARCHAR(255) NOT NULL,
-        PARENT_PARSER_ID VARCHAR(255) NOT NULL,
-        CHILD_PARSER_ID VARCHAR(255) NOT NULL,
-        PARSING_TEMPLATE_ID VARCHAR(255) NOT NULL,
-        PRIMARY KEY (PARSER_CONNECTOR_ID),
-        FOREIGN KEY (PARENT_PARSER_ID) REFERENCES PARSER (PARSER_ID) ON DELETE CASCADE,
-        FOREIGN KEY (CHILD_PARSER_ID) REFERENCES PARSER (PARSER_ID) ON DELETE CASCADE,
-        FOREIGN KEY (PARSING_TEMPLATE_ID) REFERENCES PARSING_TEMPLATE (PARSING_TEMPLATE_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE PARSER_CONNECTOR_INPUT
-(
-        PARSER_CONNECTOR_INPUT_ID VARCHAR(255) NOT NULL,
-        PARSER_INPUT_ID VARCHAR(255) NOT NULL,
-        PARSER_OUTPUT_ID VARCHAR(255),
-        VALUE VARCHAR(255),
-        PARSER_CONNECTOR_ID VARCHAR(255) NOT NULL,
-        PRIMARY KEY (PARSER_CONNECTOR_INPUT_ID),
-        FOREIGN KEY (PARSER_INPUT_ID) REFERENCES PARSER_INPUT (PARSER_INPUT_ID) ON DELETE CASCADE,
-        FOREIGN KEY (PARSER_OUTPUT_ID) REFERENCES PARSER_OUTPUT (PARSER_OUTPUT_ID) ON DELETE CASCADE,
-        FOREIGN KEY (PARSER_CONNECTOR_ID) REFERENCES PARSER_CONNECTOR (PARSER_CONNECTOR_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE GATEWAY_GROUPS
-(
-        GATEWAY_ID VARCHAR(255) NOT NULL,
-        ADMINS_GROUP_ID VARCHAR(255),
-        READ_ONLY_ADMINS_GROUP_ID VARCHAR(255),
-        DEFAULT_GATEWAY_USERS_GROUP_ID VARCHAR(255),
-        PRIMARY KEY(GATEWAY_ID)
-);
-
-CREATE TABLE CLOUD_JOB_SUBMISSION (
-  JOB_SUBMISSION_INTERFACE_ID varchar(255) NOT NULL,
-  EXECUTABLE_TYPE VARCHAR(255) DEFAULT NULL,
-  NODE_ID VARCHAR(255) DEFAULT NULL,
-  PROVIDER_NAME VARCHAR(255) DEFAULT NULL,
-  SECURITY_PROTOCOL VARCHAR(255) DEFAULT NULL,
-  USER_ACCOUNT_NAME VARCHAR(255) DEFAULT NULL,
-  PRIMARY KEY (JOB_SUBMISSION_INTERFACE_ID)
-);
-
-CREATE TABLE CONFIGURATION
-(
-  CONFIG_KEY VARCHAR(255),
-  CONFIG_VAL VARCHAR(255),
-  PRIMARY KEY(CONFIG_KEY, CONFIG_VAL)
-);
-
-INSERT INTO CONFIGURATION (CONFIG_KEY, CONFIG_VAL) VALUES('app_catalog_version', '0.16');
-
-
-
diff --git a/modules/registry-refactoring/src/main/resources/appcatalog-mysql.sql b/modules/registry-refactoring/src/main/resources/appcatalog-mysql.sql
deleted file mode 100644
index fa68ada..0000000
--- a/modules/registry-refactoring/src/main/resources/appcatalog-mysql.sql
+++ /dev/null
@@ -1,729 +0,0 @@
-/*
- *
- * 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.
- *
- */
-
-/* registry-refactoring: app catalog DB init script */
-CREATE TABLE COMPUTE_RESOURCE
-(
-          RESOURCE_ID VARCHAR (255) NOT NULL,
-          HOST_NAME VARCHAR (255) NOT NULL,
-          RESOURCE_DESCRIPTION VARCHAR (255),
-          CREATION_TIME TIMESTAMP DEFAULT NOW(),
-          UPDATE_TIME TIMESTAMP DEFAULT '0000-00-00 00:00:00',
-          MAX_MEMORY_NODE INTEGER,
-          CPUS_PER_NODE INTEGER,
-          DEFAULT_NODE_COUNT INTEGER,
-          DEFAULT_CPU_COUNT INTEGER,
-          DEFAULT_WALLTIME INTEGER,
-          ENABLED SMALLINT,
-          GATEWAY_USAGE_REPORTING TINYINT(1),
-          GATEWAY_USAGE_MODULE_LOAD_CMD VARCHAR(500),
-          GATEWAY_USAGE_EXECUTABLE VARCHAR(255),
-          PRIMARY KEY (RESOURCE_ID)
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-CREATE TABLE HOST_ALIAS
-(
-         RESOURCE_ID VARCHAR(255) NOT NULL,
-         ALIAS VARCHAR(255),
-         PRIMARY KEY(RESOURCE_ID,ALIAS),
-         FOREIGN KEY (RESOURCE_ID) REFERENCES COMPUTE_RESOURCE(RESOURCE_ID) ON DELETE CASCADE
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-CREATE TABLE HOST_IPADDRESS
-(
-         RESOURCE_ID VARCHAR(255) NOT NULL,
-         IP_ADDRESS VARCHAR(255),
-         PRIMARY KEY(RESOURCE_ID,IP_ADDRESS),
-         FOREIGN KEY (RESOURCE_ID) REFERENCES COMPUTE_RESOURCE(RESOURCE_ID) ON DELETE CASCADE
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-CREATE TABLE GSISSH_SUBMISSION
-(
-         SUBMISSION_ID VARCHAR(255),
-         RESOURCE_JOB_MANAGER VARCHAR(255),
-         SSH_PORT INTEGER,
-         INSTALLED_PATH VARCHAR(255),
-         MONITOR_MODE VARCHAR(255),
-         PRIMARY KEY(SUBMISSION_ID)
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-CREATE TABLE GSISSH_EXPORT
-(
-         SUBMISSION_ID VARCHAR(255) NOT NULL,
-         EXPORT VARCHAR(255),
-         PRIMARY KEY(SUBMISSION_ID, EXPORT),
-         FOREIGN KEY (SUBMISSION_ID) REFERENCES GSISSH_SUBMISSION(SUBMISSION_ID) ON DELETE CASCADE
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-CREATE TABLE GSISSH_PREJOBCOMMAND
-(
-         SUBMISSION_ID VARCHAR(255) NOT NULL,
-         COMMAND VARCHAR(255),
-         PRIMARY KEY(SUBMISSION_ID, COMMAND),
-         FOREIGN KEY (SUBMISSION_ID) REFERENCES GSISSH_SUBMISSION(SUBMISSION_ID) ON DELETE CASCADE
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-CREATE TABLE GSISSH_POSTJOBCOMMAND
-(
-         SUBMISSION_ID VARCHAR(255) NOT NULL,
-         COMMAND VARCHAR(255),
-         PRIMARY KEY(SUBMISSION_ID, COMMAND),
-         FOREIGN KEY (SUBMISSION_ID) REFERENCES GSISSH_SUBMISSION(SUBMISSION_ID) ON DELETE CASCADE
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-CREATE TABLE GLOBUS_SUBMISSION
-(
-         SUBMISSION_ID VARCHAR(255),
-         RESOURCE_JOB_MANAGER VARCHAR(255),
-         SECURITY_PROTOCAL VARCHAR(255),
-         PRIMARY KEY(SUBMISSION_ID)
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-CREATE TABLE UNICORE_SUBMISSION
-(
-         SUBMISSION_ID VARCHAR(255),
-         SECURITY_PROTOCAL VARCHAR(255),
-         UNICORE_ENDPOINT_URL VARCHAR(255),
-         PRIMARY KEY(SUBMISSION_ID)
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-CREATE TABLE UNICORE_DATAMOVEMENT
-(
-         DATAMOVEMENT_ID VARCHAR(255),
-         SECURITY_PROTOCAL VARCHAR(255),
-         UNICORE_ENDPOINT_URL VARCHAR(255),
-         PRIMARY KEY(DATAMOVEMENT_ID)
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-CREATE TABLE GLOBUS_GK_ENDPOINT
-(
-         SUBMISSION_ID VARCHAR(255) NOT NULL,
-         ENDPOINT VARCHAR(255),
-         PRIMARY KEY(SUBMISSION_ID, ENDPOINT),
-         FOREIGN KEY (SUBMISSION_ID) REFERENCES GLOBUS_SUBMISSION(SUBMISSION_ID) ON DELETE CASCADE
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-CREATE TABLE RESOURCE_JOB_MANAGER
-(
-        RESOURCE_JOB_MANAGER_ID VARCHAR (255) NOT NULL,
-        PUSH_MONITORING_ENDPOINT VARCHAR (255),
-        JOB_MANAGER_BIN_PATH VARCHAR (255),
-        RESOURCE_JOB_MANAGER_TYPE VARCHAR (255) NOT NULL,
-        CREATION_TIME TIMESTAMP DEFAULT NOW(),
-        UPDATE_TIME TIMESTAMP DEFAULT '0000-00-00 00:00:00',
-        PRIMARY KEY (RESOURCE_JOB_MANAGER_ID)
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-CREATE TABLE SSH_JOB_SUBMISSION
-(
-        RESOURCE_JOB_MANAGER_ID VARCHAR (255) NOT NULL,
-        JOB_SUBMISSION_INTERFACE_ID VARCHAR (255) NOT NULL,
-        ALTERNATIVE_SSH_HOSTNAME VARCHAR (255),
-        SECURITY_PROTOCOL VARCHAR (255) NOT NULL,
-        SSH_PORT INTEGER,
-        MONITOR_MODE VARCHAR (255),
-        CREATION_TIME TIMESTAMP DEFAULT NOW(),
-        UPDATE_TIME TIMESTAMP DEFAULT '0000-00-00 00:00:00' ,
-        PRIMARY KEY (JOB_SUBMISSION_INTERFACE_ID),
-        FOREIGN KEY (RESOURCE_JOB_MANAGER_ID) REFERENCES RESOURCE_JOB_MANAGER(RESOURCE_JOB_MANAGER_ID)
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-CREATE TABLE SCP_DATA_MOVEMENT
-(
-        QUEUE_DESCRIPTION VARCHAR (255),
-        DATA_MOVEMENT_INTERFACE_ID VARCHAR (255) NOT NULL,
-        SECURITY_PROTOCOL VARCHAR (255) NOT NULL,
-        ALTERNATIVE_SCP_HOSTNAME VARCHAR (255),
-        SSH_PORT INTEGER,
-        CREATION_TIME TIMESTAMP DEFAULT NOW(),
-        UPDATE_TIME TIMESTAMP DEFAULT '0000-00-00 00:00:00' ,
-        PRIMARY KEY (DATA_MOVEMENT_INTERFACE_ID)
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-CREATE TABLE GRIDFTP_DATA_MOVEMENT
-(
-        DATA_MOVEMENT_INTERFACE_ID VARCHAR (255) NOT NULL,
-        SECURITY_PROTOCOL VARCHAR (255) NOT NULL,
-        CREATION_TIME TIMESTAMP DEFAULT NOW(),
-        UPDATE_TIME TIMESTAMP DEFAULT '0000-00-00 00:00:00' ,
-        PRIMARY KEY (DATA_MOVEMENT_INTERFACE_ID)
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-CREATE TABLE GRIDFTP_ENDPOINT
-(
-        ENDPOINT VARCHAR (255) NOT NULL,
-        DATA_MOVEMENT_INTERFACE_ID VARCHAR (255) NOT NULL,
-        PRIMARY KEY (DATA_MOVEMENT_INTERFACE_ID,ENDPOINT),
-        CREATION_TIME TIMESTAMP DEFAULT NOW(),
-        UPDATE_TIME TIMESTAMP DEFAULT '0000-00-00 00:00:00' ,
-        FOREIGN KEY (DATA_MOVEMENT_INTERFACE_ID) REFERENCES GRIDFTP_DATA_MOVEMENT(DATA_MOVEMENT_INTERFACE_ID) ON DELETE CASCADE
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
---CREATE TABLE JOB_SUBMISSION_PROTOCOL
---(
---         RESOURCE_ID VARCHAR(255),
---         SUBMISSION_ID VARCHAR(255),
---         JOB_TYPE VARCHAR(255),
---         PRIMARY KEY(RESOURCE_ID,SUBMISSION_ID,JOB_TYPE),
---         FOREIGN KEY (RESOURCE_ID) REFERENCES COMPUTE_RESOURCE(RESOURCE_ID) ON DELETE CASCADE
---);
---
---CREATE TABLE DATA_MOVEMENT_PROTOCOL
---(
---         RESOURCE_ID VARCHAR(255),
---         DATA_MOVE_ID VARCHAR(255),
---         DATA_MOVE_TYPE VARCHAR(255),
---         PRIMARY KEY(RESOURCE_ID,DATA_MOVE_ID,DATA_MOVE_TYPE),
---         FOREIGN KEY (RESOURCE_ID) REFERENCES COMPUTE_RESOURCE(RESOURCE_ID) ON DELETE CASCADE
---);
-
-CREATE TABLE APPLICATION_MODULE
-(
-         MODULE_ID VARCHAR(255),
-         MODULE_NAME VARCHAR(255),
-         MODULE_VERSION VARCHAR(255),
-         MODULE_DESC VARCHAR(500),
-         GATEWAY_ID VARCHAR (255) NOT NULL,
-         CREATION_TIME TIMESTAMP DEFAULT NOW() NOT NULL,
-         UPDATE_TIME TIMESTAMP DEFAULT '0000-00-00 00:00:00' NOT NULL,
-         PRIMARY KEY(MODULE_ID)
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-CREATE TABLE APPLICATION_DEPLOYMENT
-(
-         DEPLOYMENT_ID VARCHAR(255),
-         APP_MODULE_ID VARCHAR(255) NOT NULL,
-         COMPUTE_HOSTID VARCHAR(255) NOT NULL,
-         EXECUTABLE_PATH VARCHAR(255),
-	       PARALLELISM VARCHAR(255),
-         APPLICATION_DESC VARCHAR(255),
-         ENV_MODULE_LOAD_CMD VARCHAR(255),
-         CREATION_TIME TIMESTAMP DEFAULT NOW() NOT NULL,
-         UPDATE_TIME TIMESTAMP DEFAULT '0000-00-00 00:00:00' NOT NULL,
-         GATEWAY_ID VARCHAR(255) NOT NULL,
-         DEFAULT_QUEUE_NAME VARCHAR(255),
-         DEFAULT_NODE_COUNT INTEGER,
-         DEFAULT_CPU_COUNT INTEGER,
-         DEFAULT_WALLTIME INTEGER,
-         EDITABLE_BY_USER TINYINT(1),
-         PRIMARY KEY(DEPLOYMENT_ID),
-         FOREIGN KEY (COMPUTE_HOSTID) REFERENCES COMPUTE_RESOURCE(RESOURCE_ID) ON DELETE CASCADE,
-         FOREIGN KEY (APP_MODULE_ID) REFERENCES APPLICATION_MODULE(MODULE_ID) ON DELETE CASCADE
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-CREATE TABLE MODULE_LOAD_CMD
-(
-        CMD VARCHAR (255) NOT NULL,
-        APP_DEPLOYMENT_ID VARCHAR (255) NOT NULL,
-        COMMAND_ORDER INTEGER,
-        PRIMARY KEY (APP_DEPLOYMENT_ID,CMD),
-        FOREIGN KEY (APP_DEPLOYMENT_ID) REFERENCES APPLICATION_DEPLOYMENT(DEPLOYMENT_ID) ON DELETE CASCADE
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-CREATE TABLE PREJOB_COMMAND
-(
-         APPDEPLOYMENT_ID VARCHAR(255) NOT NULL,
-         COMMAND VARCHAR(255),
-         COMMAND_ORDER INTEGER,
-         PRIMARY KEY(APPDEPLOYMENT_ID, COMMAND),
-         FOREIGN KEY (APPDEPLOYMENT_ID) REFERENCES APPLICATION_DEPLOYMENT(DEPLOYMENT_ID) ON DELETE CASCADE
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-CREATE TABLE POSTJOB_COMMAND
-(
-         APPDEPLOYMENT_ID VARCHAR(255) NOT NULL,
-         COMMAND VARCHAR(255),
-         COMMAND_ORDER INTEGER,
-         PRIMARY KEY(APPDEPLOYMENT_ID, COMMAND),
-         FOREIGN KEY (APPDEPLOYMENT_ID) REFERENCES APPLICATION_DEPLOYMENT(DEPLOYMENT_ID) ON DELETE CASCADE
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-CREATE TABLE LIBRARY_PREPAND_PATH
-(
-         DEPLOYMENT_ID VARCHAR(255) NOT NULL,
-         NAME VARCHAR(255),
-         VALUE VARCHAR(255),
-         PRIMARY KEY(DEPLOYMENT_ID, NAME),
-         FOREIGN KEY (DEPLOYMENT_ID) REFERENCES APPLICATION_DEPLOYMENT(DEPLOYMENT_ID) ON DELETE CASCADE
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-CREATE TABLE LIBRARY_APEND_PATH
-(
-         DEPLOYMENT_ID VARCHAR(255) NOT NULL,
-         NAME VARCHAR(255),
-         VALUE VARCHAR(255),
-         PRIMARY KEY(DEPLOYMENT_ID, NAME),
-         FOREIGN KEY (DEPLOYMENT_ID) REFERENCES APPLICATION_DEPLOYMENT(DEPLOYMENT_ID) ON DELETE CASCADE
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-CREATE TABLE APP_ENVIRONMENT
-(
-         DEPLOYMENT_ID VARCHAR(255) NOT NULL,
-         NAME VARCHAR(255),
-         VALUE VARCHAR(255),
-         ENV_ORDER INTEGER,
-         PRIMARY KEY(DEPLOYMENT_ID, NAME),
-         FOREIGN KEY (DEPLOYMENT_ID) REFERENCES APPLICATION_DEPLOYMENT(DEPLOYMENT_ID) ON DELETE CASCADE
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-CREATE TABLE APPLICATION_INTERFACE
-(
-         INTERFACE_ID VARCHAR(255),
-         APPLICATION_NAME VARCHAR(255),
-         APPLICATION_DESCRIPTION VARCHAR(500),
-         GATEWAY_ID VARCHAR(255) NOT NULL,
-         ARCHIVE_WORKING_DIRECTORY SMALLINT,
-         HAS_OPTIONAL_FILE_INPUTS TINYINT(1),
-         CREATION_TIME TIMESTAMP DEFAULT NOW() NOT NULL,
-         UPDATE_TIME TIMESTAMP DEFAULT '0000-00-00 00:00:00' NOT NULL,
-         PRIMARY KEY(INTERFACE_ID)
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-CREATE TABLE APP_MODULE_MAPPING
-(
-         INTERFACE_ID VARCHAR(255) NOT NULL,
-         MODULE_ID VARCHAR(255) NOT NULL,
-         PRIMARY KEY(INTERFACE_ID, MODULE_ID),
-         FOREIGN KEY (INTERFACE_ID) REFERENCES APPLICATION_INTERFACE(INTERFACE_ID) ON DELETE CASCADE,
-         FOREIGN KEY (MODULE_ID) REFERENCES APPLICATION_MODULE(MODULE_ID) ON DELETE CASCADE
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-CREATE TABLE APPLICATION_INPUT
-(
-         INTERFACE_ID VARCHAR(255) NOT NULL,
-         INPUT_KEY VARCHAR(255),
-         INPUT_VALUE VARCHAR(255),
-         DATA_TYPE VARCHAR(255),
-         METADATA VARCHAR(4096),
-         APP_ARGUMENT VARCHAR(255),
-         STANDARD_INPUT SMALLINT,
-         USER_FRIENDLY_DESC VARCHAR(255),
-         INPUT_ORDER INTEGER,
-         IS_REQUIRED SMALLINT,
-         REQUIRED_TO_COMMANDLINE SMALLINT,
-         DATA_STAGED SMALLINT,
-         IS_READ_ONLY SMALLINT,
-         PRIMARY KEY(INTERFACE_ID,INPUT_KEY),
-         FOREIGN KEY (INTERFACE_ID) REFERENCES APPLICATION_INTERFACE(INTERFACE_ID) ON DELETE CASCADE
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-CREATE TABLE APPLICATION_OUTPUT
-(
-         INTERFACE_ID VARCHAR(255) NOT NULL,
-         OUTPUT_KEY VARCHAR(255),
-         OUTPUT_VALUE VARCHAR(255),
-         DATA_TYPE VARCHAR(255),
-         IS_REQUIRED SMALLINT,
-         REQUIRED_TO_COMMANDLINE SMALLINT,
-         DATA_MOVEMENT SMALLINT,
-         DATA_NAME_LOCATION VARCHAR(255),
-         SEARCH_QUERY VARCHAR(255),
-         APP_ARGUMENT VARCHAR(255),
-         OUTPUT_STREAMING SMALLINT,
-         PRIMARY KEY(INTERFACE_ID,OUTPUT_KEY),
-         FOREIGN KEY (INTERFACE_ID) REFERENCES APPLICATION_INTERFACE(INTERFACE_ID) ON DELETE CASCADE
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-CREATE TABLE GATEWAY_PROFILE
-(
-         GATEWAY_ID VARCHAR(255),
-	       CREATION_TIME TIMESTAMP DEFAULT NOW(),
-         UPDATE_TIME TIMESTAMP DEFAULT '0000-00-00 00:00:00' ,
-         CS_TOKEN VARCHAR (255),
-         IDENTITY_SERVER_TENANT VARCHAR (255),
-         IDENTITY_SERVER_PWD_CRED_TOKEN VARCHAR (255),
-         PRIMARY KEY(GATEWAY_ID)
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-CREATE TABLE COMPUTE_RESOURCE_PREFERENCE
-(
-        GATEWAY_ID VARCHAR(255) NOT NULL,
-        RESOURCE_ID VARCHAR(255) NOT NULL,
-        OVERRIDE_BY_AIRAVATA SMALLINT,
-        PREFERED_JOB_SUB_PROTOCOL VARCHAR(255),
-        PREFERED_DATA_MOVE_PROTOCOL VARCHAR(255),
-        PREFERED_BATCH_QUEUE VARCHAR(255),
-        SCRATCH_LOCATION VARCHAR(255),
-        ALLOCATION_PROJECT_NUMBER VARCHAR(255),
-        LOGIN_USERNAME VARCHAR(255),
-        RESOURCE_CS_TOKEN VARCHAR(255),
-        USAGE_REPORTING_GATEWAY_ID VARCHAR(255),
-        QUALITY_OF_SERVICE VARCHAR(255),
-        RESERVATION VARCHAR (255),
-        RESERVATION_START_TIME timestamp,
-        RESERVATION_END_TIME timestamp,
-        SSH_ACCOUNT_PROVISIONER VARCHAR(255),
-        SSH_ACCOUNT_PROVISIONER_ADDITIONAL_INFO VARCHAR(1000),
-        PRIMARY KEY(GATEWAY_ID,RESOURCE_ID),
-        FOREIGN KEY (RESOURCE_ID) REFERENCES COMPUTE_RESOURCE(RESOURCE_ID) ON DELETE CASCADE,
-        FOREIGN KEY (GATEWAY_ID) REFERENCES GATEWAY_PROFILE(GATEWAY_ID) ON DELETE CASCADE
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-CREATE TABLE SSH_ACCOUNT_PROVISIONER_CONFIG
-(
-        GATEWAY_ID VARCHAR(255) NOT NULL,
-        RESOURCE_ID VARCHAR(255) NOT NULL,
-        CONFIG_NAME VARCHAR(255) NOT NULL,
-        CONFIG_VALUE VARCHAR(255),
-        PRIMARY KEY (GATEWAY_ID, RESOURCE_ID, CONFIG_NAME),
-        FOREIGN KEY (GATEWAY_ID, RESOURCE_ID) REFERENCES COMPUTE_RESOURCE_PREFERENCE (GATEWAY_ID, RESOURCE_ID) ON DELETE CASCADE
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-CREATE TABLE BATCH_QUEUE
-(
-        COMPUTE_RESOURCE_ID VARCHAR(255) NOT NULL,
-        MAX_RUNTIME INTEGER,
-        MAX_JOB_IN_QUEUE INTEGER,
-        QUEUE_DESCRIPTION VARCHAR(255),
-        QUEUE_NAME VARCHAR(255) NOT NULL,
-        MAX_PROCESSORS INTEGER,
-        MAX_NODES INTEGER,
-        MAX_MEMORY INTEGER,
-        CPU_PER_NODE INTEGER,
-        DEFAULT_NODE_COUNT INTEGER,
-        DEFAULT_CPU_COUNT INTEGER,
-        DEFAULT_WALLTIME INTEGER,
-        QUEUE_SPECIFIC_MACROS VARCHAR(255),
-        IS_DEFAULT_QUEUE TINYINT(1),
-        PRIMARY KEY (COMPUTE_RESOURCE_ID,QUEUE_NAME),
-        FOREIGN KEY (COMPUTE_RESOURCE_ID) REFERENCES COMPUTE_RESOURCE(RESOURCE_ID) ON DELETE CASCADE
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-CREATE TABLE COMPUTE_RESOURCE_FILE_SYSTEM
-(
-        COMPUTE_RESOURCE_ID VARCHAR (255) NOT NULL,
-        PATH VARCHAR (255),
-        FILE_SYSTEM VARCHAR (255) NOT NULL,
-        PRIMARY KEY (COMPUTE_RESOURCE_ID,FILE_SYSTEM),
-        FOREIGN KEY (COMPUTE_RESOURCE_ID) REFERENCES COMPUTE_RESOURCE(RESOURCE_ID) ON DELETE CASCADE
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-CREATE TABLE JOB_SUBMISSION_INTERFACE
-(
-        JOB_SUBMISSION_INTERFACE_ID VARCHAR (255) NOT NULL,
-        COMPUTE_RESOURCE_ID VARCHAR (255) NOT NULL,
-        JOB_SUBMISSION_PROTOCOL VARCHAR (255) NOT NULL,
-        PRIORITY_ORDER INTEGER,
-        CREATION_TIME TIMESTAMP DEFAULT NOW(),
-        UPDATE_TIME TIMESTAMP DEFAULT '0000-00-00 00:00:00',
-        PRIMARY KEY (COMPUTE_RESOURCE_ID,JOB_SUBMISSION_INTERFACE_ID),
-        FOREIGN KEY (COMPUTE_RESOURCE_ID) REFERENCES COMPUTE_RESOURCE(RESOURCE_ID) ON DELETE CASCADE
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
- 
-CREATE TABLE DATA_MOVEMENT_INTERFACE
-(
-        COMPUTE_RESOURCE_ID VARCHAR (255) NOT NULL,
-        DATA_MOVEMENT_PROTOCOL VARCHAR (255) NOT NULL,
-        DATA_MOVEMENT_INTERFACE_ID VARCHAR (255) NOT NULL,
-        PRIORITY_ORDER INTEGER,
-        CREATION_TIME TIMESTAMP DEFAULT NOW(),
-        UPDATE_TIME TIMESTAMP DEFAULT '0000-00-00 00:00:00',
-        PRIMARY KEY (COMPUTE_RESOURCE_ID,DATA_MOVEMENT_INTERFACE_ID),
-        FOREIGN KEY (COMPUTE_RESOURCE_ID) REFERENCES COMPUTE_RESOURCE(RESOURCE_ID) ON DELETE CASCADE
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-CREATE TABLE STORAGE_RESOURCE
-(
-        STORAGE_RESOURCE_ID VARCHAR (255) NOT NULL,
-        HOST_NAME VARCHAR (255) NOT NULL,
-        DESCRIPTION VARCHAR (255),
-        ENABLED SMALLINT,
-        CREATION_TIME TIMESTAMP DEFAULT NOW(),
-        UPDATE_TIME TIMESTAMP DEFAULT '0000-00-00 00:00:00',
-        PRIMARY KEY (STORAGE_RESOURCE_ID)
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-CREATE TABLE STORAGE_INTERFACE
-(
-        STORAGE_RESOURCE_ID VARCHAR (255) NOT NULL,
-        DATA_MOVEMENT_INTERFACE_ID VARCHAR (255) NOT NULL,
-        DATA_MOVEMENT_PROTOCOL VARCHAR (255) NOT NULL,
-        PRIORITY_ORDER INTEGER,
-        CREATION_TIME TIMESTAMP DEFAULT NOW(),
-        UPDATE_TIME TIMESTAMP DEFAULT '0000-00-00 00:00:00',
-        PRIMARY KEY (STORAGE_RESOURCE_ID,DATA_MOVEMENT_INTERFACE_ID),
-        FOREIGN KEY (STORAGE_RESOURCE_ID) REFERENCES STORAGE_RESOURCE(STORAGE_RESOURCE_ID) ON DELETE CASCADE
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-CREATE TABLE JOB_MANAGER_COMMAND
-(
-        RESOURCE_JOB_MANAGER_ID VARCHAR (255) NOT NULL,
-        COMMAND_TYPE VARCHAR (255) NOT NULL,
-        COMMAND VARCHAR (255),
-        PRIMARY KEY (RESOURCE_JOB_MANAGER_ID,COMMAND_TYPE),
-        FOREIGN KEY (RESOURCE_JOB_MANAGER_ID) REFERENCES RESOURCE_JOB_MANAGER(RESOURCE_JOB_MANAGER_ID) ON DELETE CASCADE
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-CREATE TABLE PARALLELISM_COMMAND
-(
-        RESOURCE_JOB_MANAGER_ID VARCHAR (255) NOT NULL,
-        COMMAND_TYPE VARCHAR (255) NOT NULL,
-        COMMAND VARCHAR (255),
-        PRIMARY KEY (RESOURCE_JOB_MANAGER_ID,COMMAND_TYPE),
-        FOREIGN KEY (RESOURCE_JOB_MANAGER_ID) REFERENCES RESOURCE_JOB_MANAGER(RESOURCE_JOB_MANAGER_ID) ON DELETE CASCADE
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-CREATE TABLE LOCAL_SUBMISSION
-(
-        RESOURCE_JOB_MANAGER_ID VARCHAR (255) NOT NULL,
-        JOB_SUBMISSION_INTERFACE_ID VARCHAR (255) NOT NULL,
-        SECURITY_PROTOCOL VARCHAR (255) NOT NULL,
-        CREATION_TIME TIMESTAMP DEFAULT NOW(),
-        UPDATE_TIME TIMESTAMP DEFAULT '0000-00-00 00:00:00',
-        PRIMARY KEY (JOB_SUBMISSION_INTERFACE_ID),
-        FOREIGN KEY (RESOURCE_JOB_MANAGER_ID) REFERENCES RESOURCE_JOB_MANAGER(RESOURCE_JOB_MANAGER_ID)
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-CREATE TABLE LOCAL_DATA_MOVEMENT
-(
-        DATA_MOVEMENT_INTERFACE_ID VARCHAR (255) NOT NULL,
-        PRIMARY KEY (DATA_MOVEMENT_INTERFACE_ID)
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-CREATE TABLE STORAGE_PREFERENCE
-(
-        GATEWAY_ID VARCHAR(255) NOT NULL,
-        STORAGE_RESOURCE_ID VARCHAR(255) NOT NULL,
-        LOGIN_USERNAME VARCHAR(255),
-        FS_ROOT_LOCATION VARCHAR(255),
-        RESOURCE_CS_TOKEN VARCHAR(255),
-        PRIMARY KEY(GATEWAY_ID,STORAGE_RESOURCE_ID),
-        FOREIGN KEY (GATEWAY_ID) REFERENCES GATEWAY_PROFILE(GATEWAY_ID) ON DELETE CASCADE
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-CREATE TABLE USER_RESOURCE_PROFILE (
-  USER_ID varchar(255) NOT NULL,
-  CREATION_TIME datetime DEFAULT NULL,
-  CS_TOKEN varchar(255) DEFAULT NULL,
-  GATEWAY_ID varchar(255) DEFAULT NULL,
-  IDENTITY_SERVER_PWD_CRED_TOKEN varchar(255) DEFAULT NULL,
-  IDENTITY_SERVER_TENANT varchar(255) DEFAULT NULL,
-  UPDATE_TIME datetime DEFAULT NULL,
-  PRIMARY KEY (USER_ID,GATEWAY_ID)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-CREATE TABLE USER_STORAGE_PREFERENCE (
-  STORAGE_RESOURCE_ID varchar(255) NOT NULL,
-  USER_ID varchar(255) NOT NULL,
-  RESOURCE_CS_TOKEN varchar(255) DEFAULT NULL,
-  FS_ROOT_LOCATION varchar(255) DEFAULT NULL,
-  GATEWAY_ID varchar(255) DEFAULT NULL,
-  LOGIN_USERNAME varchar(255) DEFAULT NULL,
-  PRIMARY KEY (STORAGE_RESOURCE_ID,USER_ID,GATEWAY_ID)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-CREATE TABLE USER_COMPUTE_RESOURCE_PREFERENCE (
-  RESOURCE_ID varchar(255) NOT NULL,
-  USER_ID varchar(255) NOT NULL,
-  PREFERED_BATCH_QUEUE varchar(255) DEFAULT NULL,
-  RESOURCE_CS_TOKEN varchar(255) DEFAULT NULL,
-  GATEWAY_ID varchar(255) DEFAULT NULL,
-  LOGIN_USERNAME varchar(255) DEFAULT NULL,
-  ALLOCATION_PROJECT_NUMBER varchar(255) DEFAULT NULL,
-  QUALITY_OF_SERVICE varchar(255) DEFAULT NULL,
-  RESERVATION varchar(255) DEFAULT NULL,
-  RESERVATION_END_TIME datetime DEFAULT NULL,
-  RESERVATION_START_TIME datetime DEFAULT NULL,
-  SCRATCH_LOCATION varchar(255) DEFAULT NULL,
-  VALIDATED TINYINT(1) DEFAULT 0,
-  PRIMARY KEY (RESOURCE_ID,USER_ID,GATEWAY_ID)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-CREATE TABLE GROUP_RESOURCE_PROFILE (
-  GATEWAY_ID varchar(255) NOT NULL,
-  GROUP_RESOURCE_PROFILE_ID varchar(255) NOT NULL,
-  GROUP_RESOURCE_PROFILE_NAME varchar(255) DEFAULT NULL,
-  CREATION_TIME BIGINT NOT NULL,
-  UPDATE_TIME BIGINT NOT NULL,
-  DEFAULT_CREDENTIAL_STORE_TOKEN varchar(255) DEFAULT NULL,
-  PRIMARY KEY (GROUP_RESOURCE_PROFILE_ID),
-  UNIQUE (GATEWAY_ID, GROUP_RESOURCE_PROFILE_NAME)
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-CREATE TABLE BATCH_QUEUE_RESOURCE_POLICY (
-  RESOURCE_POLICY_ID varchar(255) NOT NULL,
-  COMPUTE_RESOURCE_ID varchar(255) NOT NULL,
-  GROUP_RESOURCE_PROFILE_ID varchar(255) NOT NULL,
-  QUEUE_NAME varchar(255) NOT NULL,
-  MAX_ALLOWED_NODES INTEGER,
-  MAX_ALLOWED_CORES INTEGER,
-  MAX_ALLOWED_WALLTIME INTEGER,
-  PRIMARY KEY (RESOURCE_POLICY_ID),
-  FOREIGN KEY (COMPUTE_RESOURCE_ID) REFERENCES COMPUTE_RESOURCE(RESOURCE_ID) ON DELETE CASCADE,
-  FOREIGN KEY (GROUP_RESOURCE_PROFILE_ID) REFERENCES GROUP_RESOURCE_PROFILE(GROUP_RESOURCE_PROFILE_ID) ON DELETE CASCADE
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-CREATE TABLE COMPUTE_RESOURCE_POLICY (
-    RESOURCE_POLICY_ID varchar(255) NOT NULL,
-    COMPUTE_RESOURCE_ID varchar(255) NOT NULL,
-    GROUP_RESOURCE_PROFILE_ID varchar(255) NOT NULL,
-    PRIMARY KEY (RESOURCE_POLICY_ID),
-    FOREIGN KEY (COMPUTE_RESOURCE_ID) REFERENCES COMPUTE_RESOURCE(RESOURCE_ID) ON DELETE CASCADE,
-    FOREIGN KEY (GROUP_RESOURCE_PROFILE_ID) REFERENCES GROUP_RESOURCE_PROFILE(GROUP_RESOURCE_PROFILE_ID) ON DELETE CASCADE
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-CREATE TABLE COMPUTE_RESOURCE_POLICY_QUEUES (
-    RESOURCE_POLICY_ID varchar(255) NOT NULL,
-    QUEUE_NAME varchar(255) NOT NULL,
-    PRIMARY KEY (RESOURCE_POLICY_ID, QUEUE_NAME),
-    FOREIGN KEY (RESOURCE_POLICY_ID) REFERENCES COMPUTE_RESOURCE_POLICY(RESOURCE_POLICY_ID) ON DELETE CASCADE
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-CREATE TABLE GROUP_COMPUTE_RESOURCE_PREFERENCE
-(
-        RESOURCE_ID VARCHAR(255) NOT NULL,
-        GROUP_RESOURCE_PROFILE_ID varchar(255) NOT NULL,
-        OVERRIDE_BY_AIRAVATA SMALLINT,
-        PREFERED_JOB_SUB_PROTOCOL VARCHAR(255),
-        PREFERED_DATA_MOVE_PROTOCOL VARCHAR(255),
-        PREFERED_BATCH_QUEUE VARCHAR(255),
-        SCRATCH_LOCATION VARCHAR(255),
-        ALLOCATION_PROJECT_NUMBER VARCHAR(255),
-        LOGIN_USERNAME VARCHAR(255),
-        RESOURCE_CS_TOKEN VARCHAR(255),
-        USAGE_REPORTING_GATEWAY_ID VARCHAR(255),
-        QUALITY_OF_SERVICE VARCHAR(255),
-        RESERVATION VARCHAR (255),
-        RESERVATION_START_TIME timestamp,
-        RESERVATION_END_TIME timestamp,
-        SSH_ACCOUNT_PROVISIONER VARCHAR(255),
-        SSH_ACCOUNT_PROVISIONER_ADDITIONAL_INFO VARCHAR(1000),
-        PRIMARY KEY(RESOURCE_ID,GROUP_RESOURCE_PROFILE_ID),
-        FOREIGN KEY (RESOURCE_ID) REFERENCES COMPUTE_RESOURCE(RESOURCE_ID) ON DELETE CASCADE,
-        FOREIGN KEY (GROUP_RESOURCE_PROFILE_ID) REFERENCES GROUP_RESOURCE_PROFILE(GROUP_RESOURCE_PROFILE_ID) ON DELETE CASCADE
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-CREATE TABLE GRP_SSH_ACC_PROV_CONFIG
-(
-        RESOURCE_ID VARCHAR(255) NOT NULL,
-        GROUP_RESOURCE_PROFILE_ID VARCHAR(255) NOT NULL,
-        CONFIG_NAME VARCHAR(255) NOT NULL,
-        CONFIG_VALUE VARCHAR(255),
-        PRIMARY KEY (RESOURCE_ID, CONFIG_NAME, GROUP_RESOURCE_PROFILE_ID),
-        FOREIGN KEY (RESOURCE_ID,GROUP_RESOURCE_PROFILE_ID) REFERENCES GROUP_COMPUTE_RESOURCE_PREFERENCE (RESOURCE_ID,GROUP_RESOURCE_PROFILE_ID) ON DELETE CASCADE
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-CREATE TABLE PARSING_TEMPLATE
-(
-        PARSING_TEMPLATE_ID VARCHAR(255) NOT NULL,
-        APP_INTERFACE_ID VARCHAR(255) NOT NULL,
-        GATEWAY_ID VARCHAR(255) NOT NULL,
-        PRIMARY KEY (PARSING_TEMPLATE_ID)
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-CREATE TABLE PARSER
-(
-        PARSER_ID VARCHAR(255) NOT NULL,
-        IMAGE_NAME VARCHAR(255) NOT NULL,
-        OUTPUT_DIR_PATH VARCHAR(255) NOT NULL,
-        INPUT_DIR_PATH VARCHAR(255) NOT NULL,
-        EXECUTION_COMMAND VARCHAR(255) NOT NULL,
-        GATEWAY_ID VARCHAR(255) NOT NULL,
-        PRIMARY KEY (PARSER_ID)
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-CREATE TABLE PARSER_OUTPUT
-(
-        PARSER_OUTPUT_ID VARCHAR(255) NOT NULL,
-        PARSER_OUTPUT_NAME VARCHAR(255) NOT NULL,
-        PARSER_OUTPUT_REQUIRED TINYINT(1) NOT NULL,
-        PARSER_ID VARCHAR(255) NOT NULL,
-        OUTPUT_TYPE VARCHAR(255) NOT NULL,
-        PRIMARY KEY (PARSER_OUTPUT_ID),
-        FOREIGN KEY (PARSER_ID) REFERENCES PARSER (PARSER_ID) ON DELETE CASCADE
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-CREATE TABLE PARSER_INPUT
-(
-        PARSER_INPUT_ID VARCHAR(255) NOT NULL,
-        PARSER_INPUT_NAME VARCHAR(255) NOT NULL,
-        PARSER_INPUT_REQUIRED TINYINT(1) NOT NULL,
-        PARSER_ID VARCHAR(255) NOT NULL,
-        INPUT_TYPE VARCHAR(255) NOT NULL,
-        PRIMARY KEY (PARSER_INPUT_ID),
-        FOREIGN KEY (PARSER_ID) REFERENCES PARSER (PARSER_ID) ON DELETE CASCADE
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-CREATE TABLE PARSING_TEMPLATE_INPUT
-(
-        PARSING_TEMPLATE_INPUT_ID VARCHAR(255) NOT NULL,
-        TARGET_PARSER_INPUT_ID VARCHAR(255) NOT NULL,
-        APPLICATION_OUTPUT_NAME VARCHAR(255),
-        VALUE VARCHAR(255),
-        PARSING_TEMPLATE_ID VARCHAR(255) NOT NULL,
-        PRIMARY KEY (PARSING_TEMPLATE_INPUT_ID),
-        FOREIGN KEY (TARGET_PARSER_INPUT_ID) REFERENCES PARSER_INPUT (PARSER_INPUT_ID) ON DELETE CASCADE,
-        FOREIGN KEY (PARSING_TEMPLATE_ID) REFERENCES PARSING_TEMPLATE (PARSING_TEMPLATE_ID) ON DELETE CASCADE
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-CREATE TABLE PARSER_CONNECTOR
-(
-        PARSER_CONNECTOR_ID VARCHAR(255) NOT NULL,
-        PARENT_PARSER_ID VARCHAR(255) NOT NULL,
-        CHILD_PARSER_ID VARCHAR(255) NOT NULL,
-        PARSING_TEMPLATE_ID VARCHAR(255) NOT NULL,
-        PRIMARY KEY (PARSER_CONNECTOR_ID),
-        FOREIGN KEY (PARENT_PARSER_ID) REFERENCES PARSER (PARSER_ID) ON DELETE CASCADE,
-        FOREIGN KEY (CHILD_PARSER_ID) REFERENCES PARSER (PARSER_ID) ON DELETE CASCADE,
-        FOREIGN KEY (PARSING_TEMPLATE_ID) REFERENCES PARSING_TEMPLATE (PARSING_TEMPLATE_ID) ON DELETE CASCADE
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-CREATE TABLE PARSER_CONNECTOR_INPUT
-(
-        PARSER_CONNECTOR_INPUT_ID VARCHAR(255) NOT NULL,
-        PARSER_INPUT_ID VARCHAR(255) NOT NULL,
-        PARSER_OUTPUT_ID VARCHAR(255),
-        VALUE VARCHAR(255),
-        PARSER_CONNECTOR_ID VARCHAR(255) NOT NULL,
-        PRIMARY KEY (PARSER_CONNECTOR_INPUT_ID),
-        FOREIGN KEY (PARSER_INPUT_ID) REFERENCES PARSER_INPUT (PARSER_INPUT_ID) ON DELETE CASCADE,
-        FOREIGN KEY (PARSER_OUTPUT_ID) REFERENCES PARSER_OUTPUT (PARSER_OUTPUT_ID) ON DELETE CASCADE,
-        FOREIGN KEY (PARSER_CONNECTOR_ID) REFERENCES PARSER_CONNECTOR (PARSER_CONNECTOR_ID) ON DELETE CASCADE
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-CREATE TABLE GATEWAY_GROUPS
-(
-  GATEWAY_ID VARCHAR(255) NOT NULL,
-  ADMINS_GROUP_ID VARCHAR(255),
-  READ_ONLY_ADMINS_GROUP_ID VARCHAR(255),
-  DEFAULT_GATEWAY_USERS_GROUP_ID VARCHAR(255),
-  PRIMARY KEY(GATEWAY_ID)
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-CREATE TABLE CLOUD_JOB_SUBMISSION (
-  JOB_SUBMISSION_INTERFACE_ID varchar(255) NOT NULL,
-  EXECUTABLE_TYPE VARCHAR(255) DEFAULT NULL,
-  NODE_ID VARCHAR(255) DEFAULT NULL,
-  PROVIDER_NAME VARCHAR(255) DEFAULT NULL,
-  SECURITY_PROTOCOL VARCHAR(255) DEFAULT NULL,
-  USER_ACCOUNT_NAME VARCHAR(255) DEFAULT NULL,
-  PRIMARY KEY (JOB_SUBMISSION_INTERFACE_ID)
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-CREATE TABLE CONFIGURATION
-(
-          CONFIG_KEY VARCHAR(255),
-          CONFIG_VAL VARCHAR(255),
-          PRIMARY KEY(CONFIG_KEY, CONFIG_VAL)
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-INSERT INTO CONFIGURATION (CONFIG_KEY, CONFIG_VAL) VALUES('app_catalog_version', '0.16');
-
diff --git a/modules/registry-refactoring/src/main/resources/expcatalog-derby.sql b/modules/registry-refactoring/src/main/resources/expcatalog-derby.sql
deleted file mode 100644
index b791d80..0000000
--- a/modules/registry-refactoring/src/main/resources/expcatalog-derby.sql
+++ /dev/null
@@ -1,404 +0,0 @@
-/*
- *
- * 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.
- *
- */
-
-/* registry-refactoring: experiment catalog DB init script */
-CREATE TABLE GATEWAY
-(
-        GATEWAY_ID VARCHAR(255),
-        GATEWAY_NAME VARCHAR(255),
-	      DOMAIN VARCHAR(255),
-	      EMAIL_ADDRESS VARCHAR(255),
-        GATEWAY_ACRONYM varchar(255),
-        GATEWAY_ADMIN_EMAIL varchar(255),
-        GATEWAY_ADMIN_FIRST_NAME varchar(255),
-        GATEWAY_APPROVAL_STATUS varchar(255),
-        GATEWAY_PUBLIC_ABSTRACT varchar(255),
-        GATEWAY_URL varchar(255),
-        GATEWAY_ADMIN_LAST_NAME varchar(255),
-        IDENTITY_SERVER_PASSWORD_TOKEN varchar(255),
-        IDENTITY_SERVER_USERNAME varchar(255),
-        GATEWAY_REVIEW_PROPOSAL_DESCRIPTION varchar(255),
-        DECLINED_REASON varchar(255),
-        OAUTH_CLIENT_SECRET varchar(255),
-        OAUTH_CLIENT_ID varchar(255),
-        REQUEST_CREATION_TIME TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
-        REQUESTER_USERNAME VARCHAR(255),
-        PRIMARY KEY (GATEWAY_ID)
-);
-
-CREATE TABLE NOTIFICATION
-(
-        NOTIFICATION_ID VARCHAR(255) NOT NULL,
-        GATEWAY_ID VARCHAR(255),
-        TITLE VARCHAR(255),
-        PRIORITY VARCHAR(255),
-        NOTIFICATION_MESSAGE VARCHAR(4096) NOT NULL,
-        PUBLISHED_DATE TIMESTAMP,
-        EXPIRATION_DATE TIMESTAMP,
-        CREATION_DATE TIMESTAMP,
-        PRIMARY KEY (NOTIFICATION_ID)
-);
-
-CREATE TABLE USERS
-(
-        AIRAVATA_INTERNAL_USER_ID VARCHAR(255) NOT NULL,
-        USER_NAME VARCHAR(255),
-        PASSWORD VARCHAR(255),
-        GATEWAY_ID VARCHAR(255) NOT NULL,
-        PRIMARY KEY (GATEWAY_ID, USER_NAME),
-        FOREIGN KEY (GATEWAY_ID) REFERENCES GATEWAY(GATEWAY_ID) ON DELETE CASCADE,
-        UNIQUE (AIRAVATA_INTERNAL_USER_ID)
-);
-
-CREATE TABLE GATEWAY_WORKER
-(
-        GATEWAY_ID VARCHAR(255) NOT NULL,
-        USER_NAME VARCHAR(255),
-        PRIMARY KEY (GATEWAY_ID, USER_NAME),
-        FOREIGN KEY (GATEWAY_ID) REFERENCES GATEWAY(GATEWAY_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE PROJECT
-(
-        GATEWAY_ID VARCHAR(255) NOT NULL,
-        USER_NAME VARCHAR(255),
-        PROJECT_NAME VARCHAR(255),
-        PROJECT_ID VARCHAR(255),
-        DESCRIPTION VARCHAR(255),
-        CREATION_TIME TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
-        PRIMARY KEY (PROJECT_ID),
-        FOREIGN KEY (GATEWAY_ID) REFERENCES GATEWAY(GATEWAY_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE PROJECT_USER
-(
-        PROJECT_ID VARCHAR(255) NOT NULL,
-        USER_NAME VARCHAR(255) NOT NULL,
-        PRIMARY KEY (PROJECT_ID,USER_NAME),
-        FOREIGN KEY (PROJECT_ID) REFERENCES PROJECT(PROJECT_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE EXPERIMENT (
-        EXPERIMENT_ID varchar(255),
-        PROJECT_ID varchar(255) NOT NULL,
-        GATEWAY_ID varchar(255),
-        EXPERIMENT_TYPE varchar(255),
-        USER_NAME varchar(255),
-        EXPERIMENT_NAME varchar(255),
-        CREATION_TIME timestamp DEFAULT CURRENT_TIMESTAMP,
-        DESCRIPTION varchar(255),
-        EXECUTION_ID varchar(255),
-        GATEWAY_EXECUTION_ID varchar(255),
-        GATEWAY_INSTANCE_ID varchar(255),
-        ENABLE_EMAIL_NOTIFICATION SMALLINT,
-        EMAIL_ADDRESSES CLOB,
-        PRIMARY KEY (EXPERIMENT_ID),
-        FOREIGN KEY (PROJECT_ID) REFERENCES PROJECT(PROJECT_ID) ON DELETE CASCADE
-);
-
-
-CREATE TABLE EXPERIMENT_INPUT
-(
-        EXPERIMENT_ID varchar(255) NOT NULL,
-        INPUT_NAME varchar(255),
-        INPUT_VALUE CLOB,
-        DATA_TYPE varchar(255),
-        APPLICATION_ARGUMENT varchar(255),
-        STANDARD_INPUT SMALLINT,
-        USER_FRIENDLY_DESCRIPTION varchar(255),
-        METADATA varchar(4096),
-        INPUT_ORDER INT,
-        IS_REQUIRED SMALLINT,
-        REQUIRED_TO_ADDED_TO_CMD SMALLINT,
-        DATA_STAGED SMALLINT,
-        STORAGE_RESOURCE_ID varchar(255),
-        IS_READ_ONLY SMALLINT,
-        PRIMARY KEY(EXPERIMENT_ID,INPUT_NAME),
-        FOREIGN KEY (EXPERIMENT_ID) REFERENCES EXPERIMENT(EXPERIMENT_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE EXPERIMENT_OUTPUT
-(
-        EXPERIMENT_ID varchar(255) NOT NULL,
-        OUTPUT_NAME varchar(255),
-        OUTPUT_VALUE CLOB,
-        DATA_TYPE varchar(255),
-        APPLICATION_ARGUMENT varchar(255),
-        IS_REQUIRED SMALLINT,
-        REQUIRED_TO_ADDED_TO_CMD SMALLINT,
-        DATA_MOVEMENT SMALLINT,
-        LOCATION varchar(255),
-        SEARCH_QUERY varchar(255),
-        OUTPUT_STREAMING SMALLINT,
-        STORAGE_RESOURCE_ID varchar(255),
-        PRIMARY KEY(EXPERIMENT_ID,OUTPUT_NAME),
-        FOREIGN KEY (EXPERIMENT_ID) REFERENCES EXPERIMENT(EXPERIMENT_ID) ON DELETE CASCADE
-);
-
-
-CREATE TABLE EXPERIMENT_STATUS (
-        STATUS_ID varchar(255),
-        EXPERIMENT_ID varchar(255) NOT NULL,
-        STATE varchar(255),
-        TIME_OF_STATE_CHANGE TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
-        REASON CLOB,
-        PRIMARY KEY (STATUS_ID, EXPERIMENT_ID),
-        FOREIGN KEY (EXPERIMENT_ID) REFERENCES EXPERIMENT(EXPERIMENT_ID) ON DELETE CASCADE
-);
-
-
-CREATE TABLE EXPERIMENT_ERROR (
-        ERROR_ID varchar(255),
-        EXPERIMENT_ID varchar(255) NOT NULL,
-        CREATION_TIME timestamp DEFAULT CURRENT_TIMESTAMP,
-        ACTUAL_ERROR_MESSAGE CLOB,
-        USER_FRIENDLY_MESSAGE CLOB,
-        TRANSIENT_OR_PERSISTENT SMALLINT,
-        ROOT_CAUSE_ERROR_ID_LIST CLOB,
-        PRIMARY KEY (ERROR_ID, EXPERIMENT_ID),
-        FOREIGN KEY (EXPERIMENT_ID) REFERENCES EXPERIMENT(EXPERIMENT_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE USER_CONFIGURATION_DATA (
-        EXPERIMENT_ID varchar(255) NOT NULL,
-        AIRAVATA_AUTO_SCHEDULE SMALLINT,
-        OVERRIDE_MANUAL_SCHEDULED_PARAMS SMALLINT,
-        SHARE_EXPERIMENT_PUBLICALLY SMALLINT,
-        THROTTLE_RESOURCES SMALLINT,
-        USER_DN varchar(255),
-        GENERATE_CERT SMALLINT,
-        RESOURCE_HOST_ID varchar(255),
-        TOTAL_CPU_COUNT INT,
-        NODE_COUNT INT,
-        NUMBER_OF_THREADS INT,
-        QUEUE_NAME varchar(255),
-        WALL_TIME_LIMIT INT,
-        TOTAL_PHYSICAL_MEMORY INT,
-        STATIC_WORKING_DIR varchar(255),
-        OVERRIDE_LOGIN_USER_NAME varchar(255),
-        OVERRIDE_SCRATCH_LOCATION varchar(255),
-        OVERRIDE_ALLOCATION_PROJECT_NUMBER varchar(255),
-        STORAGE_RESOURCE_ID varchar(255),
-        EXPERIMENT_DATA_DIR VARCHAR (512),
-        GROUP_RESOURCE_PROFILE_ID VARCHAR(255) DEFAULT NULL,
-        IS_USE_USER_CR_PREF SMALLINT,
-        PRIMARY KEY (EXPERIMENT_ID),
-        FOREIGN KEY (EXPERIMENT_ID) REFERENCES EXPERIMENT(EXPERIMENT_ID) ON DELETE CASCADE
-);
-
-CREATE VIEW LATEST_EXPERIMENT_STATUS AS
-  select ES1.EXPERIMENT_ID AS EXPERIMENT_ID, ES1.STATE AS STATE, ES1.TIME_OF_STATE_CHANGE AS TIME_OF_STATE_CHANGE
-  from EXPERIMENT_STATUS ES1 LEFT JOIN EXPERIMENT_STATUS ES2 ON (ES1.EXPERIMENT_ID = ES2.EXPERIMENT_ID
-    AND ES1.TIME_OF_STATE_CHANGE < ES2.TIME_OF_STATE_CHANGE)  WHERE ES2.TIME_OF_STATE_CHANGE is NULL;
-
-CREATE VIEW EXPERIMENT_SUMMARY AS
-  select E.EXPERIMENT_ID AS EXPERIMENT_ID, E.PROJECT_ID AS PROJECT_ID, E.GATEWAY_ID AS GATEWAY_ID,
-  E.USER_NAME AS USER_NAME, E.EXECUTION_ID AS EXECUTION_ID, E.EXPERIMENT_NAME AS EXPERIMENT_NAME,
-  E.CREATION_TIME AS CREATION_TIME, E.DESCRIPTION AS DESCRIPTION, ES.STATE AS STATE, UD.RESOURCE_HOST_ID
-  AS RESOURCE_HOST_ID, ES.TIME_OF_STATE_CHANGE AS TIME_OF_STATE_CHANGE
-    from ((EXPERIMENT E left join LATEST_EXPERIMENT_STATUS ES on((E.EXPERIMENT_ID = ES.EXPERIMENT_ID)))
-    left join USER_CONFIGURATION_DATA UD on((E.EXPERIMENT_ID = UD.EXPERIMENT_ID))) where true;
-
-CREATE TABLE PROCESS (
-        PROCESS_ID varchar(255),
-        EXPERIMENT_ID varchar(255) NOT NULL,
-        CREATION_TIME timestamp DEFAULT CURRENT_TIMESTAMP,
-        LAST_UPDATE_TIME timestamp DEFAULT CURRENT_TIMESTAMP,
-        PROCESS_DETAIL CLOB,
-        APPLICATION_INTERFACE_ID varchar(255),
-        TASK_DAG CLOB,
-        APPLICATION_DEPLOYMENT_ID varchar(255),
-        COMPUTE_RESOURCE_ID varchar(255),
-        GATEWAY_EXECUTION_ID varchar(255),
-        ENABLE_EMAIL_NOTIFICATION SMALLINT,
-        EMAIL_ADDRESSES CLOB,
-        STORAGE_RESOURCE_ID varchar(255),
-        USER_DN varchar(255),
-        GENERATE_CERT SMALLINT,
-        EXPERIMENT_DATA_DIR VARCHAR (512),
-        USERNAME VARCHAR (255),
-        GROUP_RESOURCE_PROFILE_ID VARCHAR (255) DEFAULT NULL,
-        USE_USER_CR_PREF SMALLINT,
-        PRIMARY KEY (PROCESS_ID),
-        FOREIGN KEY (EXPERIMENT_ID) REFERENCES EXPERIMENT(EXPERIMENT_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE PROCESS_INPUT
-(
-        PROCESS_ID varchar(255) NOT NULL,
-        INPUT_NAME varchar(255),
-        INPUT_VALUE CLOB,
-        DATA_TYPE varchar(255),
-        APPLICATION_ARGUMENT varchar(255),
-        STANDARD_INPUT SMALLINT,
-        USER_FRIENDLY_DESCRIPTION varchar(255),
-        METADATA varchar(4096),
-        INPUT_ORDER INT,
-        IS_REQUIRED SMALLINT,
-        REQUIRED_TO_ADDED_TO_CMD SMALLINT,
-        DATA_STAGED SMALLINT,
-        STORAGE_RESOURCE_ID varchar(255),
-        IS_READ_ONLY SMALLINT,
-        PRIMARY KEY(PROCESS_ID,INPUT_NAME),
-        FOREIGN KEY (PROCESS_ID) REFERENCES PROCESS(PROCESS_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE PROCESS_OUTPUT
-(
-        PROCESS_ID varchar(255) NOT NULL,
-        OUTPUT_NAME varchar(255),
-        OUTPUT_VALUE CLOB,
-        DATA_TYPE varchar(255),
-        APPLICATION_ARGUMENT varchar(255),
-        IS_REQUIRED SMALLINT,
-        REQUIRED_TO_ADDED_TO_CMD SMALLINT,
-        DATA_MOVEMENT SMALLINT,
-        LOCATION varchar(255),
-        SEARCH_QUERY varchar(255),
-        OUTPUT_STREAMING SMALLINT,
-        STORAGE_RESOURCE_ID varchar(255),
-        PRIMARY KEY(PROCESS_ID,OUTPUT_NAME),
-        FOREIGN KEY (PROCESS_ID) REFERENCES PROCESS(PROCESS_ID) ON DELETE CASCADE
-);
-
-
-CREATE TABLE PROCESS_STATUS (
-        STATUS_ID varchar(255),
-        PROCESS_ID varchar(255) NOT NULL,
-        STATE varchar(255),
-        TIME_OF_STATE_CHANGE TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
-        REASON CLOB,
-        PRIMARY KEY (STATUS_ID, PROCESS_ID),
-        FOREIGN KEY (PROCESS_ID) REFERENCES PROCESS(PROCESS_ID) ON DELETE CASCADE
-);
-
-
-CREATE TABLE PROCESS_ERROR (
-        ERROR_ID varchar(255),
-        PROCESS_ID varchar(255) NOT NULL,
-        CREATION_TIME timestamp DEFAULT CURRENT_TIMESTAMP,
-        ACTUAL_ERROR_MESSAGE CLOB,
-        USER_FRIENDLY_MESSAGE CLOB,
-        TRANSIENT_OR_PERSISTENT SMALLINT,
-        ROOT_CAUSE_ERROR_ID_LIST CLOB,
-        PRIMARY KEY (ERROR_ID, PROCESS_ID),
-        FOREIGN KEY (PROCESS_ID) REFERENCES PROCESS(PROCESS_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE PROCESS_RESOURCE_SCHEDULE (
-        PROCESS_ID varchar(255) NOT NULL,
-        RESOURCE_HOST_ID varchar(255),
-        TOTAL_CPU_COUNT INT,
-        NODE_COUNT INT,
-        NUMBER_OF_THREADS INT,
-        QUEUE_NAME varchar(255),
-        WALL_TIME_LIMIT INT,
-        TOTAL_PHYSICAL_MEMORY INT,
-        STATIC_WORKING_DIR varchar(255),
-        OVERRIDE_ALLOCATION_PROJECT_NUMBER varchar(255),
-        OVERRIDE_LOGIN_USER_NAME varchar(255),
-        OVERRIDE_SCRATCH_LOCATION varchar(255),
-        PRIMARY KEY (PROCESS_ID),
-        FOREIGN KEY (PROCESS_ID) REFERENCES PROCESS(PROCESS_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE TASK (
-        TASK_ID varchar(255),
-        TASK_TYPE varchar(255),
-        PARENT_PROCESS_ID varchar(255) NOT NULL,
-        CREATION_TIME timestamp DEFAULT CURRENT_TIMESTAMP,
-        LAST_UPDATE_TIME timestamp DEFAULT CURRENT_TIMESTAMP,
-        TASK_DETAIL CLOB,
-        SUB_TASK_MODEL BLOB,
-        PRIMARY KEY (TASK_ID),
-        FOREIGN KEY (PARENT_PROCESS_ID) REFERENCES PROCESS(PROCESS_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE TASK_STATUS (
-        STATUS_ID varchar(255),
-        TASK_ID varchar(255) NOT NULL,
-        STATE varchar(255),
-        TIME_OF_STATE_CHANGE TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
-        REASON CLOB,
-        PRIMARY KEY (STATUS_ID, TASK_ID),
-        FOREIGN KEY (TASK_ID) REFERENCES TASK(TASK_ID) ON DELETE CASCADE
-);
-
-
-CREATE TABLE TASK_ERROR (
-        ERROR_ID varchar(255),
-        TASK_ID varchar(255) NOT NULL,
-        CREATION_TIME timestamp DEFAULT CURRENT_TIMESTAMP,
-        ACTUAL_ERROR_MESSAGE CLOB,
-        USER_FRIENDLY_MESSAGE CLOB,
-        TRANSIENT_OR_PERSISTENT SMALLINT,
-        ROOT_CAUSE_ERROR_ID_LIST CLOB,
-        PRIMARY KEY (ERROR_ID, TASK_ID),
-        FOREIGN KEY (TASK_ID) REFERENCES TASK(TASK_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE JOB (
-        JOB_ID varchar(255),
-        TASK_ID varchar(255) NOT NULL,
-        PROCESS_ID varchar(255),
-        JOB_DESCRIPTION CLOB NOT NULL,
-        CREATION_TIME TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
-        COMPUTE_RESOURCE_CONSUMED varchar(255),
-        JOB_NAME varchar(255),
-        WORKING_DIR varchar(255),
-        STD_OUT CLOB,
-        STD_ERR CLOB,
-        EXIT_CODE INT,
-        PRIMARY KEY (JOB_ID, TASK_ID),
-        FOREIGN KEY (TASK_ID) REFERENCES TASK(TASK_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE JOB_STATUS (
-        STATUS_ID varchar(255),
-        JOB_ID varchar(255) NOT NULL,
-        TASK_ID varchar(255) NOT NULL,
-        STATE varchar(255),
-        TIME_OF_STATE_CHANGE TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
-        REASON CLOB,
-        PRIMARY KEY (STATUS_ID, JOB_ID, TASK_ID),
-        FOREIGN KEY (JOB_ID, TASK_ID) REFERENCES JOB(JOB_ID, TASK_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE QUEUE_STATUS(
-        HOST_NAME VARCHAR(255) NOT NULL,
-        QUEUE_NAME VARCHAR(255) NOT NULL,
-        CREATED_TIME BIGINT NOT NULL,
-        QUEUE_UP SMALLINT,
-        RUNNING_JOBS INT,
-        QUEUED_JOBS INT,
-        PRIMARY KEY (HOST_NAME, QUEUE_NAME, CREATED_TIME)
-);
-
-CREATE TABLE CONFIGURATION
-(
-        CONFIG_KEY VARCHAR(255),
-        CONFIG_VAL VARCHAR(255),
-        EXPIRE_DATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
-        CATEGORY_ID VARCHAR (255),
-        PRIMARY KEY(CONFIG_KEY, CONFIG_VAL, CATEGORY_ID)
-);
-
-INSERT INTO CONFIGURATION (CONFIG_KEY, CONFIG_VAL, EXPIRE_DATE, CATEGORY_ID) VALUES('registry.version', '0.16', CURRENT_TIMESTAMP ,'SYSTEM');
diff --git a/modules/registry-refactoring/src/main/resources/expcatalog-mysql.sql b/modules/registry-refactoring/src/main/resources/expcatalog-mysql.sql
deleted file mode 100644
index 447b558..0000000
--- a/modules/registry-refactoring/src/main/resources/expcatalog-mysql.sql
+++ /dev/null
@@ -1,406 +0,0 @@
-/*
- *
- * 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.
- *
- */
-
-/* registry-refactoring: experiment catalog DB init script */
-CREATE TABLE GATEWAY
-(
-        GATEWAY_ID VARCHAR(255),
-        GATEWAY_NAME VARCHAR(255),
-	      DOMAIN VARCHAR(255),
-	      EMAIL_ADDRESS VARCHAR(255),
-        GATEWAY_ACRONYM varchar(255),
-        GATEWAY_ADMIN_EMAIL varchar(255),
-        GATEWAY_ADMIN_FIRST_NAME varchar(255),
-        GATEWAY_APPROVAL_STATUS varchar(255),
-        GATEWAY_PUBLIC_ABSTRACT varchar(255),
-        GATEWAY_URL varchar(255),
-        GATEWAY_ADMIN_LAST_NAME varchar(255),
-        IDENTITY_SERVER_PASSWORD_TOKEN varchar(255),
-        IDENTITY_SERVER_USERNAME varchar(255),
-        GATEWAY_REVIEW_PROPOSAL_DESCRIPTION varchar(255),
-        DECLINED_REASON varchar(255),
-        OAUTH_CLIENT_SECRET varchar(255),
-        OAUTH_CLIENT_ID varchar(255),
-        REQUEST_CREATION_TIME TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
-        REQUESTER_USERNAME VARCHAR(255),
-        PRIMARY KEY (GATEWAY_ID)
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-CREATE TABLE NOTIFICATION
-(
-        NOTIFICATION_ID VARCHAR(255) NOT NULL,
-        GATEWAY_ID VARCHAR(255),
-        TITLE VARCHAR(255),
-        PRIORITY VARCHAR(255),
-        NOTIFICATION_MESSAGE VARCHAR(4096) NOT NULL,
-        PUBLISHED_DATE TIMESTAMP,
-        EXPIRATION_DATE TIMESTAMP,
-        CREATION_DATE TIMESTAMP,
-        PRIMARY KEY (NOTIFICATION_ID)
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-CREATE TABLE USERS
-(
-        AIRAVATA_INTERNAL_USER_ID VARCHAR(255) NOT NULL,
-        USER_NAME VARCHAR(255),
-        PASSWORD VARCHAR(255),
-        GATEWAY_ID VARCHAR(255) NOT NULL,
-        PRIMARY KEY (GATEWAY_ID, USER_NAME),
-        FOREIGN KEY (GATEWAY_ID) REFERENCES GATEWAY(GATEWAY_ID) ON DELETE CASCADE,
-        UNIQUE (AIRAVATA_INTERNAL_USER_ID)
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-CREATE TABLE GATEWAY_WORKER
-(
-        GATEWAY_ID VARCHAR(255) NOT NULL,
-        USER_NAME VARCHAR(255),
-        PRIMARY KEY (GATEWAY_ID, USER_NAME),
-        FOREIGN KEY (GATEWAY_ID) REFERENCES GATEWAY(GATEWAY_ID) ON DELETE CASCADE
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-CREATE TABLE PROJECT
-(
-        GATEWAY_ID VARCHAR(255) NOT NULL,
-        USER_NAME VARCHAR(255),
-        PROJECT_NAME VARCHAR(255),
-        PROJECT_ID VARCHAR(255),
-        DESCRIPTION VARCHAR(255),
-        CREATION_TIME TIMESTAMP DEFAULT NOW(),
-        PRIMARY KEY (PROJECT_ID),
-        FOREIGN KEY (GATEWAY_ID) REFERENCES GATEWAY(GATEWAY_ID) ON DELETE CASCADE
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-CREATE TABLE PROJECT_USER
-(
-        PROJECT_ID VARCHAR(255) NOT NULL,
-        USER_NAME VARCHAR(255) NOT NULL,
-        PRIMARY KEY (PROJECT_ID,USER_NAME),
-        FOREIGN KEY (PROJECT_ID) REFERENCES PROJECT(PROJECT_ID) ON DELETE CASCADE
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-CREATE TABLE EXPERIMENT (
-        EXPERIMENT_ID varchar(255),
-        PROJECT_ID varchar(255) NOT NULL,
-        GATEWAY_ID varchar(255),
-        EXPERIMENT_TYPE varchar(255),
-        USER_NAME varchar(255),
-        EXPERIMENT_NAME varchar(255),
-        CREATION_TIME timestamp DEFAULT NOW(),
-        DESCRIPTION varchar(255),
-        EXECUTION_ID varchar(255),
-        GATEWAY_EXECUTION_ID varchar(255),
-        GATEWAY_INSTANCE_ID varchar(255),
-        ENABLE_EMAIL_NOTIFICATION tinyint(1),
-        EMAIL_ADDRESSES text,
-        PRIMARY KEY (EXPERIMENT_ID),
-        FOREIGN KEY (PROJECT_ID) REFERENCES PROJECT(PROJECT_ID) ON DELETE CASCADE
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-
-CREATE TABLE EXPERIMENT_INPUT
-(
-        EXPERIMENT_ID varchar(255) NOT NULL,
-        INPUT_NAME varchar(255),
-        INPUT_VALUE text,
-        DATA_TYPE varchar(255),
-        APPLICATION_ARGUMENT varchar(255),
-        STANDARD_INPUT tinyint(1),
-        USER_FRIENDLY_DESCRIPTION varchar(255),
-        METADATA varchar(4096),
-        INPUT_ORDER int(11),
-        IS_REQUIRED tinyint(1),
-        REQUIRED_TO_ADDED_TO_CMD tinyint(1),
-        DATA_STAGED tinyint(1),
-        STORAGE_RESOURCE_ID varchar(255),
-        IS_READ_ONLY tinyint(1),
-        PRIMARY KEY(EXPERIMENT_ID,INPUT_NAME),
-        FOREIGN KEY (EXPERIMENT_ID) REFERENCES EXPERIMENT(EXPERIMENT_ID) ON DELETE CASCADE
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-CREATE TABLE EXPERIMENT_OUTPUT
-(
-        EXPERIMENT_ID varchar(255) NOT NULL,
-        OUTPUT_NAME varchar(255),
-        OUTPUT_VALUE text,
-        DATA_TYPE varchar(255),
-        APPLICATION_ARGUMENT varchar(255),
-        IS_REQUIRED tinyint(1),
-        REQUIRED_TO_ADDED_TO_CMD tinyint(1),
-        DATA_MOVEMENT tinyint(1),
-        LOCATION varchar(255),
-        SEARCH_QUERY varchar(255),
-        OUTPUT_STREAMING SMALLINT,
-        STORAGE_RESOURCE_ID varchar(255),
-        PRIMARY KEY(EXPERIMENT_ID,OUTPUT_NAME),
-        FOREIGN KEY (EXPERIMENT_ID) REFERENCES EXPERIMENT(EXPERIMENT_ID) ON DELETE CASCADE
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-
-CREATE TABLE EXPERIMENT_STATUS (
-        STATUS_ID varchar(255),
-        EXPERIMENT_ID varchar(255) NOT NULL,
-        STATE varchar(255),
-        TIME_OF_STATE_CHANGE TIMESTAMP(6) NOT NULL DEFAULT CURRENT_TIMESTAMP(6) ON UPDATE CURRENT_TIMESTAMP(6),
-        REASON LONGTEXT,
-        PRIMARY KEY (STATUS_ID, EXPERIMENT_ID),
-        FOREIGN KEY (EXPERIMENT_ID) REFERENCES EXPERIMENT(EXPERIMENT_ID) ON DELETE CASCADE
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-
-CREATE TABLE EXPERIMENT_ERROR (
-        ERROR_ID varchar(255),
-        EXPERIMENT_ID varchar(255) NOT NULL,
-        CREATION_TIME timestamp DEFAULT NOW(),
-        ACTUAL_ERROR_MESSAGE text,
-        USER_FRIENDLY_MESSAGE text,
-        TRANSIENT_OR_PERSISTENT tinyint(1),
-        ROOT_CAUSE_ERROR_ID_LIST text,
-        PRIMARY KEY (ERROR_ID, EXPERIMENT_ID),
-        FOREIGN KEY (EXPERIMENT_ID) REFERENCES EXPERIMENT(EXPERIMENT_ID) ON DELETE CASCADE
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-CREATE TABLE USER_CONFIGURATION_DATA (
-        EXPERIMENT_ID varchar(255) NOT NULL,
-        AIRAVATA_AUTO_SCHEDULE tinyint(1),
-        OVERRIDE_MANUAL_SCHEDULED_PARAMS tinyint(1),
-        SHARE_EXPERIMENT_PUBLICALLY tinyint(1),
-        THROTTLE_RESOURCES tinyint(1),
-        USER_DN varchar(255),
-        GENERATE_CERT tinyint(1),
-        RESOURCE_HOST_ID varchar(255),
-        TOTAL_CPU_COUNT int(11),
-        NODE_COUNT int(11),
-        NUMBER_OF_THREADS int(11),
-        QUEUE_NAME varchar(255),
-        WALL_TIME_LIMIT int(11),
-        TOTAL_PHYSICAL_MEMORY int(11),
-        STATIC_WORKING_DIR varchar(255),
-        OVERRIDE_LOGIN_USER_NAME varchar(255),
-        OVERRIDE_SCRATCH_LOCATION varchar(255),
-        OVERRIDE_ALLOCATION_PROJECT_NUMBER varchar(255),
-        STORAGE_RESOURCE_ID varchar(255),
-        EXPERIMENT_DATA_DIR VARCHAR (512),
-        GROUP_RESOURCE_PROFILE_ID VARCHAR(255) DEFAULT NULL,
-        IS_USE_USER_CR_PREF TINYINT(1),
-        PRIMARY KEY (EXPERIMENT_ID),
-        FOREIGN KEY (EXPERIMENT_ID) REFERENCES EXPERIMENT(EXPERIMENT_ID) ON DELETE CASCADE
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-
-CREATE VIEW LATEST_EXPERIMENT_STATUS AS
-  select ES1.EXPERIMENT_ID AS EXPERIMENT_ID, ES1.STATE AS STATE, ES1.TIME_OF_STATE_CHANGE AS TIME_OF_STATE_CHANGE
-  from EXPERIMENT_STATUS ES1 LEFT JOIN EXPERIMENT_STATUS ES2 ON (ES1.EXPERIMENT_ID = ES2.EXPERIMENT_ID
-    AND ES1.TIME_OF_STATE_CHANGE < ES2.TIME_OF_STATE_CHANGE)  WHERE ES2.TIME_OF_STATE_CHANGE is NULL;
-
-CREATE VIEW EXPERIMENT_SUMMARY AS
-  select E.EXPERIMENT_ID AS EXPERIMENT_ID, E.PROJECT_ID AS PROJECT_ID, E.GATEWAY_ID AS GATEWAY_ID,
-  E.USER_NAME AS USER_NAME, E.EXECUTION_ID AS EXECUTION_ID, E.EXPERIMENT_NAME AS EXPERIMENT_NAME,
-  E.CREATION_TIME AS CREATION_TIME, E.DESCRIPTION AS DESCRIPTION, ES.STATE AS STATE, UD.RESOURCE_HOST_ID
-  AS RESOURCE_HOST_ID, ES.TIME_OF_STATE_CHANGE AS TIME_OF_STATE_CHANGE
-    from ((EXPERIMENT E left join LATEST_EXPERIMENT_STATUS ES on((E.EXPERIMENT_ID = ES.EXPERIMENT_ID)))
-    left join USER_CONFIGURATION_DATA UD on((E.EXPERIMENT_ID = UD.EXPERIMENT_ID))) where 1;
-
-
-CREATE TABLE PROCESS (
-        PROCESS_ID varchar(255),
-        EXPERIMENT_ID varchar(255) NOT NULL,
-        CREATION_TIME  TIMESTAMP DEFAULT NOW(),
-        LAST_UPDATE_TIME TIMESTAMP DEFAULT '0000-00-00 00:00:00',
-        PROCESS_DETAIL text,
-        APPLICATION_INTERFACE_ID varchar(255),
-        TASK_DAG TEXT,
-        APPLICATION_DEPLOYMENT_ID varchar(255),
-        COMPUTE_RESOURCE_ID varchar(255),
-        GATEWAY_EXECUTION_ID varchar(255),
-        ENABLE_EMAIL_NOTIFICATION BOOLEAN,
-        EMAIL_ADDRESSES TEXT,
-        STORAGE_RESOURCE_ID varchar(255),
-        USER_DN varchar(255),
-        GENERATE_CERT SMALLINT,
-        EXPERIMENT_DATA_DIR VARCHAR (512),
-        USERNAME VARCHAR (255),
-        GROUP_RESOURCE_PROFILE_ID VARCHAR (255) DEFAULT NULL,
-        USE_USER_CR_PREF TINYINT(1),
-        PRIMARY KEY (PROCESS_ID),
-        FOREIGN KEY (EXPERIMENT_ID) REFERENCES EXPERIMENT(EXPERIMENT_ID) ON DELETE CASCADE
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-CREATE TABLE PROCESS_INPUT
-(
-        PROCESS_ID varchar(255) NOT NULL,
-        INPUT_NAME varchar(255),
-        INPUT_VALUE text,
-        DATA_TYPE varchar(255),
-        APPLICATION_ARGUMENT varchar(255),
-        STANDARD_INPUT tinyint(1),
-        USER_FRIENDLY_DESCRIPTION varchar(255),
-        METADATA varchar(4096),
-        INPUT_ORDER int(11),
-        IS_REQUIRED tinyint(1),
-        REQUIRED_TO_ADDED_TO_CMD tinyint(1),
-        DATA_STAGED tinyint(1),
-        STORAGE_RESOURCE_ID varchar(255),
-        IS_READ_ONLY tinyint(1),
-        PRIMARY KEY(PROCESS_ID,INPUT_NAME),
-        FOREIGN KEY (PROCESS_ID) REFERENCES PROCESS(PROCESS_ID) ON DELETE CASCADE
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-CREATE TABLE PROCESS_OUTPUT
-(
-        PROCESS_ID varchar(255) NOT NULL,
-        OUTPUT_NAME varchar(255),
-        OUTPUT_VALUE LONGTEXT,
-        DATA_TYPE varchar(255),
-        APPLICATION_ARGUMENT varchar(255),
-        IS_REQUIRED tinyint(1),
-        REQUIRED_TO_ADDED_TO_CMD tinyint(1),
-        DATA_MOVEMENT tinyint(1),
-        LOCATION varchar(255),
-        SEARCH_QUERY varchar(255),
-        OUTPUT_STREAMING SMALLINT,
-        STORAGE_RESOURCE_ID varchar(255),
-        PRIMARY KEY(PROCESS_ID,OUTPUT_NAME),
-        FOREIGN KEY (PROCESS_ID) REFERENCES PROCESS(PROCESS_ID) ON DELETE CASCADE
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-
-CREATE TABLE PROCESS_STATUS (
-        STATUS_ID varchar(255),
-        PROCESS_ID varchar(255) NOT NULL,
-        STATE varchar(255),
-        TIME_OF_STATE_CHANGE TIMESTAMP(6) DEFAULT NOW(6) ON UPDATE NOW(6),
-        REASON LONGTEXT,
-        PRIMARY KEY (STATUS_ID, PROCESS_ID),
-        FOREIGN KEY (PROCESS_ID) REFERENCES PROCESS(PROCESS_ID) ON DELETE CASCADE
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-
-CREATE TABLE PROCESS_ERROR (
-        ERROR_ID varchar(255),
-        PROCESS_ID varchar(255) NOT NULL,
-        CREATION_TIME timestamp DEFAULT NOW(),
-        ACTUAL_ERROR_MESSAGE text,
-        USER_FRIENDLY_MESSAGE text,
-        TRANSIENT_OR_PERSISTENT tinyint(1),
-        ROOT_CAUSE_ERROR_ID_LIST text,
-        PRIMARY KEY (ERROR_ID, PROCESS_ID),
-        FOREIGN KEY (PROCESS_ID) REFERENCES PROCESS(PROCESS_ID) ON DELETE CASCADE
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-CREATE TABLE PROCESS_RESOURCE_SCHEDULE (
-        PROCESS_ID varchar(255) NOT NULL,
-        RESOURCE_HOST_ID varchar(255),
-        TOTAL_CPU_COUNT int(11),
-        NODE_COUNT int(11),
-        NUMBER_OF_THREADS int(11),
-        QUEUE_NAME varchar(255),
-        WALL_TIME_LIMIT int(11),
-        TOTAL_PHYSICAL_MEMORY int(11),
-        STATIC_WORKING_DIR varchar(255),
-        OVERRIDE_ALLOCATION_PROJECT_NUMBER varchar(255),
-        OVERRIDE_LOGIN_USER_NAME varchar(255),
-        OVERRIDE_SCRATCH_LOCATION varchar(255),
-        PRIMARY KEY (PROCESS_ID),
-        FOREIGN KEY (PROCESS_ID) REFERENCES PROCESS(PROCESS_ID) ON DELETE CASCADE
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-CREATE TABLE TASK (
-        TASK_ID varchar(255),
-        TASK_TYPE varchar(255),
-        PARENT_PROCESS_ID varchar(255) NOT NULL,
-        CREATION_TIME timestamp DEFAULT NOW(),
-        LAST_UPDATE_TIME TIMESTAMP DEFAULT '0000-00-00 00:00:00',
-        TASK_DETAIL text,
-        SUB_TASK_MODEL BLOB,
-        PRIMARY KEY (TASK_ID),
-        FOREIGN KEY (PARENT_PROCESS_ID) REFERENCES PROCESS(PROCESS_ID) ON DELETE CASCADE
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-CREATE TABLE TASK_STATUS (
-        STATUS_ID varchar(255),
-        TASK_ID varchar(255) NOT NULL,
-        STATE varchar(255),
-        TIME_OF_STATE_CHANGE TIMESTAMP(6) DEFAULT NOW(6) ON UPDATE NOW(6),
-        REASON LONGTEXT,
-        PRIMARY KEY (STATUS_ID, TASK_ID),
-        FOREIGN KEY (TASK_ID) REFERENCES TASK(TASK_ID) ON DELETE CASCADE
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-
-CREATE TABLE TASK_ERROR (
-        ERROR_ID varchar(255),
-        TASK_ID varchar(255) NOT NULL,
-        CREATION_TIME timestamp DEFAULT NOW(),
-        ACTUAL_ERROR_MESSAGE text,
-        USER_FRIENDLY_MESSAGE text,
-        TRANSIENT_OR_PERSISTENT tinyint(1),
-        ROOT_CAUSE_ERROR_ID_LIST text,
-        PRIMARY KEY (ERROR_ID, TASK_ID),
-        FOREIGN KEY (TASK_ID) REFERENCES TASK(TASK_ID) ON DELETE CASCADE
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-CREATE TABLE JOB (
-        JOB_ID varchar(255),
-        TASK_ID varchar(255) NOT NULL,
-        PROCESS_ID varchar(255),
-        JOB_DESCRIPTION LONGTEXT NOT NULL,
-        CREATION_TIME timestamp DEFAULT NOW(),
-        COMPUTE_RESOURCE_CONSUMED varchar(255),
-        JOB_NAME varchar(255),
-        WORKING_DIR varchar(255),
-        STD_OUT LONGTEXT,
-        STD_ERR LONGTEXT,
-        EXIT_CODE INT(11),
-        PRIMARY KEY (JOB_ID, TASK_ID),
-        FOREIGN KEY (TASK_ID) REFERENCES TASK(TASK_ID) ON DELETE CASCADE
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-CREATE TABLE JOB_STATUS (
-        STATUS_ID varchar(255),
-        JOB_ID varchar(255) NOT NULL,
-        TASK_ID varchar(255) NOT NULL,
-        STATE varchar(255),
-        TIME_OF_STATE_CHANGE TIMESTAMP(6) DEFAULT NOW(6) ON UPDATE NOW(6),
-        REASON LONGTEXT,
-        PRIMARY KEY (STATUS_ID, JOB_ID, TASK_ID),
-        FOREIGN KEY (JOB_ID, TASK_ID) REFERENCES JOB(JOB_ID, TASK_ID) ON DELETE CASCADE
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-CREATE TABLE QUEUE_STATUS(
-        HOST_NAME VARCHAR(255) NOT NULL,
-        QUEUE_NAME VARCHAR(255) NOT NULL,
-        CREATED_TIME BIGINT(20) NOT NULL,
-        QUEUE_UP     TINYINT(1),
-        RUNNING_JOBS INT(11),
-        QUEUED_JOBS INT(11),
-        PRIMARY KEY (HOST_NAME, QUEUE_NAME, CREATED_TIME)
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-CREATE TABLE CONFIGURATION
-(
-        CONFIG_KEY VARCHAR(255),
-        CONFIG_VAL VARCHAR(255),
-        EXPIRE_DATE TIMESTAMP DEFAULT NOW() ON UPDATE NOW(),
-        CATEGORY_ID VARCHAR (255),
-        PRIMARY KEY(CONFIG_KEY, CONFIG_VAL, CATEGORY_ID)
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-INSERT INTO CONFIGURATION (CONFIG_KEY, CONFIG_VAL, EXPIRE_DATE, CATEGORY_ID) VALUES('registry.version', '0.16', NOW() ,'SYSTEM');
diff --git a/modules/registry-refactoring/src/main/resources/replicacatalog-derby.sql b/modules/registry-refactoring/src/main/resources/replicacatalog-derby.sql
deleted file mode 100644
index 3d9ed3b..0000000
--- a/modules/registry-refactoring/src/main/resources/replicacatalog-derby.sql
+++ /dev/null
@@ -1,86 +0,0 @@
-/*
- *
- * 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.
- *
- */
-
-/* registry-refactoring: replica catalog DB init script */
-CREATE TABLE DATA_PRODUCT
-(
-        PRODUCT_URI VARCHAR (255),
-        GATEWAY_ID VARCHAR (255),
-        PRODUCT_NAME VARCHAR (255),
-        PRODUCT_DESCRIPTION VARCHAR (255),
-        OWNER_NAME VARCHAR (255),
-        PARENT_PRODUCT_URI VARCHAR (255),
-        PRODUCT_SIZE INTEGER ,
-        CREATION_TIME TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
-        LAST_MODIFIED_TIME TIMESTAMP DEFAULT '0000-00-00 00:00:00',
-        PRODUCT_TYPE VARCHAR(10),
-        PRIMARY KEY (PRODUCT_URI)
-        -- in Derby can't create self-reference FOREIGN KEY in CREATE TABLE
-        -- statement so this gets added via the following ALTER TABLE statement
-        -- FOREIGN KEY (PARENT_PRODUCT_URI) REFERENCES DATA_PRODUCT (PRODUCT_URI) ON DELETE CASCADE
-);
-
-ALTER TABLE DATA_PRODUCT ADD FOREIGN KEY (PARENT_PRODUCT_URI) REFERENCES DATA_PRODUCT (PRODUCT_URI) ON DELETE CASCADE;
-
-CREATE TABLE DATA_REPLICA_LOCATION
-(
-        REPLICA_ID VARCHAR (255),
-        PRODUCT_URI VARCHAR (255) NOT NULL,
-        REPLICA_NAME VARCHAR (255),
-        REPLICA_DESCRIPTION VARCHAR (255),
-        STORAGE_RESOURCE_ID VARCHAR (255),
-        FILE_PATH VARCHAR (4096),
-        CREATION_TIME TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
-        LAST_MODIFIED_TIME TIMESTAMP DEFAULT '0000-00-00 00:00:00',
-        VALID_UNTIL_TIME TIMESTAMP DEFAULT '0000-00-00 00:00:00',
-        REPLICA_LOCATION_CATEGORY VARCHAR(26),
-        REPLICA_PERSISTENT_TYPE VARCHAR(10),
-        PRIMARY KEY (REPLICA_ID),
-        FOREIGN KEY (PRODUCT_URI) REFERENCES DATA_PRODUCT(PRODUCT_URI) ON DELETE CASCADE
-);
-
-CREATE TABLE DATA_PRODUCT_METADATA
-(
-        PRODUCT_URI VARCHAR(255) NOT NULL,
-        METADATA_KEY VARCHAR(255),
-        METADATA_VALUE VARCHAR(255),
-        PRIMARY KEY(PRODUCT_URI, METADATA_KEY),
-        FOREIGN KEY (PRODUCT_URI) REFERENCES DATA_PRODUCT(PRODUCT_URI) ON DELETE CASCADE
-);
-
-CREATE TABLE DATA_REPLICA_METADATA
-(
-        REPLICA_ID VARCHAR(255) NOT NULL,
-        METADATA_KEY VARCHAR(255),
-        METADATA_VALUE VARCHAR(255),
-        PRIMARY KEY(REPLICA_ID, METADATA_KEY),
-        FOREIGN KEY (REPLICA_ID) REFERENCES DATA_REPLICA_LOCATION(REPLICA_ID) ON DELETE CASCADE
-);
-
-
-CREATE TABLE CONFIGURATION
-(
-        CONFIG_KEY VARCHAR(255),
-        CONFIG_VAL VARCHAR(255),
-        PRIMARY KEY(CONFIG_KEY, CONFIG_VAL)
-);
-
-INSERT INTO CONFIGURATION (CONFIG_KEY, CONFIG_VAL) VALUES('data_catalog_version', '0.16');
diff --git a/modules/registry-refactoring/src/main/resources/replicacatalog-mysql.sql b/modules/registry-refactoring/src/main/resources/replicacatalog-mysql.sql
deleted file mode 100644
index 63148b5..0000000
--- a/modules/registry-refactoring/src/main/resources/replicacatalog-mysql.sql
+++ /dev/null
@@ -1,81 +0,0 @@
-/*
- *
- * 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.
- *
- */
-
-/* registry-refactoring: replica catalog DB init script */
-CREATE TABLE DATA_PRODUCT
-(
-        PRODUCT_URI VARCHAR (255),
-        GATEWAY_ID VARCHAR (255),
-        PRODUCT_NAME VARCHAR (255),
-        PRODUCT_DESCRIPTION VARCHAR (255),
-        OWNER_NAME VARCHAR (255),
-        PARENT_PRODUCT_URI VARCHAR (255),
-        PRODUCT_SIZE INT,
-        CREATION_TIME TIMESTAMP NULL DEFAULT '0000-00-00 00:00:00',
-        LAST_MODIFIED_TIME TIMESTAMP NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
-        PRODUCT_TYPE VARCHAR(10),
-        PRIMARY KEY (PRODUCT_URI),
-        FOREIGN KEY (PARENT_PRODUCT_URI) REFERENCES DATA_PRODUCT (PRODUCT_URI) ON DELETE CASCADE
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-CREATE TABLE DATA_REPLICA_LOCATION
-(
-        REPLICA_ID VARCHAR (255),
-        PRODUCT_URI VARCHAR (255) NOT NULL,
-        REPLICA_NAME VARCHAR (255),
-        REPLICA_DESCRIPTION VARCHAR (255),
-        STORAGE_RESOURCE_ID VARCHAR (255),
-        FILE_PATH VARCHAR (255),
-        CREATION_TIME TIMESTAMP NULL DEFAULT '0000-00-00 00:00:00',
-        LAST_MODIFIED_TIME TIMESTAMP NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
-        VALID_UNTIL_TIME TIMESTAMP NULL DEFAULT '0000-00-00 00:00:00',
-        REPLICA_LOCATION_CATEGORY VARCHAR(26),
-        REPLICA_PERSISTENT_TYPE VARCHAR(10),
-        PRIMARY KEY (REPLICA_ID),
-        FOREIGN KEY (PRODUCT_URI) REFERENCES DATA_PRODUCT(PRODUCT_URI) ON DELETE CASCADE
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-CREATE TABLE DATA_PRODUCT_METADATA
-(
-        PRODUCT_URI VARCHAR(255) NOT NULL,
-        METADATA_KEY VARCHAR(255),
-        METADATA_VALUE VARCHAR(255),
-        PRIMARY KEY(PRODUCT_URI, METADATA_KEY),
-        FOREIGN KEY (PRODUCT_URI) REFERENCES DATA_PRODUCT(PRODUCT_URI) ON DELETE CASCADE
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-CREATE TABLE DATA_REPLICA_METADATA
-(
-        REPLICA_ID VARCHAR(255) NOT NULL,
-        METADATA_KEY VARCHAR(255),
-        METADATA_VALUE VARCHAR(255),
-        PRIMARY KEY(REPLICA_ID, METADATA_KEY),
-        FOREIGN KEY (REPLICA_ID) REFERENCES DATA_REPLICA_LOCATION(REPLICA_ID) ON DELETE CASCADE
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-CREATE TABLE CONFIGURATION
-(
-        CONFIG_KEY VARCHAR(255),
-        CONFIG_VAL VARCHAR(255),
-        PRIMARY KEY(CONFIG_KEY, CONFIG_VAL)
-)ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-INSERT INTO CONFIGURATION (CONFIG_KEY, CONFIG_VAL) VALUES('data_catalog_version', '0.16');
diff --git a/modules/registry-refactoring/src/main/resources/workflowcatalog-derby.sql b/modules/registry-refactoring/src/main/resources/workflowcatalog-derby.sql
deleted file mode 100644
index beff4ca..0000000
--- a/modules/registry-refactoring/src/main/resources/workflowcatalog-derby.sql
+++ /dev/null
@@ -1,128 +0,0 @@
-/*
- *
- * 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.
- *
- */
-
-CREATE TABLE WORKFLOW
-(
-        TEMPLATE_ID VARCHAR (255) NOT NULL,
-        WORKFLOW_NAME VARCHAR (255) NOT NULL,
-        CREATED_USER VARCHAR (255),
-        GATEWAY_ID VARCHAR (255),
-        GRAPH CLOB,
-        IMAGE BLOB,
-        CREATION_TIME timestamp DEFAULT CURRENT_TIMESTAMP,
-        UPDATE_TIME timestamp DEFAULT '0000-00-00 00:00:00',
-        PRIMARY KEY (TEMPLATE_ID)
-);
-
-CREATE TABLE WORKFLOW_INPUT
-(
-         TEMPLATE_ID VARCHAR(255) NOT NULL,
-         INPUT_KEY VARCHAR(255),
-         INPUT_VALUE CLOB,
-         DATA_TYPE VARCHAR(255),
-         METADATA VARCHAR(255),
-         APP_ARGUMENT VARCHAR(255),
-         STANDARD_INPUT SMALLINT,
-         USER_FRIENDLY_DESC VARCHAR(255),
-         INPUT_ORDER INTEGER,
-         IS_REQUIRED SMALLINT,
-         REQUIRED_TO_COMMANDLINE SMALLINT,
-         DATA_STAGED SMALLINT,
-         PRIMARY KEY(TEMPLATE_ID,INPUT_KEY),
-         FOREIGN KEY (TEMPLATE_ID) REFERENCES WORKFLOW(TEMPLATE_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE WORKFLOW_OUTPUT
-(
-         TEMPLATE_ID VARCHAR(255) NOT NULL,
-         OUTPUT_KEY VARCHAR(255),
-         OUTPUT_VALUE VARCHAR(255),
-         DATA_TYPE VARCHAR(255),
-         IS_REQUIRED SMALLINT,
-         REQUIRED_TO_COMMANDLINE SMALLINT,
-         DATA_MOVEMENT SMALLINT,
-         DATA_NAME_LOCATION VARCHAR(255),
-         SEARCH_QUERY VARCHAR(255),
-         APP_ARGUMENT VARCHAR(255),
-         OUTPUT_STREAMING SMALLINT,
-         PRIMARY KEY(TEMPLATE_ID,OUTPUT_KEY),
-         FOREIGN KEY (TEMPLATE_ID) REFERENCES WORKFLOW(TEMPLATE_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE COMPONENT_STATUS
-(
-        STATUS_ID VARCHAR (255) NOT NULL,
-        TEMPLATE_ID VARCHAR (255) NOT NULL,
-        STATE VARCHAR(255),
-        REASON VARCHAR(255),
-        UPDATE_TIME timestamp DEFAULT CURRENT_TIMESTAMP,
-        PRIMARY KEY (STATUS_ID),
-        FOREIGN KEY (TEMPLATE_ID) REFERENCES WORKFLOW(TEMPLATE_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE WORKFLOW_STATUS
-(
-        STATUS_ID VARCHAR (255) NOT NULL,
-        TEMPLATE_ID VARCHAR (255) NOT NULL,
-        STATE VARCHAR(255),
-        REASON VARCHAR(255),
-        UPDATE_TIME timestamp DEFAULT CURRENT_TIMESTAMP,
-        PRIMARY KEY (STATUS_ID, TEMPLATE_ID),
-        FOREIGN KEY (TEMPLATE_ID) REFERENCES WORKFLOW(TEMPLATE_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE EDGE
-(
-        EDGE_ID VARCHAR (255) NOT NULL,
-        TEMPLATE_ID VARCHAR (255) NOT NULL,
-        NAME VARCHAR (255),
-        COMPONENT_STATUS_ID VARCHAR(255),
-        DESCRIPTION VARCHAR(500),
-        CREATED_TIME timestamp DEFAULT CURRENT_TIMESTAMP,
-        PRIMARY KEY (EDGE_ID, TEMPLATE_ID),
-        FOREIGN KEY (TEMPLATE_ID) REFERENCES WORKFLOW(TEMPLATE_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE PORT
-(
-        PORT_ID VARCHAR (255) NOT NULL,
-        TEMPLATE_ID VARCHAR (255) NOT NULL,
-        NAME VARCHAR (255),
-        COMPONENT_STATUS_ID VARCHAR(255),
-        DESCRIPTION VARCHAR(500),
-        CREATED_TIME timestamp DEFAULT CURRENT_TIMESTAMP,
-        PRIMARY KEY (PORT_ID, TEMPLATE_ID),
-        FOREIGN KEY (TEMPLATE_ID) REFERENCES WORKFLOW(TEMPLATE_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE NODE
-(
-        NODE_ID VARCHAR (255) NOT NULL,
-        TEMPLATE_ID VARCHAR (255) NOT NULL,
-        NAME VARCHAR (255),
-        APPLICATION_ID VARCHAR (255),
-        APPLICATION_NAME VARCHAR (255),
-        COMPONENT_STATUS_ID VARCHAR(255),
-        DESCRIPTION VARCHAR(500),
-        CREATED_TIME timestamp DEFAULT CURRENT_TIMESTAMP,
-        PRIMARY KEY (NODE_ID, TEMPLATE_ID),
-        FOREIGN KEY (TEMPLATE_ID) REFERENCES WORKFLOW(TEMPLATE_ID) ON DELETE CASCADE
-);
\ No newline at end of file
diff --git a/modules/registry-refactoring/src/main/resources/workflowcatalog-mysql.sql b/modules/registry-refactoring/src/main/resources/workflowcatalog-mysql.sql
deleted file mode 100644
index a4d43bb..0000000
--- a/modules/registry-refactoring/src/main/resources/workflowcatalog-mysql.sql
+++ /dev/null
@@ -1,128 +0,0 @@
-/*
- *
- * 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.
- *
- */
-
-CREATE TABLE WORKFLOW
-(
-        TEMPLATE_ID VARCHAR (255) NOT NULL,
-        WORKFLOW_NAME VARCHAR (255) NOT NULL,
-        CREATED_USER VARCHAR (255),
-        GATEWAY_ID VARCHAR (255),
-        GRAPH LONGTEXT,
-        IMAGE BLOB,
-        CREATION_TIME timestamp DEFAULT NOW(),
-        UPDATE_TIME TIMESTAMP DEFAULT NOW() ON UPDATE NOW(),
-        PRIMARY KEY (TEMPLATE_ID)
-);
-
-CREATE TABLE WORKFLOW_INPUT
-(
-         TEMPLATE_ID VARCHAR(255) NOT NULL,
-         INPUT_KEY VARCHAR(255),
-         INPUT_VALUE VARCHAR(255),
-         DATA_TYPE VARCHAR(255),
-         METADATA VARCHAR(255),
-         APP_ARGUMENT VARCHAR(255),
-         STANDARD_INPUT SMALLINT,
-         USER_FRIENDLY_DESC VARCHAR(255),
-         INPUT_ORDER INTEGER,
-         IS_REQUIRED SMALLINT,
-         REQUIRED_TO_COMMANDLINE SMALLINT,
-         DATA_STAGED SMALLINT,
-         PRIMARY KEY(TEMPLATE_ID,INPUT_KEY),
-         FOREIGN KEY (TEMPLATE_ID) REFERENCES WORKFLOW(TEMPLATE_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE WORKFLOW_OUTPUT
-(
-         TEMPLATE_ID VARCHAR(255) NOT NULL,
-         OUTPUT_KEY VARCHAR(255),
-         OUTPUT_VALUE LONGTEXT,
-         DATA_TYPE VARCHAR(255),
-         IS_REQUIRED SMALLINT,
-         REQUIRED_TO_COMMANDLINE SMALLINT,
-         DATA_MOVEMENT SMALLINT,
-         DATA_NAME_LOCATION VARCHAR(255),
-         SEARCH_QUERY VARCHAR(255),
-         APP_ARGUMENT VARCHAR(255),
-         OUTPUT_STREAMING SMALLINT,
-         PRIMARY KEY(TEMPLATE_ID,OUTPUT_KEY),
-         FOREIGN KEY (TEMPLATE_ID) REFERENCES WORKFLOW(TEMPLATE_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE COMPONENT_STATUS
-(
-        STATUS_ID VARCHAR (255) NOT NULL,
-        TEMPLATE_ID VARCHAR (255) NOT NULL,
-        STATE VARCHAR(255),
-        REASON VARCHAR(255),
-        UPDATE_TIME TIMESTAMP DEFAULT NOW() ON UPDATE NOW(),
-        PRIMARY KEY (STATUS_ID),
-        FOREIGN KEY (TEMPLATE_ID) REFERENCES WORKFLOW(TEMPLATE_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE WORKFLOW_STATUS
-(
-        STATUS_ID VARCHAR (255) NOT NULL,
-        TEMPLATE_ID VARCHAR (255) NOT NULL,
-        STATE VARCHAR(255),
-        REASON VARCHAR(255),
-        UPDATE_TIME TIMESTAMP DEFAULT NOW() ON UPDATE NOW(),
-        PRIMARY KEY (STATUS_ID, TEMPLATE_ID),
-        FOREIGN KEY (TEMPLATE_ID) REFERENCES WORKFLOW(TEMPLATE_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE EDGE
-(
-        EDGE_ID VARCHAR (255) NOT NULL,
-        TEMPLATE_ID VARCHAR (255) NOT NULL,
-        NAME VARCHAR (255),
-        COMPONENT_STATUS_ID VARCHAR(255),
-        DESCRIPTION VARCHAR(500),
-        CREATED_TIME TIMESTAMP DEFAULT NOW() ON UPDATE NOW(),
-        PRIMARY KEY (EDGE_ID, TEMPLATE_ID),
-        FOREIGN KEY (TEMPLATE_ID) REFERENCES WORKFLOW(TEMPLATE_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE PORT
-(
-        PORT_ID VARCHAR (255) NOT NULL,
-        TEMPLATE_ID VARCHAR (255) NOT NULL,
-        NAME VARCHAR (255),
-        COMPONENT_STATUS_ID VARCHAR(255),
-        DESCRIPTION VARCHAR(500),
-        CREATED_TIME TIMESTAMP DEFAULT NOW() ON UPDATE NOW(),
-        PRIMARY KEY (PORT_ID, TEMPLATE_ID),
-        FOREIGN KEY (TEMPLATE_ID) REFERENCES WORKFLOW(TEMPLATE_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE NODE
-(
-        NODE_ID VARCHAR (255) NOT NULL,
-        TEMPLATE_ID VARCHAR (255) NOT NULL,
-        NAME VARCHAR (255),
-        APPLICATION_ID VARCHAR (255),
-        APPLICATION_NAME VARCHAR (255),
-        COMPONENT_STATUS_ID VARCHAR(255),
-        DESCRIPTION VARCHAR(500),
-        CREATED_TIME TIMESTAMP DEFAULT NOW() ON UPDATE NOW(),
-        PRIMARY KEY (NODE_ID, TEMPLATE_ID),
-        FOREIGN KEY (TEMPLATE_ID) REFERENCES WORKFLOW(TEMPLATE_ID) ON DELETE CASCADE
-);
\ No newline at end of file
diff --git a/modules/registry/pom.xml b/modules/registry/pom.xml
index 7cd4d65..791db1e 100644
--- a/modules/registry/pom.xml
+++ b/modules/registry/pom.xml
@@ -43,6 +43,7 @@
             </activation>
             <modules>
                 <module>registry-cpi</module>
+                <module>registry-core</module>
                 <module>registry-tools</module>
                 <module>registry-server</module>
             </modules>
diff --git a/modules/registry/registry-core/pom.xml b/modules/registry/registry-core/pom.xml
index 6b6f4a4..b6ec0fc 100644
--- a/modules/registry/registry-core/pom.xml
+++ b/modules/registry/registry-core/pom.xml
@@ -20,7 +20,10 @@
     under the License.
 
 -->
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+    <modelVersion>4.0.0</modelVersion>
 
     <parent>
         <groupId>org.apache.airavata</groupId>
@@ -29,112 +32,145 @@
         <relativePath>../pom.xml</relativePath>
     </parent>
 
-    <modelVersion>4.0.0</modelVersion>
+    <groupId>org.apache.airavata</groupId>
     <artifactId>airavata-registry-core</artifactId>
-    <packaging>jar</packaging>
-    <name>Airavata Registry Core</name>
-    <url>http://airavata.apache.org/</url>
+
+    <properties>
+        <derby.version>10.11.1.1</derby.version>
+        <surefire.version>2.18.1</surefire.version>
+        <skipTests>false</skipTests>
+        <mysql.connector.version>5.1.34</mysql.connector.version>
+    </properties>
 
     <dependencies>
         <dependency>
-            <groupId>org.slf4j</groupId>
-            <artifactId>slf4j-api</artifactId>
-        </dependency>
-        <dependency>
             <groupId>org.apache.airavata</groupId>
-            <artifactId>airavata-commons</artifactId>
+            <artifactId>airavata-data-models</artifactId>
             <version>${project.version}</version>
         </dependency>
-        <!-- Test -->
         <dependency>
-            <groupId>junit</groupId>
-            <artifactId>junit</artifactId>
-            <scope>test</scope>
+            <groupId>net.sf.dozer</groupId>
+            <artifactId>dozer</artifactId>
+            <version>5.4.0</version>
+            <exclusions>
+               <exclusion>
+                   <groupId>org.slf4j</groupId>
+                   <artifactId>slf4j-log4j12</artifactId>
+               </exclusion>
+            </exclusions>
         </dependency>
-		<dependency>
-			<groupId>org.slf4j</groupId>
-			<artifactId>jcl-over-slf4j</artifactId>
-			<scope>test</scope>
-		</dependency>
-		<dependency>
-			<groupId>org.slf4j</groupId>
-			<artifactId>slf4j-log4j12</artifactId>
-			<scope>test</scope>
-		</dependency>
         <dependency>
             <groupId>org.apache.openjpa</groupId>
             <artifactId>openjpa</artifactId>
             <version>${openjpa.version}</version>
         </dependency>
+
         <dependency>
-            <groupId>org.apache.airavata</groupId>
-            <artifactId>airavata-data-models</artifactId>
-            <version>${project.version}</version>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.airavata</groupId>
-            <artifactId>airavata-registry-cpi</artifactId>
-            <version>${project.version}</version>
-        </dependency>
-        <!--dependency>
             <groupId>mysql</groupId>
             <artifactId>mysql-connector-java</artifactId>
             <version>${mysql.connector.version}</version>
-        </dependency-->
+        </dependency>
         <dependency>
             <groupId>org.apache.derby</groupId>
             <artifactId>derby</artifactId>
             <version>${derby.version}</version>
-            <scope>test</scope>
         </dependency>
         <dependency>
             <groupId>org.apache.derby</groupId>
             <artifactId>derbyclient</artifactId>
             <version>${derby.version}</version>
-            <scope>test</scope>
         </dependency>
         <dependency>
             <groupId>org.apache.derby</groupId>
             <artifactId>derbynet</artifactId>
             <version>${derby.version}</version>
-            <scope>test</scope>
         </dependency>
         <dependency>
             <groupId>org.apache.derby</groupId>
             <artifactId>derbytools</artifactId>
             <version>${derby.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>junit</groupId>
+            <artifactId>junit</artifactId>
+            <version>4.12</version>
             <scope>test</scope>
         </dependency>
-	    <dependency>
+        <dependency>
+            <groupId>ch.qos.logback</groupId>
+            <artifactId>logback-classic</artifactId>
+            <version>${logback.version}</version>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.airavata</groupId>
+            <artifactId>airavata-commons</artifactId>
+            <version>0.17-SNAPSHOT</version>
+        </dependency>
+        <dependency>
             <groupId>org.apache.airavata</groupId>
             <artifactId>airavata-server-configuration</artifactId>
             <scope>test</scope>
         </dependency>
+        <dependency>
+            <groupId>org.apache.airavata</groupId>
+            <artifactId>airavata-registry-cpi</artifactId>
+            <version>0.17-SNAPSHOT</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.ibatis</groupId>
+            <artifactId>ibatis-sqlmap</artifactId>
+            <version>2.3.0</version>
+        </dependency>
+
     </dependencies>
 
     <build>
         <plugins>
-            <!--<plugin>-->
-                <!--<groupId>org.apache.maven.plugins</groupId>-->
-                <!--<artifactId>maven-antrun-plugin</artifactId>-->
-                <!--<version>${antrun.version}</version>-->
-                <!--<executions>-->
-                    <!--<execution>-->
-                        <!--<phase>process-classes</phase>-->
-                        <!--<configuration>-->
-                            <!--<tasks>-->
-                                <!--<taskdef name="openjpac" classname="org.apache.openjpa.ant.PCEnhancerTask" classpathref="maven.compile.classpath" />-->
-                                <!--<openjpac>-->
-                                    <!--<classpath refid="maven.compile.classpath" />-->
-                                <!--</openjpac>-->
-                            <!--</tasks>-->
-                        <!--</configuration>-->
-                        <!--<goals>-->
-                            <!--<goal>run</goal>-->
-                        <!--</goals>-->
-                    <!--</execution>-->
-                <!--</executions>-->
-            <!--</plugin>-->
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-compiler-plugin</artifactId>
+                <version>3.1</version>
+                <configuration>
+                    <source>1.8</source>
+                    <target>1.8</target>
+                </configuration>
+            </plugin>
+            <plugin>
+                <groupId>org.apache.openjpa</groupId>
+                <artifactId>openjpa-maven-plugin</artifactId>
+                <version>${openjpa.version}</version>
+                <configuration>
+                    <includes>**/entities/*.class</includes>
+                    <excludes>**/entities/XML*.class</excludes>
+                    <addDefaultConstructor>true</addDefaultConstructor>
+                    <enforcePropertyRestrictions>true</enforcePropertyRestrictions>
+                </configuration>
+                <executions>
+                    <execution>
+                        <id>enhancer</id>
+                        <phase>process-classes</phase>
+                        <goals>
+                            <goal>enhance</goal>
+                        </goals>
+                    </execution>
+                    <execution>
+                        <!-- execute with `mvn compile openjpa:sql@generate-sql` or `mvn process-classes` -->
+                        <id>generate-sql</id>
+                        <configuration>
+                            <!-- openjpa:sql doesn't work well with multiple persistence-unit's in persistence.xml, so
+                            use this single persistence-unit persistence.xml to list any classes for which SQL schema
+                            generation is desired -->
+                            <persistenceXmlFile>${basedir}/src/main/resources/META-INF/generate-sql-persistence.xml</persistenceXmlFile>
+                            <sqlAction>build</sqlAction>
+                            <connectionDriverName>org.apache.derby.jdbc.ClientDriver</connectionDriverName>
+                        </configuration>
+                        <goals>
+                            <goal>sql</goal>
+                        </goals>
+                    </execution>
+                </executions>
+            </plugin>
             <plugin>
                 <groupId>org.apache.maven.plugins</groupId>
                 <artifactId>maven-surefire-plugin</artifactId>
@@ -144,8 +180,6 @@
                     <failIfNoTests>false</failIfNoTests>
                     <skipTests>${skipTests}</skipTests>
                     <workingDirectory>${project.build.testOutputDirectory}</workingDirectory>
-                    <!-- making sure that the sure-fire plugin doesn't run the integration tests-->
-                    <!-- Integration tests are run using the fail-safe plugin in the module pom-->
                 </configuration>
             </plugin>
         </plugins>
diff --git a/modules/registry-refactoring/src/main/java/org/apache/airavata/registry/core/RegistryException.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/RegistryException.java
similarity index 100%
rename from modules/registry-refactoring/src/main/java/org/apache/airavata/registry/core/RegistryException.java
rename to modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/RegistryException.java
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/impl/AppCatalogImpl.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/impl/AppCatalogImpl.java
deleted file mode 100644
index 1809131..0000000
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/impl/AppCatalogImpl.java
+++ /dev/null
@@ -1,62 +0,0 @@
-/**
- *
- * 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.airavata.registry.core.app.catalog.impl;
-
-
-import org.apache.airavata.registry.core.workflow.catalog.impl.WorkflowCatalogImpl;
-import org.apache.airavata.registry.cpi.*;
-
-public class AppCatalogImpl implements AppCatalog {
-
-    @Override
-    public ComputeResource getComputeResource() {
-        return new ComputeResourceImpl();
-    }
-
-    @Override
-    public StorageResource getStorageResource() throws AppCatalogException {
-        return new StorageResourceImpl();
-    }
-
-    @Override
-    public ApplicationInterface getApplicationInterface() {
-        return new ApplicationInterfaceImpl();
-    }
-
-    @Override
-    public ApplicationDeployment getApplicationDeployment() {
-        return new ApplicationDeploymentImpl();
-    }
-
-    @Override
-	public GwyResourceProfile getGatewayProfile() throws AppCatalogException {
-		return new GwyResourceProfileImpl();
-	}
-    
-    @Override
-    public WorkflowCatalog getWorkflowCatalog() throws AppCatalogException {
-        return new WorkflowCatalogImpl();
-    }
-
-    @Override
-    public UsrResourceProfile getUserResourceProfile() throws AppCatalogException {
-        return new UsrResourceProfileImpl();
-    }
-}
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/impl/ApplicationDeploymentImpl.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/impl/ApplicationDeploymentImpl.java
deleted file mode 100644
index 7ec24d6..0000000
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/impl/ApplicationDeploymentImpl.java
+++ /dev/null
@@ -1,455 +0,0 @@
-/**
- *
- * 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.airavata.registry.core.app.catalog.impl;
-
-import org.apache.airavata.model.appcatalog.appdeployment.ApplicationDeploymentDescription;
-import org.apache.airavata.model.appcatalog.appdeployment.CommandObject;
-import org.apache.airavata.model.appcatalog.appdeployment.SetEnvPaths;
-import org.apache.airavata.model.parallelism.ApplicationParallelismType;
-import org.apache.airavata.registry.core.app.catalog.resources.*;
-import org.apache.airavata.registry.core.app.catalog.util.AppCatalogThriftConversion;
-import org.apache.airavata.registry.cpi.AppCatalogException;
-import org.apache.airavata.registry.cpi.ApplicationDeployment;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-public class ApplicationDeploymentImpl implements ApplicationDeployment {
-    private final static Logger logger = LoggerFactory.getLogger(ApplicationDeploymentImpl.class);
-
-    @Override
-    public String addApplicationDeployment(ApplicationDeploymentDescription deploymentDescription, String gatewayId) throws AppCatalogException {
-        try {
-            AppDeploymentResource deploymentResource = new AppDeploymentResource();
-            ComputeResourceResource computeHostResource = new ComputeResourceResource();
-            AppModuleResource moduleResource = new AppModuleResource();
-            if (!computeHostResource.isExists(deploymentDescription.getComputeHostId())){
-                logger.error("Compute host does not exist in the system. Please create a Compute host first...");
-                throw new AppCatalogException("Compute host does not exist in the system. Please create a Compute host first...");
-            }
-            if (!moduleResource.isExists(deploymentDescription.getAppModuleId())){
-                logger.error("Application module does not exist in the system. Please create an application module first...");
-                throw new AppCatalogException("Application module does not exist in the system. Please create an application module first...");
-            }
-            AppModuleResource module = (AppModuleResource)moduleResource.get(deploymentDescription.getAppModuleId());
-            ComputeResourceResource hostResource = (ComputeResourceResource) computeHostResource.get(deploymentDescription.getComputeHostId());
-            deploymentResource.setDeploymentId(hostResource.getHostName() + "_" + deploymentDescription.getAppModuleId());
-            deploymentResource.setAppModuleId(deploymentDescription.getAppModuleId());
-            deploymentResource.setModuleResource(module);
-            deploymentResource.setHostId(deploymentDescription.getComputeHostId());
-            deploymentResource.setHostResource(hostResource);
-            deploymentResource.setAppDes(deploymentDescription.getAppDeploymentDescription());
-            deploymentResource.setExecutablePath(deploymentDescription.getExecutablePath());
-            deploymentResource.setGatewayId(gatewayId);
-            deploymentResource.setDefaultQueueName(deploymentDescription.getDefaultQueueName());
-            deploymentResource.setDefaultCPUCount(deploymentDescription.getDefaultCPUCount());
-            deploymentResource.setDefaultNodeCount(deploymentDescription.getDefaultNodeCount());
-            deploymentResource.setDefaultWalltime(deploymentDescription.getDefaultWalltime());
-            deploymentResource.setEditableByUser(deploymentDescription.isEditableByUser());
-            ApplicationParallelismType parallelism = deploymentDescription.getParallelism();
-            if (parallelism != null){
-                deploymentResource.setParallelism(parallelism.toString());
-            }
-            deploymentResource.save();
-            deploymentDescription.setAppDeploymentId(deploymentResource.getDeploymentId());
-
-            List<CommandObject> moduleLoadCmds = deploymentDescription.getModuleLoadCmds();
-            if (moduleLoadCmds != null && !moduleLoadCmds.isEmpty()){
-                for (CommandObject cmd : moduleLoadCmds){
-                    ModuleLoadCmdResource cmdResource = new ModuleLoadCmdResource();
-                    cmdResource.setAppDeploymentId(deploymentDescription.getAppDeploymentId());
-                    cmdResource.setOrder(cmd.getCommandOrder());
-                    cmdResource.setCmd(cmd.getCommand());
-                    cmdResource.save();
-                }
-            }
-
-            List<CommandObject> preJobCommands = deploymentDescription.getPreJobCommands();
-            if (preJobCommands != null && !preJobCommands.isEmpty()){
-                for (CommandObject cmd : preJobCommands){
-                    PreJobCommandResource cmdResource = new PreJobCommandResource();
-                    cmdResource.setAppDeploymentId(deploymentDescription.getAppDeploymentId());
-                    cmdResource.setCommand(cmd.getCommand());
-                    cmdResource.setOrder(cmd.getCommandOrder());
-                    cmdResource.save();
-                }
-            }
-
-            List<CommandObject> postJobCommands = deploymentDescription.getPostJobCommands();
-            if (postJobCommands != null && !postJobCommands.isEmpty()){
-                for (CommandObject cmd : postJobCommands){
-                    PostJobCommandResource cmdResource = new PostJobCommandResource();
-                    cmdResource.setAppDeploymentId(deploymentDescription.getAppDeploymentId());
-                    cmdResource.setCommand(cmd.getCommand());
-                    cmdResource.setOrder(cmd.getCommandOrder());
-                    cmdResource.save();
-                }
-            }
-
-            List<SetEnvPaths> libPrependPaths = deploymentDescription.getLibPrependPaths();
-            if (libPrependPaths != null && !libPrependPaths.isEmpty()){
-                for (SetEnvPaths path : libPrependPaths){
-                    LibraryPrepandPathResource prepandPathResource = new LibraryPrepandPathResource();
-                    prepandPathResource.setAppDeploymentResource(deploymentResource);
-                    prepandPathResource.setName(path.getName());
-                    prepandPathResource.setValue(path.getValue());
-                    prepandPathResource.setDeploymentId(deploymentResource.getDeploymentId());
-                    prepandPathResource.save();
-                }
-            }
-
-            List<SetEnvPaths> libApendPaths = deploymentDescription.getLibAppendPaths();
-            if (libApendPaths != null && !libApendPaths.isEmpty()){
-                for (SetEnvPaths path : libApendPaths){
-                    LibraryApendPathResource apendPathResource = new LibraryApendPathResource();
-                    apendPathResource.setAppDeploymentResource(deploymentResource);
-                    apendPathResource.setName(path.getName());
-                    apendPathResource.setValue(path.getValue());
-                    apendPathResource.setDeploymentId(deploymentResource.getDeploymentId());
-                    apendPathResource.save();
-                }
-            }
-            List<SetEnvPaths> setEnvironment = deploymentDescription.getSetEnvironment();
-            if (setEnvironment != null && !setEnvironment.isEmpty()){
-                for (SetEnvPaths path : setEnvironment){
-                    AppEnvironmentResource environmentResource = new AppEnvironmentResource();
-                    environmentResource.setAppDeploymentResource(deploymentResource);
-                    environmentResource.setName(path.getName());
-                    environmentResource.setValue(path.getValue());
-                    environmentResource.setDeploymentId(deploymentResource.getDeploymentId());
-                    environmentResource.setOrder(path.getEnvPathOrder());
-                    environmentResource.save();
-                }
-            }
-            return deploymentResource.getDeploymentId();
-        }catch (Exception e) {
-            logger.error("Error while saving application deployment...", e);
-            throw new AppCatalogException(e);
-        }
-    }
-
-    @Override
-    public void updateApplicationDeployment(String deploymentId, ApplicationDeploymentDescription updatedDeployment) throws AppCatalogException {
-        try {
-            AppDeploymentResource deploymentResource = new AppDeploymentResource();
-            AppDeploymentResource existingDep = (AppDeploymentResource)deploymentResource.get(deploymentId);
-            ComputeResourceResource computeHostResource = new ComputeResourceResource();
-            AppModuleResource moduleResource = new AppModuleResource();
-            if (!computeHostResource.isExists(updatedDeployment.getComputeHostId())){
-                logger.error("Compute host does not exist in the system. Please create a Compute host first...");
-                throw new AppCatalogException("Compute host does not exist in the system. Please create a Compute host first...");
-            }
-            if (!moduleResource.isExists(updatedDeployment.getAppModuleId())){
-                logger.error("Application module does not exist in the system. Please create an application module first...");
-                throw new AppCatalogException("Application module does not exist in the system. Please create an application module first...");
-            }
-            AppModuleResource module = (AppModuleResource)moduleResource.get(updatedDeployment.getAppModuleId());
-            existingDep.setAppModuleId(updatedDeployment.getAppModuleId());
-            existingDep.setModuleResource(module);
-            existingDep.setHostId(updatedDeployment.getComputeHostId());
-            existingDep.setHostResource((ComputeResourceResource)computeHostResource.get(updatedDeployment.getComputeHostId()));
-            existingDep.setAppDes(updatedDeployment.getAppDeploymentDescription());
-            existingDep.setExecutablePath(updatedDeployment.getExecutablePath());
-            existingDep.setDefaultQueueName(updatedDeployment.getDefaultQueueName());
-            existingDep.setDefaultCPUCount(updatedDeployment.getDefaultCPUCount());
-            existingDep.setDefaultNodeCount(updatedDeployment.getDefaultNodeCount());
-            existingDep.setDefaultWalltime(updatedDeployment.getDefaultWalltime());
-            existingDep.setEditableByUser(updatedDeployment.isEditableByUser());
-            if (updatedDeployment.getParallelism() != null){
-                existingDep.setParallelism(updatedDeployment.getParallelism().toString());
-            }
-
-            existingDep.save();
-
-            // remove existing module load commands
-            ModuleLoadCmdResource cmdResource = new ModuleLoadCmdResource();
-            Map<String, String> ids = new HashMap<String, String>();
-            ids.put(AppCatAbstractResource.ModuleLoadCmdConstants.APP_DEPLOYMENT_ID, deploymentId);
-            cmdResource.remove(ids);
-            List<CommandObject> moduleLoadCmds = updatedDeployment.getModuleLoadCmds();
-            if (moduleLoadCmds != null && !moduleLoadCmds.isEmpty()){
-                for (CommandObject cmd : moduleLoadCmds){
-                    ids = new HashMap<String, String>();
-                    ids.put(AppCatAbstractResource.ModuleLoadCmdConstants.APP_DEPLOYMENT_ID, deploymentId);
-                    ids.put(AppCatAbstractResource.ModuleLoadCmdConstants.CMD, cmd.getCommand());
-                    if (cmdResource.isExists(ids)){
-                        cmdResource = (ModuleLoadCmdResource)cmdResource.get(ids);
-                    }
-                    cmdResource.setCmd(cmd.getCommand());
-                    cmdResource.setAppDeploymentResource(existingDep);
-                    cmdResource.setAppDeploymentId(deploymentId);
-                    cmdResource.setOrder(cmd.getCommandOrder());
-                    cmdResource.save();
-                }
-            }
-
-            PreJobCommandResource preJobCommandResource = new PreJobCommandResource();
-            ids = new HashMap<String, String>();
-            ids.put(AppCatAbstractResource.PreJobCommandConstants.DEPLOYMENT_ID, deploymentId);
-            preJobCommandResource.remove(ids);
-            List<CommandObject> preJobCommands = updatedDeployment.getPreJobCommands();
-            if (preJobCommands != null && !preJobCommands.isEmpty()){
-                for (CommandObject cmd : preJobCommands){
-                    ids = new HashMap<String, String>();
-                    ids.put(AppCatAbstractResource.PreJobCommandConstants.DEPLOYMENT_ID, deploymentId);
-                    ids.put(AppCatAbstractResource.PreJobCommandConstants.COMMAND, cmd.getCommand());
-                    if (preJobCommandResource.isExists(ids)){
-                        preJobCommandResource = (PreJobCommandResource)preJobCommandResource.get(ids);
-                    }
-                    preJobCommandResource.setCommand(cmd.getCommand());
-                    preJobCommandResource.setAppDeploymentResource(existingDep);
-                    preJobCommandResource.setAppDeploymentId(deploymentId);
-                    preJobCommandResource.setOrder(cmd.getCommandOrder());
-                    preJobCommandResource.save();
-                }
-            }
-
-            PostJobCommandResource postJobCommandResource = new PostJobCommandResource();
-            ids = new HashMap<String, String>();
-            ids.put(AppCatAbstractResource.PostJobCommandConstants.DEPLOYMENT_ID, deploymentId);
-            postJobCommandResource.remove(ids);
-            List<CommandObject> postJobCommands = updatedDeployment.getPostJobCommands();
-            if (postJobCommands != null && !postJobCommands.isEmpty()){
-                for (CommandObject cmd : postJobCommands){
-                    ids = new HashMap<String, String>();
-                    ids.put(AppCatAbstractResource.PostJobCommandConstants.DEPLOYMENT_ID, deploymentId);
-                    ids.put(AppCatAbstractResource.PostJobCommandConstants.COMMAND, cmd.getCommand());
-                    if (postJobCommandResource.isExists(ids)){
-                        postJobCommandResource = (PostJobCommandResource)postJobCommandResource.get(ids);
-                    }
-                    postJobCommandResource.setCommand(cmd.getCommand());
-                    postJobCommandResource.setOrder(cmd.getCommandOrder());
-                    postJobCommandResource.setAppDeploymentResource(existingDep);
-                    postJobCommandResource.setAppDeploymentId(deploymentId);
-                    postJobCommandResource.save();
-                }
-            }
-
-            // remove existing lib prepand paths
-            LibraryPrepandPathResource prepandPathResource = new LibraryPrepandPathResource();
-            ids = new HashMap<String, String>();
-            ids.put(AppCatAbstractResource.LibraryPrepandPathConstants.DEPLOYMENT_ID, deploymentId);
-            prepandPathResource.remove(ids);
-            List<SetEnvPaths> libPrependPaths = updatedDeployment.getLibPrependPaths();
-            if (libPrependPaths != null && !libPrependPaths.isEmpty()){
-                for (SetEnvPaths path : libPrependPaths){
-                    ids = new HashMap<String, String>();
-                    ids.put(AppCatAbstractResource.LibraryPrepandPathConstants.DEPLOYMENT_ID, deploymentId);
-                    ids.put(AppCatAbstractResource.LibraryPrepandPathConstants.NAME, path.getName());
-                    if (prepandPathResource.isExists(ids)){
-                        prepandPathResource = (LibraryPrepandPathResource)prepandPathResource.get(ids);
-                    }
-                    prepandPathResource.setAppDeploymentResource(existingDep);
-                    prepandPathResource.setName(path.getName());
-                    prepandPathResource.setValue(path.getValue());
-                    prepandPathResource.setDeploymentId(deploymentId);
-                    prepandPathResource.save();
-                }
-            }
-
-            List<SetEnvPaths> libApendPaths = updatedDeployment.getLibAppendPaths();
-            // remove lib append paths
-            LibraryApendPathResource apendPathResource = new LibraryApendPathResource();
-            ids = new HashMap<String, String>();
-            ids.put(AppCatAbstractResource.LibraryApendPathConstants.DEPLOYMENT_ID, deploymentId);
-            apendPathResource.remove(ids);
-            if (libApendPaths != null && !libApendPaths.isEmpty()){
-                for (SetEnvPaths path : libApendPaths){
-                    ids = new HashMap<String, String>();
-                    ids.put(AppCatAbstractResource.LibraryApendPathConstants.DEPLOYMENT_ID, deploymentId);
-                    ids.put(AppCatAbstractResource.LibraryApendPathConstants.NAME, path.getName());
-                    if (apendPathResource.isExists(ids)){
-                        apendPathResource = (LibraryApendPathResource)apendPathResource.get(ids);
-                    }
-                    apendPathResource.setAppDeploymentResource(existingDep);
-                    apendPathResource.setName(path.getName());
-                    apendPathResource.setValue(path.getValue());
-                    apendPathResource.setDeploymentId(deploymentId);
-                    apendPathResource.save();
-                }
-            }
-
-            List<SetEnvPaths> setEnvironment = updatedDeployment.getSetEnvironment();
-            // remove existing setEnvPaths
-            AppEnvironmentResource environmentResource = new AppEnvironmentResource();
-            ids = new HashMap<String, String>();
-            ids.put(AppCatAbstractResource.AppEnvironmentConstants.DEPLOYMENT_ID, deploymentId);
-            environmentResource.remove(ids);
-            if (setEnvironment != null && !setEnvironment.isEmpty()){
-                for (SetEnvPaths path : setEnvironment){
-                    ids = new HashMap<String, String>();
-                    ids.put(AppCatAbstractResource.AppEnvironmentConstants.DEPLOYMENT_ID, deploymentId);
-                    ids.put(AppCatAbstractResource.AppEnvironmentConstants.NAME, path.getName());
-                    if (environmentResource.isExists(ids)){
-                        environmentResource = (AppEnvironmentResource)environmentResource.get(ids);
-                    }
-                    environmentResource.setAppDeploymentResource(existingDep);
-                    environmentResource.setName(path.getName());
-                    environmentResource.setValue(path.getValue());
-                    environmentResource.setDeploymentId(deploymentId);
-                    environmentResource.setOrder(path.getEnvPathOrder());
-                    environmentResource.save();
-                }
-            }
-        }catch (Exception e) {
-            logger.error("Error while updating application deployment...", e);
-            throw new AppCatalogException(e);
-        }
-    }
-
-    @Override
-    public ApplicationDeploymentDescription getApplicationDeployement(String deploymentId) throws AppCatalogException {
-        try {
-            AppDeploymentResource deploymentResource = new AppDeploymentResource();
-            AppDeploymentResource appDep = (AppDeploymentResource)deploymentResource.get(deploymentId);
-            return AppCatalogThriftConversion.getApplicationDeploymentDescription(appDep);
-        }catch (Exception e) {
-            logger.error("Error while retrieving application deployment...", e);
-            throw new AppCatalogException(e);
-        }
-    }
-
-    @Override
-    public List<ApplicationDeploymentDescription> getApplicationDeployments(Map<String, String> filters) throws AppCatalogException {
-        List<ApplicationDeploymentDescription> deploymentDescriptions = new ArrayList<ApplicationDeploymentDescription>();
-        try {
-            AppDeploymentResource resource = new AppDeploymentResource();
-            boolean firstTry=true;
-            for (String fieldName : filters.keySet() ){
-                List<ApplicationDeploymentDescription> tmpDescriptions = new ArrayList<ApplicationDeploymentDescription>();
-                if (fieldName.equals(AppCatAbstractResource.ApplicationDeploymentConstants.APP_MODULE_ID)){
-                    List<AppCatalogResource> resources = resource.get(AppCatAbstractResource.ApplicationDeploymentConstants.APP_MODULE_ID, filters.get(fieldName));
-                    if (resources != null && !resources.isEmpty()){
-                    	tmpDescriptions = AppCatalogThriftConversion.getAppDepDescList(resources);
-                    }
-                }else if (fieldName.equals(AppCatAbstractResource.ApplicationDeploymentConstants.COMPUTE_HOST_ID)){
-                    List<AppCatalogResource> resources = resource.get(AppCatAbstractResource.ApplicationDeploymentConstants.COMPUTE_HOST_ID, filters.get(fieldName));
-                    if (resources != null && !resources.isEmpty()){
-                    	tmpDescriptions = AppCatalogThriftConversion.getAppDepDescList(resources);
-                    }
-                } else {
-                    logger.error("Unsupported field name for app deployment.", new IllegalArgumentException());
-                    throw new IllegalArgumentException("Unsupported field name for app deployment.");
-                }
-                if (firstTry){
-                	deploymentDescriptions.addAll(tmpDescriptions);
-                    firstTry=false;
-                }else{
-                    List<String> ids=new ArrayList<String>();
-                	for (ApplicationDeploymentDescription applicationDeploymentDescription : deploymentDescriptions) {
-						ids.add(applicationDeploymentDescription.getAppDeploymentId());
-					}
-                    List<ApplicationDeploymentDescription> tmp2Descriptions = new ArrayList<ApplicationDeploymentDescription>();
-                	for (ApplicationDeploymentDescription applicationDeploymentDescription : tmpDescriptions) {
-						if (ids.contains(applicationDeploymentDescription.getAppDeploymentId())){
-							tmp2Descriptions.add(applicationDeploymentDescription);
-						}
-					}
-                	deploymentDescriptions.clear();
-                	deploymentDescriptions.addAll(tmp2Descriptions);
-                }
-            }
-        }catch (Exception e){
-            logger.error("Error while retrieving app deployment list...", e);
-            throw new AppCatalogException(e);
-        }
-        return deploymentDescriptions;
-    }
-
-    @Override
-    public List<ApplicationDeploymentDescription> getAllApplicationDeployements(String gatewayId) throws AppCatalogException {
-        List<ApplicationDeploymentDescription> deploymentDescriptions = new ArrayList<ApplicationDeploymentDescription>();
-        try {
-            AppDeploymentResource resource = new AppDeploymentResource();
-            resource.setGatewayId(gatewayId);
-            List<AppCatalogResource> resources = resource.getAll();
-            if (resources != null && !resources.isEmpty()){
-                deploymentDescriptions = AppCatalogThriftConversion.getAppDepDescList(resources);
-            }
-
-        }catch (Exception e){
-            logger.error("Error while retrieving app deployment list...", e);
-            throw new AppCatalogException(e);
-        }
-        return deploymentDescriptions;
-    }
-
-    @Override
-    public List<ApplicationDeploymentDescription> getAccessibleApplicationDeployments(String gatewayId, List<String> accessibleAppIds, List<String> accessibleComputeResourceIds) throws AppCatalogException {
-        List<ApplicationDeploymentDescription> deploymentDescriptions = new ArrayList<ApplicationDeploymentDescription>();
-        try {
-            AppDeploymentResource resource = new AppDeploymentResource();
-            resource.setGatewayId(gatewayId);
-            resource.setAccessibleApplicationDeploymentIds(accessibleAppIds);
-            resource.setAccessibleComputeResourceIds(accessibleComputeResourceIds);
-            List<AppCatalogResource> resources = resource.getAll();
-            if (resources != null && !resources.isEmpty()){
-                deploymentDescriptions = AppCatalogThriftConversion.getAppDepDescList(resources);
-            }
-
-        }catch (Exception e){
-            logger.error("Error while retrieving app deployment list...", e);
-            throw new AppCatalogException(e);
-        }
-        return deploymentDescriptions;
-    }
-
-    @Override
-    public List<ApplicationDeploymentDescription> getAccessibleApplicationDeployments(String gatewayId, String appModuleId, List<String> accessibleAppIds, List<String> accessibleComputeResourceIds) throws AppCatalogException {
-        throw new RuntimeException("Not implemented, use ApplicationDeploymentRepository.");
-    }
-
-    @Override
-    public List<String> getAllApplicationDeployementIds() throws AppCatalogException {
-        try {
-            AppDeploymentResource resource = new AppDeploymentResource();
-            return resource.getAllIds();
-        }catch (Exception e){
-            logger.error("Error while retrieving app deployment list...", e);
-            throw new AppCatalogException(e);
-        }
-    }
-
-    @Override
-    public boolean isAppDeploymentExists(String deploymentId) throws AppCatalogException {
-        try {
-           AppDeploymentResource deploymentResource = new AppDeploymentResource();
-            return deploymentResource.isExists(deploymentId);
-        }catch (Exception e){
-            logger.error("Error while retrieving app deployment...", e);
-            throw new AppCatalogException(e);
-        }
-    }
-
-    @Override
-    public void removeAppDeployment(String deploymentId) throws AppCatalogException {
-        try {
-            AppDeploymentResource deploymentResource = new AppDeploymentResource();
-            deploymentResource.remove(deploymentId);
-        }catch (Exception e){
-            logger.error("Error while deleting app deployment...", e);
-            throw new AppCatalogException(e);
-        }
-    }
-}
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/impl/ApplicationInterfaceImpl.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/impl/ApplicationInterfaceImpl.java
deleted file mode 100644
index 6dda7b3..0000000
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/impl/ApplicationInterfaceImpl.java
+++ /dev/null
@@ -1,475 +0,0 @@
-/**
- *
- * 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.airavata.registry.core.app.catalog.impl;
-
-import org.apache.airavata.model.appcatalog.appdeployment.ApplicationModule;
-import org.apache.airavata.model.appcatalog.appinterface.ApplicationInterfaceDescription;
-import org.apache.airavata.model.appcatalog.appinterface.application_interface_modelConstants;
-import org.apache.airavata.model.application.io.InputDataObjectType;
-import org.apache.airavata.model.application.io.OutputDataObjectType;
-import org.apache.airavata.registry.core.app.catalog.resources.*;
-import org.apache.airavata.registry.core.app.catalog.util.AppCatalogThriftConversion;
-import org.apache.airavata.registry.core.app.catalog.util.AppCatalogUtils;
-import org.apache.airavata.registry.cpi.AppCatalogException;
-import org.apache.airavata.registry.cpi.ApplicationInterface;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-public class ApplicationInterfaceImpl implements ApplicationInterface {
-    private final static Logger logger = LoggerFactory.getLogger(ApplicationInterfaceImpl.class);
-
-    @Override
-    public String addApplicationModule(ApplicationModule applicationModule, String gatewayId) throws AppCatalogException {
-        try {
-            AppModuleResource moduleResource = new AppModuleResource();
-            moduleResource.setModuleName(applicationModule.getAppModuleName());
-            moduleResource.setGatewayId(gatewayId);
-            if (!applicationModule.getAppModuleId().equals("") && !applicationModule.getAppModuleId().equals(application_interface_modelConstants.DEFAULT_ID)){
-                moduleResource.setModuleId(applicationModule.getAppModuleId());
-            }else {
-                moduleResource.setModuleId(AppCatalogUtils.getID(applicationModule.getAppModuleName()));
-            }
-            moduleResource.setModuleDesc(applicationModule.getAppModuleDescription());
-            moduleResource.setModuleVersion(applicationModule.getAppModuleVersion());
-            moduleResource.save();
-            applicationModule.setAppModuleId(moduleResource.getModuleId());
-            return moduleResource.getModuleId();
-        }catch (Exception e) {
-            logger.error("Error while adding application module "+applicationModule.getAppModuleName()+" ["+applicationModule.getAppModuleVersion()+"]", e);
-            throw new AppCatalogException(e);
-        }
-    }
-
-    @Override
-    public String addApplicationInterface(ApplicationInterfaceDescription applicationInterfaceDescription, String gatewayId) throws AppCatalogException {
-        try {
-            AppInterfaceResource resource = new AppInterfaceResource();
-            resource.setAppName(applicationInterfaceDescription.getApplicationName());
-            if (!applicationInterfaceDescription.getApplicationInterfaceId().equals("") && !applicationInterfaceDescription.getApplicationInterfaceId().equals(application_interface_modelConstants.DEFAULT_ID)){
-                resource.setInterfaceId(applicationInterfaceDescription.getApplicationInterfaceId());
-            }else {
-                resource.setInterfaceId(AppCatalogUtils.getID(applicationInterfaceDescription.getApplicationName()));
-            }
-            resource.setAppDescription(applicationInterfaceDescription.getApplicationDescription());
-            resource.setGatewayId(gatewayId);
-            resource.setArchiveWorkingDirectory(applicationInterfaceDescription.isArchiveWorkingDirectory());
-            resource.setHasOptionalFileInputs(applicationInterfaceDescription.isHasOptionalFileInputs());
-            resource.save();
-            applicationInterfaceDescription.setApplicationInterfaceId(resource.getInterfaceId());
-
-            List<String> applicationModules = applicationInterfaceDescription.getApplicationModules();
-            if (applicationModules != null && !applicationModules.isEmpty()){
-                for (String moduleId : applicationModules){
-                    AppModuleResource appModuleResource = new AppModuleResource();
-                    AppModuleMappingAppCatalogResourceAppCat moduleMappingResource = new AppModuleMappingAppCatalogResourceAppCat();
-                    moduleMappingResource.setInterfaceId(resource.getInterfaceId());
-                    moduleMappingResource.setModuleId(moduleId);
-                    moduleMappingResource.setModuleResource((AppModuleResource)appModuleResource.get(moduleId));
-                    moduleMappingResource.setAppInterfaceResource(resource);
-                    moduleMappingResource.save();
-                }
-            }
-
-            List<InputDataObjectType> applicationInputs = applicationInterfaceDescription.getApplicationInputs();
-            if (applicationInputs != null && !applicationInputs.isEmpty()){
-                for (InputDataObjectType input : applicationInputs){
-                    ApplicationInputResource inputResource = new ApplicationInputResource();
-                    inputResource.setAppInterfaceResource(resource);
-                    inputResource.setInterfaceID(resource.getInterfaceId());
-                    inputResource.setUserFriendlyDesc(input.getUserFriendlyDescription());
-                    inputResource.setInputKey(input.getName());
-                    inputResource.setInputVal(input.getValue());
-                    inputResource.setDataType(input.getType().toString());
-                    inputResource.setMetadata(input.getMetaData());
-                    inputResource.setStandardInput(input.isStandardInput());
-                    inputResource.setAppArgument(input.getApplicationArgument());
-                    inputResource.setInputOrder(input.getInputOrder());
-                    inputResource.setRequired(input.isIsRequired());
-                    inputResource.setRequiredToCMD(input.isRequiredToAddedToCommandLine());
-                    inputResource.save();
-                }
-            }
-
-            List<OutputDataObjectType> applicationOutputs = applicationInterfaceDescription.getApplicationOutputs();
-            if (applicationOutputs != null && !applicationOutputs.isEmpty()) {
-                for (OutputDataObjectType output : applicationOutputs) {
-                    ApplicationOutputResource outputResource = new ApplicationOutputResource();
-                    outputResource.setInterfaceID(resource.getInterfaceId());
-                    outputResource.setAppInterfaceResource(resource);
-                    outputResource.setOutputKey(output.getName());
-                    outputResource.setOutputVal(output.getValue());
-                    outputResource.setDataType(output.getType().toString());
-                    outputResource.setRequired(output.isIsRequired());
-                    outputResource.setRequiredToCMD(output.isRequiredToAddedToCommandLine());
-                    outputResource.setDataMovement(output.isDataMovement());
-                    outputResource.setDataNameLocation(output.getLocation());
-                    outputResource.setAppArgument(output.getApplicationArgument());
-                    outputResource.setSearchQuery(output.getSearchQuery());
-                    outputResource.setOutputStreaming(output.isOutputStreaming());
-                    outputResource.save();
-                }
-            }
-            return resource.getInterfaceId();
-        }catch (Exception e) {
-            logger.error("Error while adding application interface "+applicationInterfaceDescription.getApplicationName(), e);
-            throw new AppCatalogException(e);
-        }
-    }
-
-    @Override
-    public void addApplicationModuleMapping(String moduleId, String interfaceId) throws AppCatalogException {
-        try {
-            AppModuleResource appModuleResource = new AppModuleResource();
-            AppInterfaceResource interfaceResource = new AppInterfaceResource();
-            AppModuleMappingAppCatalogResourceAppCat moduleMappingResource = new AppModuleMappingAppCatalogResourceAppCat();
-            moduleMappingResource.setInterfaceId(interfaceId);
-            moduleMappingResource.setModuleId(moduleId);
-            moduleMappingResource.setModuleResource((AppModuleResource)appModuleResource.get(moduleId));
-            moduleMappingResource.setAppInterfaceResource((AppInterfaceResource)interfaceResource.get(interfaceId));
-            moduleMappingResource.save();
-        }catch (Exception e) {
-            logger.error("Error while saving application module mapping "+moduleId, e);
-            throw new AppCatalogException(e);
-        }
-    }
-
-    @Override
-    public void updateApplicationModule(String moduleId, ApplicationModule updatedModule) throws AppCatalogException {
-        try {
-            AppModuleResource moduleResource = new AppModuleResource();
-            AppModuleResource existingModule = (AppModuleResource)moduleResource.get(moduleId);
-            existingModule.setModuleName(updatedModule.getAppModuleName());
-            existingModule.setModuleDesc(updatedModule.getAppModuleDescription());
-            existingModule.setModuleVersion(updatedModule.getAppModuleVersion());
-            existingModule.save();
-        }catch (Exception e) {
-            logger.error("Error while updating application module "+moduleId, e);
-            throw new AppCatalogException(e);
-        }
-    }
-
-    @Override
-    public void updateApplicationInterface(String interfaceId, ApplicationInterfaceDescription updatedInterface) throws AppCatalogException {
-        try {
-            AppInterfaceResource resource = new AppInterfaceResource();
-            AppInterfaceResource existingInterface = (AppInterfaceResource) resource.get(interfaceId);
-            existingInterface.setAppName(updatedInterface.getApplicationName());
-            existingInterface.setAppDescription(updatedInterface.getApplicationDescription());
-            existingInterface.setHasOptionalFileInputs(updatedInterface.isHasOptionalFileInputs());
-            existingInterface.setArchiveWorkingDirectory(updatedInterface.isArchiveWorkingDirectory());
-            existingInterface.save();
-
-            // remove existing modules before adding
-            Map<String, String> ids = new HashMap<String, String>();
-            ids.put(AppCatAbstractResource.AppModuleMappingConstants.INTERFACE_ID, interfaceId);
-            AppModuleMappingAppCatalogResourceAppCat moduleMappingResource = new AppModuleMappingAppCatalogResourceAppCat();
-            moduleMappingResource.remove(ids);
-            List<String> applicationModules = updatedInterface.getApplicationModules();
-            if (applicationModules != null && !applicationModules.isEmpty()) {
-                for (String moduleId : applicationModules) {
-                    AppModuleResource appModuleResource = new AppModuleResource();
-                    moduleMappingResource = new AppModuleMappingAppCatalogResourceAppCat();
-                    ids = new HashMap<String, String>();
-                    ids.put(AppCatAbstractResource.AppModuleMappingConstants.MODULE_ID, moduleId);
-                    ids.put(AppCatAbstractResource.AppModuleMappingConstants.INTERFACE_ID, interfaceId);
-                    AppModuleMappingAppCatalogResourceAppCat existingMapping;
-                    if (!moduleMappingResource.isExists(ids)) {
-                        existingMapping = new AppModuleMappingAppCatalogResourceAppCat();
-                    } else {
-                        existingMapping = (AppModuleMappingAppCatalogResourceAppCat) moduleMappingResource.get(ids);
-                    }
-                    existingMapping.setInterfaceId(interfaceId);
-                    existingMapping.setModuleId(moduleId);
-                    existingMapping.setModuleResource((AppModuleResource) appModuleResource.get(moduleId));
-                    existingMapping.setAppInterfaceResource(existingInterface);
-                    existingMapping.save();
-                }
-            }
-
-            // remove existing application inputs
-            ApplicationInputResource inputResource = new ApplicationInputResource();
-            ids = new HashMap<String, String>();
-            ids.put(AppCatAbstractResource.AppInputConstants.INTERFACE_ID, interfaceId);
-            inputResource.remove(ids);
-            List<InputDataObjectType> applicationInputs = updatedInterface.getApplicationInputs();
-            if (applicationInputs != null && !applicationInputs.isEmpty()) {
-                for (InputDataObjectType input : applicationInputs) {
-                    inputResource = new ApplicationInputResource();
-                    ids = new HashMap<String, String>();
-                    ids.put(AppCatAbstractResource.AppInputConstants.INTERFACE_ID, interfaceId);
-                    ids.put(AppCatAbstractResource.AppInputConstants.INPUT_KEY, input.getName());
-                    if (inputResource.isExists(ids)) {
-                        inputResource = (ApplicationInputResource) inputResource.get(ids);
-                    }
-                    inputResource.setAppInterfaceResource(existingInterface);
-                    inputResource.setInterfaceID(interfaceId);
-                    inputResource.setUserFriendlyDesc(input.getUserFriendlyDescription());
-                    inputResource.setInputKey(input.getName());
-                    inputResource.setInputVal(input.getValue());
-                    inputResource.setDataType(input.getType().toString());
-                    inputResource.setMetadata(input.getMetaData());
-                    inputResource.setStandardInput(input.isStandardInput());
-                    inputResource.setAppArgument(input.getApplicationArgument());
-                    inputResource.setInputOrder(input.getInputOrder());
-                    inputResource.setRequired(input.isIsRequired());
-                    inputResource.setRequiredToCMD(input.isRequiredToAddedToCommandLine());
-                    inputResource.setDataStaged(input.isDataStaged());
-                    inputResource.setIsReadOnly(input.isIsReadOnly());
-                    inputResource.save();
-                }
-            }
-
-            // remove existing app outputs before adding
-            ApplicationOutputResource outputResource = new ApplicationOutputResource();
-            ids = new HashMap<String, String>();
-            ids.put(AppCatAbstractResource.AppOutputConstants.INTERFACE_ID, interfaceId);
-            outputResource.remove(ids);
-            List<OutputDataObjectType> applicationOutputs = updatedInterface.getApplicationOutputs();
-            if (applicationOutputs != null && !applicationOutputs.isEmpty()) {
-                for (OutputDataObjectType output : applicationOutputs) {
-                    outputResource = new ApplicationOutputResource();
-                    ids = new HashMap<String, String>();
-                    ids.put(AppCatAbstractResource.AppOutputConstants.INTERFACE_ID, interfaceId);
-                    ids.put(AppCatAbstractResource.AppOutputConstants.OUTPUT_KEY, output.getName());
-                    if (outputResource.isExists(ids)) {
-                        outputResource = (ApplicationOutputResource) outputResource.get(ids);
-                    }
-                    outputResource.setInterfaceID(interfaceId);
-                    outputResource.setAppInterfaceResource(existingInterface);
-                    outputResource.setOutputKey(output.getName());
-                    outputResource.setOutputVal(output.getValue());
-                    outputResource.setDataType(output.getType().toString());
-                    outputResource.setRequired(output.isIsRequired());
-                    outputResource.setRequiredToCMD(output.isRequiredToAddedToCommandLine());
-                    outputResource.setDataMovement(output.isDataMovement());
-                    outputResource.setDataNameLocation(output.getLocation());
-                    outputResource.setAppArgument(output.getApplicationArgument());
-                    outputResource.setSearchQuery(output.getSearchQuery());
-                    outputResource.setOutputStreaming(output.isOutputStreaming());
-                    outputResource.save();
-                }
-            }
-        } catch (Exception e) {
-            logger.error("Error while updating application interface " + interfaceId, e);
-            throw new AppCatalogException(e);
-        }
-    }
-
-    @Override
-    public ApplicationModule getApplicationModule(String moduleId) throws AppCatalogException {
-        try {
-            AppModuleResource appModuleResource = new AppModuleResource();
-            return AppCatalogThriftConversion.getApplicationModuleDesc((AppModuleResource) appModuleResource.get(moduleId));
-        }catch (Exception e) {
-            logger.error("Error while retrieving application module "+moduleId, e);
-            throw new AppCatalogException(e);
-        }
-    }
-
-    @Override
-    public ApplicationInterfaceDescription getApplicationInterface(String interfaceId) throws AppCatalogException {
-        try {
-            AppInterfaceResource interfaceResource = new AppInterfaceResource();
-            return AppCatalogThriftConversion.getApplicationInterfaceDescription((AppInterfaceResource)interfaceResource.get(interfaceId));
-        }catch (Exception e) {
-            logger.error("Error while retrieving application interface '"+interfaceId, e);
-            throw new AppCatalogException(e);
-        }
-    }
-
-    @Override
-    public List<ApplicationModule> getApplicationModules(Map<String, String> filters) throws AppCatalogException {
-        List<ApplicationModule> modules = new ArrayList<ApplicationModule>();
-        try {
-            AppModuleResource resource = new AppModuleResource();
-            for (String fieldName : filters.keySet() ){
-                if (fieldName.equals(AppCatAbstractResource.ApplicationModuleConstants.MODULE_NAME)){
-                    List<AppCatalogResource> resources = resource.get(AppCatAbstractResource.ApplicationModuleConstants.MODULE_NAME, filters.get(fieldName));
-                    if (resources != null && !resources.isEmpty()){
-                        modules = AppCatalogThriftConversion.getAppModules(resources);
-                    }
-                }else {
-                    logger.error("Unsupported field name for app module.", new IllegalArgumentException());
-                    throw new IllegalArgumentException("Unsupported field name for app module.");
-                }
-            }
-        }catch (Exception e){
-            logger.error("Error while retrieving app module list...", e);
-            throw new AppCatalogException(e);
-        }
-        return modules;
-    }
-
-    @Override
-    public List<ApplicationModule> getAllApplicationModules(String gatewayId) throws AppCatalogException {
-        List<ApplicationModule> applicationModules = new ArrayList<ApplicationModule>();
-        try {
-            AppModuleResource resource = new AppModuleResource();
-            resource.setGatewayId(gatewayId);
-            List<AppCatalogResource> resources = resource.getAll();
-            if (resources != null && !resources.isEmpty()){
-                applicationModules = AppCatalogThriftConversion.getAppModules(resources);
-            }
-        }catch (Exception e){
-            logger.error("Error while retrieving compute resource list...", e);
-            throw new AppCatalogException(e);
-        }
-        return applicationModules;
-    }
-
-    @Override
-    public List<ApplicationModule> getAccessibleApplicationModules(String gatewayId, List<String> accessibleAppIds, List<String> accessibleComputeResourceIds) throws AppCatalogException {
-        List<ApplicationModule> applicationModules = new ArrayList<ApplicationModule>();
-        try {
-            AppModuleResource resource = new AppModuleResource();
-            resource.setGatewayId(gatewayId);
-            resource.setAccessibleApplicationDeploymentIds(accessibleAppIds);
-            resource.setAccessibleComputeResourceIds(accessibleComputeResourceIds);
-            List<AppCatalogResource> resources = resource.getAll();
-            if (resources != null && !resources.isEmpty()){
-                applicationModules = AppCatalogThriftConversion.getAppModules(resources);
-            }
-        }catch (Exception e){
-            logger.error("Error while retrieving application module list...", e);
-            throw new AppCatalogException(e);
-        }
-        return applicationModules;
-    }
-
-    @Override
-    public List<ApplicationInterfaceDescription> getApplicationInterfaces(Map<String, String> filters) throws AppCatalogException {
-        List<ApplicationInterfaceDescription> appInterfaces = new ArrayList<ApplicationInterfaceDescription>();
-        try {
-            AppInterfaceResource resource = new AppInterfaceResource();
-            for (String fieldName : filters.keySet() ){
-                if (fieldName.equals(AppCatAbstractResource.ApplicationInterfaceConstants.APPLICATION_NAME)){
-                    List<AppCatalogResource> resources = resource.get(AppCatAbstractResource.ApplicationInterfaceConstants.APPLICATION_NAME, filters.get(fieldName));
-                    appInterfaces = AppCatalogThriftConversion.getAppInterfaceDescList(resources);
-                }else {
-                    logger.error("Unsupported field name for app interface.", new IllegalArgumentException());
-                    throw new IllegalArgumentException("Unsupported field name '"+fieldName+"' for app interface.");
-                }
-            }
-        }catch (Exception e){
-            logger.error("Error while retrieving app interface list...", e);
-            throw new AppCatalogException(e);
-        }
-        return appInterfaces;
-    }
-
-    @Override
-    public List<ApplicationInterfaceDescription> getAllApplicationInterfaces(String gatewayId) throws AppCatalogException {
-        try {
-            AppInterfaceResource resource = new AppInterfaceResource();
-            resource.setGatewayId(gatewayId);
-            List<AppCatalogResource> resources = resource.getAll();
-            return AppCatalogThriftConversion.getAppInterfaceDescList(resources);
-        }catch (Exception e){
-            logger.error("Error while retrieving app interface list...", e);
-            throw new AppCatalogException(e);
-        }
-    }
-
-    @Override
-    public List<String> getAllApplicationInterfaceIds() throws AppCatalogException {
-        try {
-            AppInterfaceResource resource = new AppInterfaceResource();
-            return resource.getAllIds();
-        }catch (Exception e){
-            logger.error("Error while retrieving app interface list...", e);
-            throw new AppCatalogException(e);
-        }
-    }
-
-    @Override
-    public boolean removeApplicationInterface(String interfaceId) throws AppCatalogException {
-        try {
-            AppInterfaceResource resource = new AppInterfaceResource();
-            resource.remove(interfaceId);
-            return true;
-        }catch (Exception e){
-            logger.error("Error while removing app interface "+interfaceId, e);
-            throw new AppCatalogException(e);
-        }
-    }
-
-    @Override
-    public boolean removeApplicationModule(String moduleId) throws AppCatalogException {
-        try {
-            AppModuleResource resource = new AppModuleResource();
-            resource.remove(moduleId);
-            return true;
-        }catch (Exception e){
-            logger.error("Error while removing app module "+moduleId, e);
-            throw new AppCatalogException(e);
-        }
-    }
-
-    @Override
-    public boolean isApplicationInterfaceExists(String interfaceId) throws AppCatalogException {
-        try {
-            AppInterfaceResource resource = new AppInterfaceResource();
-            return resource.isExists(interfaceId);
-        }catch (Exception e){
-            logger.error("Error while checking app interface existence "+interfaceId, e);
-            throw new AppCatalogException(e);
-        }
-    }
-
-    @Override
-    public boolean isApplicationModuleExists(String moduleId) throws AppCatalogException {
-        try {
-            AppModuleResource resource = new AppModuleResource();
-            return resource.isExists(moduleId);
-        }catch (Exception e){
-            logger.error("Error while checking app module existence "+moduleId, e);
-            throw new AppCatalogException(e);
-        }
-    }
-
-    @Override
-    public List<InputDataObjectType> getApplicationInputs(String interfaceId) throws AppCatalogException {
-        try {
-            ApplicationInputResource resource = new ApplicationInputResource();
-            List<AppCatalogResource> resources = resource.get(AppCatAbstractResource.AppInputConstants.INTERFACE_ID, interfaceId);
-            return AppCatalogThriftConversion.getAppInputs(resources);
-        }catch (Exception e){
-            logger.error("Error while retrieving app inputs for application "+interfaceId, e);
-            throw new AppCatalogException(e);
-        }
-    }
-
-    @Override
-    public List<OutputDataObjectType> getApplicationOutputs(String interfaceId) throws AppCatalogException {
-        try {
-            ApplicationOutputResource resource = new ApplicationOutputResource();
-            List<AppCatalogResource> resources = resource.get(AppCatAbstractResource.AppOutputConstants.INTERFACE_ID, interfaceId);
-            return AppCatalogThriftConversion.getAppOutputs(resources);
-        }catch (Exception e){
-            logger.error("Error while retrieving app outputs for application "+interfaceId, e);
-            throw new AppCatalogException(e);
-        }
-    }
-}
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/impl/ComputeResourceImpl.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/impl/ComputeResourceImpl.java
deleted file mode 100644
index 9587e9f..0000000
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/impl/ComputeResourceImpl.java
+++ /dev/null
@@ -1,965 +0,0 @@
-/**
- *
- * 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.airavata.registry.core.app.catalog.impl;
-
-import org.apache.airavata.model.appcatalog.computeresource.*;
-import org.apache.airavata.model.data.movement.DMType;
-import org.apache.airavata.model.data.movement.*;
-import org.apache.airavata.model.parallelism.ApplicationParallelismType;
-import org.apache.airavata.registry.core.app.catalog.resources.*;
-import org.apache.airavata.registry.core.app.catalog.util.AppCatalogThriftConversion;
-import org.apache.airavata.registry.core.app.catalog.util.AppCatalogUtils;
-import org.apache.airavata.registry.cpi.AppCatalogException;
-import org.apache.airavata.registry.cpi.ComputeResource;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-public class ComputeResourceImpl implements ComputeResource {
-    private final static Logger logger = LoggerFactory.getLogger(ComputeResourceImpl.class);
-
-    @Override
-    public String addComputeResource(ComputeResourceDescription description) throws AppCatalogException {
-        try {
-            if (description.getComputeResourceId().equals("") || description.getComputeResourceId().equals(compute_resource_modelConstants.DEFAULT_ID)){
-                description.setComputeResourceId(AppCatalogUtils.getID(description.getHostName()));
-            }
-        	return saveComputeResourceDescriptorData(description);
-        } catch (Exception e) {
-            logger.error("Error while saving compute resource...", e);
-            throw new AppCatalogException(e);
-        }
-    }
-
-	protected String saveComputeResourceDescriptorData(
-			ComputeResourceDescription description) throws AppCatalogException {
-		//TODO remove existing one
-		ComputeResourceResource computeHostResource = saveComputeResource(description);
-		saveHostAliases(description, computeHostResource);
-		saveIpAddresses(description, computeHostResource);
-		saveBatchQueues(description, computeHostResource);
-		saveFileSystems(description, computeHostResource);
-		saveJobSubmissionInterfaces(description, computeHostResource);
-		saveDataMovementInterfaces(description, computeHostResource);
-		return computeHostResource.getResourceId();
-	}
-
-	protected ComputeResourceResource saveComputeResource(
-			ComputeResourceDescription description) throws AppCatalogException {
-		ComputeResourceResource computeHostResource = AppCatalogThriftConversion.getComputeHostResource(description);
-		computeHostResource.save();
-		return computeHostResource;
-	}
-
-	protected void saveDataMovementInterfaces(
-			ComputeResourceDescription description,
-			ComputeResourceResource computeHostResource)
-			throws AppCatalogException {
-		List<DataMovementInterface> dataMovemenetInterfaces = description.getDataMovementInterfaces();
-		if (dataMovemenetInterfaces != null && !dataMovemenetInterfaces.isEmpty()) {
-		    for (DataMovementInterface dataMovementInterface : dataMovemenetInterfaces) {
-		    	DataMovementInterfaceResource dmir = AppCatalogThriftConversion.getDataMovementInterfaceResource(dataMovementInterface);
-		    	dmir.setComputeHostResource(computeHostResource);
-		    	dmir.setComputeResourceId(computeHostResource.getResourceId());
-				dmir.save();
-		    }
-		}
-	}
-
-	protected void saveJobSubmissionInterfaces(
-			ComputeResourceDescription description,
-			ComputeResourceResource computeHostResource)
-			throws AppCatalogException {
-		List<JobSubmissionInterface> jobSubmissionInterfaces = description.getJobSubmissionInterfaces();
-		if (jobSubmissionInterfaces != null && !jobSubmissionInterfaces.isEmpty()) {
-		    for (JobSubmissionInterface jobSubmissionInterface : jobSubmissionInterfaces) {
-		    	JobSubmissionInterfaceResource jsir = AppCatalogThriftConversion.getJobSubmissionInterface(jobSubmissionInterface);
-				jsir.setComputeHostResource(computeHostResource);
-				jsir.setComputeResourceId(computeHostResource.getResourceId());
-				jsir.save();
-		    }
-		}
-	}
-
-	protected void saveFileSystems(ComputeResourceDescription description,
-			ComputeResourceResource computeHostResource)
-			throws AppCatalogException {
-		Map<FileSystems, String> fileSystems = description.getFileSystems();
-		if (fileSystems != null && !fileSystems.isEmpty()) {
-		    for (FileSystems key : fileSystems.keySet()) {
-		    	ComputeResourceFileSystemResource computeResourceFileSystemResource = new ComputeResourceFileSystemResource();
-		    	computeResourceFileSystemResource.setComputeHostResource(computeHostResource);
-		    	computeResourceFileSystemResource.setComputeResourceId(computeHostResource.getResourceId());
-		    	computeResourceFileSystemResource.setFileSystem(key.toString());
-		    	computeResourceFileSystemResource.setPath(fileSystems.get(key));
-		    	computeResourceFileSystemResource.save();
-		    }
-		}
-	}
-
-	protected void saveBatchQueues(ComputeResourceDescription description,
-			ComputeResourceResource computeHostResource)
-			throws AppCatalogException {
-		List<BatchQueue> batchQueueList = description.getBatchQueues();
-		if (batchQueueList != null && !batchQueueList.isEmpty()) {
-		    for (BatchQueue batchQueue : batchQueueList) {
-		    	BatchQueueResource bq = AppCatalogThriftConversion.getBatchQueue(batchQueue);
-		    	bq.setComputeResourceId(computeHostResource.getResourceId());
-		    	bq.setComputeHostResource(computeHostResource);
-		        bq.save();
-		    }
-		}
-	}
-
-	protected void saveIpAddresses(ComputeResourceDescription description,
-			ComputeResourceResource computeHostResource)
-			throws AppCatalogException {
-		List<String> ipAddresses = description.getIpAddresses();
-        HostIPAddressResource resource = new HostIPAddressResource();
-        resource.remove(description.getComputeResourceId());
-		if (ipAddresses != null && !ipAddresses.isEmpty()) {
-		    for (String ipAddress : ipAddresses) {
-		        HostIPAddressResource ipAddressResource = new HostIPAddressResource();
-		        ipAddressResource.setComputeHostResource(computeHostResource);
-		        ipAddressResource.setResourceID(computeHostResource.getResourceId());
-		        ipAddressResource.setIpaddress(ipAddress);
-		        ipAddressResource.save();
-		    }
-		}
-	}
-
-	protected void saveHostAliases(ComputeResourceDescription description,
-			ComputeResourceResource computeHostResource)
-			throws AppCatalogException {
-		List<String> hostAliases = description.getHostAliases();
-        // delete previous host aliases
-        HostAliasAppResource resource = new HostAliasAppResource();
-        resource.remove(description.getComputeResourceId());
-		if (hostAliases != null && !hostAliases.isEmpty()) {
-		    for (String alias : hostAliases) {
-		        HostAliasAppResource aliasResource = new HostAliasAppResource();
-		        aliasResource.setComputeHostResource(computeHostResource);
-		        aliasResource.setResourceID(computeHostResource.getResourceId());
-                aliasResource.setAlias(alias);
-		        aliasResource.save();
-		    }
-		}
-	}
-
-    @Override
-    public void updateComputeResource(String computeResourceId, ComputeResourceDescription updatedComputeResource) throws AppCatalogException{
-        try {
-        	saveComputeResourceDescriptorData(updatedComputeResource);
-        } catch (Exception e) {
-            logger.error("Error while updating compute resource...", e);
-            throw new AppCatalogException(e);
-        } 
-    }
-
-    @Override
-    public String addSSHJobSubmission(SSHJobSubmission sshJobSubmission) throws AppCatalogException {
-        try {
-            String submissionId = AppCatalogUtils.getID("SSH");
-            sshJobSubmission.setJobSubmissionInterfaceId(submissionId);
-    		String resourceJobManagerId = addResourceJobManager(sshJobSubmission.getResourceJobManager());
-    		SshJobSubmissionResource resource = AppCatalogThriftConversion.getSSHJobSubmission(sshJobSubmission);
-    		resource.setResourceJobManagerId(resourceJobManagerId);
-    		resource.getResourceJobManagerResource().setResourceJobManagerId(resourceJobManagerId);
-            if (sshJobSubmission.getMonitorMode() != null){
-                resource.setMonitorMode(sshJobSubmission.getMonitorMode().toString());
-            }
-            resource.save();
-        	return submissionId;
-        }catch (Exception e) {
-            logger.error("Error while saving SSH Job Submission...", e);
-            throw new AppCatalogException(e);
-        }
-    }
-
-    @Override
-    public String addCloudJobSubmission(CloudJobSubmission cloudJobSubmission) throws AppCatalogException {
-        try {
-            cloudJobSubmission.setJobSubmissionInterfaceId(AppCatalogUtils.getID("Cloud"));
-            CloudSubmissionResource resource = AppCatalogThriftConversion.getCloudJobSubmission(cloudJobSubmission);
-            resource.save();
-            return resource.getJobSubmissionInterfaceId();
-        }catch (Exception e) {
-            logger.error("Error while saving SSH Job Submission...", e);
-            throw new AppCatalogException(e);
-        }
-    }
-    
-	@Override
-	public String addUNICOREJobSubmission(UnicoreJobSubmission unicoreJobSubmission)
-			throws AppCatalogException {
-		 try {
-             unicoreJobSubmission.setJobSubmissionInterfaceId(AppCatalogUtils.getID("UNICORE"));
-             UnicoreJobSubmissionResource resource = AppCatalogThriftConversion.getUnicoreJobSubmission(unicoreJobSubmission);
-             resource.setUnicoreEndpointUrl(unicoreJobSubmission.getUnicoreEndPointURL());
-             if (unicoreJobSubmission.getSecurityProtocol() !=  null){
-                 resource.setSecurityProtocol(unicoreJobSubmission.getSecurityProtocol().toString());
-             }
-             resource.save();
-             return resource.getjobSubmissionInterfaceId();
-         }catch (Exception e){
-	            logger.error("Error while retrieving SSH Job Submission...", e);
-	            throw new AppCatalogException(e);
-	        }
-		 
-	}
-
-    @Override
-    public String addJobSubmissionProtocol(String computeResourceId, JobSubmissionInterface jobSubmissionInterface) throws AppCatalogException {
-        try {
-        	JobSubmissionInterfaceResource jsi = AppCatalogThriftConversion.getJobSubmissionInterface(jobSubmissionInterface);
-        	jsi.setComputeResourceId(computeResourceId);
-        	ComputeResourceResource computeResourceResource = new ComputeResourceResource();
-        	computeResourceResource=(ComputeResourceResource)computeResourceResource.get(computeResourceId);
-        	jsi.setComputeHostResource(computeResourceResource);
-            jsi.save();
-            return jsi.getJobSubmissionInterfaceId();
-        }catch (Exception e){
-            logger.error("Error while saving "+jobSubmissionInterface.getJobSubmissionProtocol().toString()+" Job Submission Protocol...", e);
-            throw new AppCatalogException(e);
-        }
-    }
-
-//    @Override
-//    public String addGSISSHJobSubmission(GSISSHJobSubmission gsisshJobSubmission) throws AppCatalogException {
-//        try {
-//            GSISSHSubmissionResource resource = new GSISSHSubmissionResource();
-//            String hostName = "GSISSH";
-//            resource.setDeploymentId(AppCatalogUtils.getID(hostName));
-//            resource.setSshPort(resource.getSshPort());
-//            resource.setResourceJobManager(gsisshJobSubmission.getResourceJobManager().toString());
-//            resource.setInstalledPath(gsisshJobSubmission.getInstalledPath());
-//            resource.setMonitorMode(gsisshJobSubmission.getMonitorMode());
-//            resource.save();
-//            gsisshJobSubmission.setJobSubmissionDataID(resource.getDeploymentId());
-//
-//            Set<String> exports = gsisshJobSubmission.getExports();
-//            if (exports != null && !exports.isEmpty()){
-//                for (String export : exports){
-//                    GSISSHExportResource exportResource = new GSISSHExportResource();
-//                    exportResource.setDeploymentId(resource.getDeploymentId());
-//                    exportResource.setExport(export);
-//                    exportResource.setAppDeploymentResource(resource);
-//                    exportResource.save();
-//                }
-//            }
-//
-//            List<String> preJobCommands = gsisshJobSubmission.getPreJobCommands();
-//            if (preJobCommands != null && !preJobCommands.isEmpty()){
-//                for (String command : preJobCommands){
-//                    GSISSHPreJobCommandResource commandResource = new GSISSHPreJobCommandResource();
-//                    commandResource.setDeploymentId(resource.getDeploymentId());
-//                    commandResource.setCommand(command);
-//                    commandResource.setAppDeploymentResource(resource);
-//                    commandResource.save();
-//                }
-//            }
-//
-//            List<String> postJobCommands = gsisshJobSubmission.getPostJobCommands();
-//            if (postJobCommands != null && !postJobCommands.isEmpty()){
-//                for (String command : postJobCommands){
-//                    GSISSHPostJobCommandResource commandResource = new GSISSHPostJobCommandResource();
-//                    commandResource.setDeploymentId(resource.getDeploymentId());
-//                    commandResource.setCommand(command);
-//                    commandResource.setAppDeploymentResource(resource);
-//                    commandResource.save();
-//                }
-//            }
-//            return resource.getDeploymentId();
-//        }catch (Exception e) {
-//            logger.error("Error while saving GSISSH Job Submission...", e);
-//            throw new AppCatalogException(e);
-//        }
-//    }
-//
-//    @Override
-//    public void addGSISSHJobSubmissionProtocol(String computeResourceId, String jobSubmissionId) throws AppCatalogException {
-//        try {
-//            JobSubmissionProtocolResource resource = new JobSubmissionProtocolResource();
-//            resource.setResourceID(computeResourceId);
-//            resource.setDeploymentId(jobSubmissionId);
-//            ComputeResourceDescription computeResource = getComputeResource(computeResourceId);
-//            resource.setComputeHostResource(AppCatalogThriftConversion.getComputeHostResource(computeResource));
-//            resource.setJobType(JobSubmissionProtocol.GSISSH.toString());
-//            resource.save();
-//        }catch (Exception e){
-//            logger.error("Error while saving GSISSH Job Submission Protocol...", e);
-//            throw new AppCatalogException(e);
-//        }
-//    }
-
-    @Override
-    public String addGlobusJobSubmission(GlobusJobSubmission globusJobSubmission) throws AppCatalogException {
-//        try {
-//            GlobusJobSubmissionResource resource = new GlobusJobSubmissionResource();
-//            String hostName = "GLOBUS";
-//            resource.setDeploymentId(AppCatalogUtils.getID(hostName));
-//            resource.setSecurityProtocol(globusJobSubmission.getSecurityProtocol().toString());
-//            resource.setResourceJobManager(globusJobSubmission.getResourceJobManager().toString());
-//            resource.save();
-//            globusJobSubmission.setJobSubmissionDataID(resource.getDeploymentId());
-//            List<String> globusGateKeeperEndPoint = globusJobSubmission.getGlobusGateKeeperEndPoint();
-//            if (globusGateKeeperEndPoint != null && !globusGateKeeperEndPoint.isEmpty()) {
-//                for (String endpoint : globusGateKeeperEndPoint) {
-//                    GlobusGKEndpointResource endpointResource = new GlobusGKEndpointResource();
-//                    endpointResource.setDeploymentId(resource.getDeploymentId());
-//                    endpointResource.setEndpoint(endpoint);
-//                    endpointResource.setGlobusJobSubmissionResource(resource);
-//                    endpointResource.save();
-//                }
-//            }
-//            return resource.getDeploymentId();
-//        } catch (Exception e) {
-//            logger.error("Error while saving Globus Job Submission...", e);
-//            throw new AppCatalogException(e);
-//        }
-    	return null;
-    }
-
-    @Override
-    public String addScpDataMovement(SCPDataMovement scpDataMovement) throws AppCatalogException {
-        try {
-        	scpDataMovement.setDataMovementInterfaceId(AppCatalogUtils.getID("SCP"));
-        	ScpDataMovementResource resource = AppCatalogThriftConversion.getSCPDataMovementDescription(scpDataMovement);
-            resource.save();
-            return resource.getDataMovementInterfaceId();
-        }catch (Exception e){
-            logger.error("Error while saving SCP Data Movement...", e);
-            throw new AppCatalogException(e);
-        }
-    }
-
-    @Override
-    public String addUnicoreDataMovement(UnicoreDataMovement unicoreDataMovement) throws AppCatalogException {
-        try {
-            unicoreDataMovement.setDataMovementInterfaceId(AppCatalogUtils.getID("UNICORE"));
-            UnicoreDataMovementResource resource = AppCatalogThriftConversion.getUnicoreDMResource(unicoreDataMovement);
-            resource.save();
-            return resource.getDataMovementId();
-        }catch (Exception e){
-            logger.error("Error while saving UNICORE Data Movement...", e);
-            throw new AppCatalogException(e);
-        }
-    }
-
-    @Override
-    public String addDataMovementProtocol(String resourceId, DMType dmType, DataMovementInterface dataMovementInterface) throws AppCatalogException {
-        try {
-            String dmId = null;
-            if (dmType.equals(DMType.COMPUTE_RESOURCE)){
-                DataMovementInterfaceResource dmi = AppCatalogThriftConversion.getDataMovementInterfaceResource(dataMovementInterface);
-                dmi.setComputeResourceId(resourceId);
-                ComputeResourceResource computeResourceResource = new ComputeResourceResource();
-                computeResourceResource=(ComputeResourceResource)computeResourceResource.get(resourceId);
-                dmi.setComputeHostResource(computeResourceResource);
-                dmi.save();
-                dmId = dmi.getDataMovementInterfaceId();
-            }else if (dmType.equals(DMType.STORAGE_RESOURCE)){
-                StorageInterfaceResource storageInterface = AppCatalogThriftConversion.getStorageInterface(dataMovementInterface);
-                storageInterface.setStorageResourceId(resourceId);
-                StorageResourceResource storageResourceResource = new StorageResourceResource();
-                storageResourceResource=(StorageResourceResource)storageResourceResource.get(resourceId);
-                storageInterface.setStorageResourceResource(storageResourceResource);
-                storageInterface.save();
-                dmId = storageInterface.getDataMovementInterfaceId();
-            }
-            return dmId;
-        }catch (Exception e){
-            logger.error("Error while saving "+dataMovementInterface.getDataMovementProtocol().toString()+" data movement Protocol...", e);
-            throw new AppCatalogException(e);
-        }
-    }
-
-    @Override
-    public String addGridFTPDataMovement(GridFTPDataMovement gridFTPDataMovement) throws AppCatalogException {
-        try {
-        	gridFTPDataMovement.setDataMovementInterfaceId(AppCatalogUtils.getID("GRIDFTP"));
-        	GridftpDataMovementResource resource = AppCatalogThriftConversion.getGridFTPDataMovementDescription(gridFTPDataMovement);
-            resource.save();
-            List<String> gridFTPEndPoint = gridFTPDataMovement.getGridFTPEndPoints();
-            if (gridFTPEndPoint != null && !gridFTPEndPoint.isEmpty()) {
-                for (String endpoint : gridFTPEndPoint) {
-                    GridftpEndpointResource endpointResource = new GridftpEndpointResource();
-                    endpointResource.setDataMovementInterfaceId(resource.getDataMovementInterfaceId());
-                    endpointResource.setEndpoint(endpoint);
-                    endpointResource.setGridftpDataMovementResource(resource);
-                    endpointResource.save();
-                }
-            }
-            return resource.getDataMovementInterfaceId();
-        }catch (Exception e){
-            logger.error("Error while saving GridFTP Data Movement...", e);
-            throw new AppCatalogException(e);
-        }
-    }
-
-    @Override
-    public ComputeResourceDescription getComputeResource(String resourceId) throws AppCatalogException {
-        try {
-            ComputeResourceResource resource = new ComputeResourceResource();
-            ComputeResourceResource computeResource = (ComputeResourceResource)resource.get(resourceId);
-            return AppCatalogThriftConversion.getComputeHostDescription(computeResource);
-        }catch (Exception e){
-            logger.error("Error while retrieving compute resource...", e);
-            throw new AppCatalogException(e);
-        }
-    }
-
-    @Override
-    public List<ComputeResourceDescription> getComputeResourceList(Map<String, String> filters) throws AppCatalogException {
-        List<ComputeResourceDescription> computeResourceDescriptions = new ArrayList<ComputeResourceDescription>();
-        try {
-        	//TODO check if this is correct way to do this
-            ComputeResourceResource resource = new ComputeResourceResource();
-            for (String fieldName : filters.keySet() ){
-                if (fieldName.equals(AppCatAbstractResource.ComputeResourceConstants.HOST_NAME)){
-                    List<AppCatalogResource> resources = resource.get(AppCatAbstractResource.ComputeResourceConstants.HOST_NAME, filters.get(fieldName));
-                    if (resources != null && !resources.isEmpty()){
-                        computeResourceDescriptions = AppCatalogThriftConversion.getComputeDescriptionList(resources);
-                    }
-                }else {
-                    logger.error("Unsupported field name for compute resource.", new IllegalArgumentException());
-                    throw new IllegalArgumentException("Unsupported field name for compute resource.");
-                }
-            }
-        }catch (Exception e){
-            logger.error("Error while retrieving compute resource list...", e);
-            throw new AppCatalogException(e);
-        }
-        return computeResourceDescriptions;
-    }
-
-    @Override
-    public List<ComputeResourceDescription> getAllComputeResourceList() throws AppCatalogException {
-        List<ComputeResourceDescription> computeResourceDescriptions = new ArrayList<ComputeResourceDescription>();
-        try {
-            ComputeResourceResource resource = new ComputeResourceResource();
-            List<AppCatalogResource> resources = resource.getAll();
-            if (resources != null && !resources.isEmpty()){
-                computeResourceDescriptions = AppCatalogThriftConversion.getComputeDescriptionList(resources);
-            }
-        }catch (Exception e){
-            logger.error("Error while retrieving compute resource list...", e);
-            throw new AppCatalogException(e);
-        }
-        return computeResourceDescriptions;
-    }
-
-    @Override
-    public Map<String, String> getAllComputeResourceIdList() throws AppCatalogException {
-        try {
-            Map<String, String> computeResourceMap = new HashMap<String, String>();
-            ComputeResourceResource resource = new ComputeResourceResource();
-            List<AppCatalogResource> allComputeResources = resource.getAll();
-            if (allComputeResources != null && !allComputeResources.isEmpty()){
-                for (AppCatalogResource cm : allComputeResources){
-                    ComputeResourceResource cmr = (ComputeResourceResource)cm;
-                    computeResourceMap.put(cmr.getResourceId(), cmr.getHostName());
-                }
-            }
-            return computeResourceMap;
-        }catch (Exception e){
-            logger.error("Error while retrieving compute resource list...", e);
-            throw new AppCatalogException(e);
-        }
-    }
-
-    @Override
-    public Map<String, String> getAvailableComputeResourceIdList() throws AppCatalogException {
-        try {
-            Map<String, String> computeResourceMap = new HashMap<String, String>();
-            ComputeResourceResource resource = new ComputeResourceResource();
-            List<AppCatalogResource> allComputeResources = resource.getAll();
-            if (allComputeResources != null && !allComputeResources.isEmpty()){
-                for (AppCatalogResource cm : allComputeResources){
-                    ComputeResourceResource cmr = (ComputeResourceResource)cm;
-                    if(cmr.isEnabled()) {
-                        computeResourceMap.put(cmr.getResourceId(), cmr.getHostName());
-                    }
-                }
-            }
-            return computeResourceMap;
-        }catch (Exception e){
-            logger.error("Error while retrieving compute resource list...", e);
-            throw new AppCatalogException(e);
-        }
-    }
-
-//    @Override
-//    public GSISSHJobSubmission getGSISSHJobSubmission(String submissionId) throws AppCatalogException {
-//        try {
-//            GSISSHSubmissionResource resource = new GSISSHSubmissionResource();
-//            GSISSHSubmissionResource submissionResource = (GSISSHSubmissionResource)resource.get(submissionId);
-//            return AppCatalogThriftConversion.getGSISSHSubmissionDescription(submissionResource);
-//        }catch (Exception e){
-//            logger.error("Error while retrieving GSISSH Job Submission...", e);
-//            throw new AppCatalogException(e);
-//        }
-//    }
-//
-//    @Override
-//    public List<GSISSHJobSubmission> getGSISSHJobSubmissionList(Map<String, String> filters) throws AppCatalogException {
-//        try {
-//            GSISSHSubmissionResource resource = new GSISSHSubmissionResource();
-//            for (String fieldName : filters.keySet() ){
-//                if (fieldName.equals(AbstractResource.GSISSHSubmissionConstants.RESOURCE_JOB_MANAGER)){
-//                    List<Resource> resources = resource.get(AbstractResource.GSISSHSubmissionConstants.RESOURCE_JOB_MANAGER, filters.get(fieldName));
-//                    if (resources != null && !resources.isEmpty()){
-//                        return AppCatalogThriftConversion.getGSISSHSubmissionList(resources);
-//                    }
-//                }else {
-//                    logger.error("Unsupported field name for GSISSH Submission.", new IllegalArgumentException());
-//                    throw new IllegalArgumentException("Unsupported field name for GSISSH Submission.");
-//                }
-//            }
-//        }catch (Exception e){
-//            logger.error("Error while retrieving GSISSH Submission list...", e);
-//            throw new AppCatalogException(e);
-//        }
-//        return null;
-//    }
-//
-//    @Override
-//    public GlobusJobSubmission getGlobusJobSubmission(String submissionId) throws AppCatalogException {
-//        try {
-//        	GlobusJobSubmissionResource globusJobSubmissionResource = new GlobusJobSubmissionResource();
-//        	globusJobSubmissionResource=(GlobusJobSubmissionResource)globusJobSubmissionResource.get(submissionId);
-//        	AppCatalogThriftConversion.getglo
-//            GlobusJobSubmissionResource resource = globusJobSubmissionResource;
-//            GlobusJobSubmissionResource submissionResource = (GlobusJobSubmissionResource)resource.get(submissionId);
-//            return AppCatalogThriftConversion.getGlobusJobSubmissionDescription(submissionResource);
-//        }catch (Exception e){
-//            logger.error("Error while retrieving Globus Job Submission...", e);
-//            throw new AppCatalogException(e);
-//        }
-//    }
-//
-//    @Override
-//    public List<GlobusJobSubmission> getGlobusJobSubmissionList(Map<String, String> filters) throws AppCatalogException {
-//        try {
-//            GlobusJobSubmissionResource resource = new GlobusJobSubmissionResource();
-//            for (String fieldName : filters.keySet() ){
-//                if (fieldName.equals(AbstractResource.GlobusJobSubmissionConstants.RESOURCE_JOB_MANAGER)){
-//                    List<Resource> resources = resource.get(AbstractResource.GlobusJobSubmissionConstants.RESOURCE_JOB_MANAGER, filters.get(fieldName));
-//                    if (resources != null && !resources.isEmpty()){
-//                        return AppCatalogThriftConversion.getGlobusSubmissionList(resources);
-//                    }
-//                }else if (fieldName.equals(AbstractResource.GlobusJobSubmissionConstants.SECURITY_PROTOCAL)){
-//                    List<Resource> resources = resource.get(AbstractResource.GlobusJobSubmissionConstants.SECURITY_PROTOCAL, filters.get(fieldName));
-//                    if (resources != null && !resources.isEmpty()){
-//                        return AppCatalogThriftConversion.getGlobusSubmissionList(resources);
-//                    }
-//                }else {
-//                    logger.error("Unsupported field name for Globus Submission.", new IllegalArgumentException());
-//                    throw new IllegalArgumentException("Unsupported field name for Globus Submission.");
-//                }
-//            }
-//        }catch (Exception e){
-//            logger.error("Error while retrieving Globus Submission list...", e);
-//            throw new AppCatalogException(e);
-//        }
-//        return null;
-//    }
-
-    @Override
-    public SSHJobSubmission getSSHJobSubmission(String submissionId) throws AppCatalogException {
-        try {
-            SshJobSubmissionResource resource = new SshJobSubmissionResource();
-            resource = (SshJobSubmissionResource)resource.get(submissionId);
-            return AppCatalogThriftConversion.getSSHJobSubmissionDescription(resource);
-        }catch (Exception e){
-            logger.error("Error while retrieving SSH Job Submission...", e);
-            throw new AppCatalogException(e);
-        }
-    }
-
-    //    @Override
-	//    public List<GridFTPDataMovement> getGridFTPDataMovementList(Map<String, String> filters) throws AppCatalogException {
-	//        try {
-	//            GridftpDataMovementResource resource = new GridftpDataMovementResource();
-	//            for (String fieldName : filters.keySet() ){
-	//                if (fieldName.equals(AbstractResource.GridFTPDataMovementConstants.SECURITY_PROTOCOL)){
-	//                    List<Resource> resources = resource.get(AbstractResource.GridFTPDataMovementConstants.SECURITY_PROTOCOL, filters.get(fieldName));
-	//                    if (resources != null && !resources.isEmpty()){
-	//                        return AppCatalogThriftConversion.getGridFTPDataMovementList(resources);
-	//                    }
-	//                }else {
-	//                    logger.error("Unsupported field name for GridFTP Data movement.", new IllegalArgumentException());
-	//                    throw new IllegalArgumentException("Unsupported field name for GridFTP Data movement.");
-	//                }
-	//            }
-	//        }catch (Exception e){
-	//            logger.error("Error while retrieving GridFTP Data movement list...", e);
-	//            throw new AppCatalogException(e);
-	//        }
-	//        return null;
-	//    }
-	
-	    @Override
-		public UnicoreJobSubmission getUNICOREJobSubmission(String submissionId)
-				throws AppCatalogException {
-	    	try {
-	            UnicoreJobSubmissionResource resource = new UnicoreJobSubmissionResource();
-	            resource = (UnicoreJobSubmissionResource)resource.get(submissionId);
-	            return AppCatalogThriftConversion.getUnicoreJobSubmissionDescription(resource);
-	        }catch (Exception e){
-	            logger.error("Error while retrieving UNICORE Job Submission model instance...", e);
-	            throw new AppCatalogException(e);
-	        }
-		}
-
-    @Override
-    public UnicoreDataMovement getUNICOREDataMovement(String dataMovementId)
-            throws AppCatalogException {
-        try {
-            UnicoreDataMovementResource resource = new UnicoreDataMovementResource();
-            resource = (UnicoreDataMovementResource)resource.get(dataMovementId);
-            return AppCatalogThriftConversion.getUnicoreDMDescription(resource);
-        }catch (Exception e){
-            logger.error("Error while retrieving UNICORE data movement...", e);
-            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 {
-//        try {
-//            SshJobSubmissionResource resource = new SshJobSubmissionResource();
-//            for (String fieldName : filters.keySet() ){
-//               if (fieldName.equals(AbstractResource.SSHSubmissionConstants.RESOURCE_JOB_MANAGER)){
-//                    List<Resource> resources = resource.get(AbstractResource.SSHSubmissionConstants.RESOURCE_JOB_MANAGER, filters.get(fieldName));
-//                    if (resources != null && !resources.isEmpty()){
-//                        return AppCatalogThriftConversion.getSSHSubmissionList(resources);
-//                    }
-//                }else {
-//                    logger.error("Unsupported field name for SSH Submission.", new IllegalArgumentException());
-//                    throw new IllegalArgumentException("Unsupported field name for SSH Submission.");
-//                }
-//            }
-//        }catch (Exception e){
-//            logger.error("Error while retrieving SSH Submission list...", e);
-//            throw new AppCatalogException(e);
-//        }
-//        return null;
-//    }
-
-    @Override
-    public SCPDataMovement getSCPDataMovement(String dataMoveId) throws AppCatalogException {
-        try {
-            ScpDataMovementResource resource = new ScpDataMovementResource();
-            ScpDataMovementResource dataMovementResource = (ScpDataMovementResource)resource.get(dataMoveId);
-            return AppCatalogThriftConversion.getSCPDataMovementDescription(dataMovementResource);
-        }catch (Exception e){
-            logger.error("Error while retrieving SCP Data Movement...", e);
-            throw new AppCatalogException(e);
-        }
-    }
-
-//    @Override
-//    public List<SCPDataMovement> getSCPDataMovementList(Map<String, String> filters) throws AppCatalogException {
-//        try {
-//            ScpDataMovementResource resource = new ScpDataMovementResource();
-//            for (String fieldName : filters.keySet() ){
-//                if (fieldName.equals(AbstractResource.SCPDataMovementConstants.SECURITY_PROTOCOL)){
-//                    List<Resource> resources = resource.get(AbstractResource.SCPDataMovementConstants.SECURITY_PROTOCOL, filters.get(fieldName));
-//                    if (resources != null && !resources.isEmpty()){
-//                        return AppCatalogThriftConversion.getSCPDataMovementList(resources);
-//                    }
-//                }else {
-//                    logger.error("Unsupported field name for SCP Data movement.", new IllegalArgumentException());
-//                    throw new IllegalArgumentException("Unsupported field name for SCP Data movement.");
-//                }
-//            }
-//        }catch (Exception e){
-//            logger.error("Error while retrieving SCP Data movement list...", e);
-//            throw new AppCatalogException(e);
-//        }
-//        return null;
-//    }
-
-    @Override
-    public GridFTPDataMovement getGridFTPDataMovement(String dataMoveId) throws AppCatalogException {
-        try {
-            GridftpDataMovementResource resource = new GridftpDataMovementResource();
-            GridftpDataMovementResource dataMovementResource = (GridftpDataMovementResource)resource.get(dataMoveId);
-            return AppCatalogThriftConversion.getGridFTPDataMovementDescription(dataMovementResource);
-        }catch (Exception e){
-            logger.error("Error while retrieving Grid FTP Data Movement...", e);
-            throw new AppCatalogException(e);
-        }
-    }
-
-//    @Override
-//    public List<GridFTPDataMovement> getGridFTPDataMovementList(Map<String, String> filters) throws AppCatalogException {
-//        try {
-//            GridftpDataMovementResource resource = new GridftpDataMovementResource();
-//            for (String fieldName : filters.keySet() ){
-//                if (fieldName.equals(AbstractResource.GridFTPDataMovementConstants.SECURITY_PROTOCOL)){
-//                    List<Resource> resources = resource.get(AbstractResource.GridFTPDataMovementConstants.SECURITY_PROTOCOL, filters.get(fieldName));
-//                    if (resources != null && !resources.isEmpty()){
-//                        return AppCatalogThriftConversion.getGridFTPDataMovementList(resources);
-//                    }
-//                }else {
-//                    logger.error("Unsupported field name for GridFTP Data movement.", new IllegalArgumentException());
-//                    throw new IllegalArgumentException("Unsupported field name for GridFTP Data movement.");
-//                }
-//            }
-//        }catch (Exception e){
-//            logger.error("Error while retrieving GridFTP Data movement list...", e);
-//            throw new AppCatalogException(e);
-//        }
-//        return null;
-//    }
-
-    @Override
-    public boolean isComputeResourceExists(String resourceId) throws AppCatalogException {
-        try {
-            ComputeResourceResource resource = new ComputeResourceResource();
-            return resource.isExists(resourceId);
-        }catch (Exception e){
-            logger.error("Error while retrieving compute resource...", e);
-            throw new AppCatalogException(e);
-        }
-    }
-
-    @Override
-    public void removeComputeResource(String resourceId) throws AppCatalogException {
-        try {
-            ComputeResourceResource resource = new ComputeResourceResource();
-            resource.remove(resourceId);
-        }catch (Exception e){
-            logger.error("Error while removing compute resource...", e);
-            throw new AppCatalogException(e);
-        }
-    }
-
-    @Override
-    public void removeJobSubmissionInterface(String computeResourceId, String jobSubmissionInterfaceId) throws AppCatalogException {
-        try {
-            JobSubmissionInterfaceResource resource = new JobSubmissionInterfaceResource();
-            Map<String, String> ids = new HashMap<String, String>();
-            ids.put(AppCatAbstractResource.JobSubmissionInterfaceConstants.COMPUTE_RESOURCE_ID, computeResourceId);
-            ids.put(AppCatAbstractResource.JobSubmissionInterfaceConstants.JOB_SUBMISSION_INTERFACE_ID, jobSubmissionInterfaceId);
-            resource.remove(ids);
-        }catch (Exception e){
-            logger.error("Error while removing job submission interface..", e);
-            throw new AppCatalogException(e);
-        }
-    }
-
-    @Override
-    public void removeDataMovementInterface(String computeResourceId, String dataMovementInterfaceId) throws AppCatalogException {
-        try {
-            DataMovementInterfaceResource resource = new DataMovementInterfaceResource();
-            Map<String, String> ids = new HashMap<String, String>();
-            ids.put(AppCatAbstractResource.DataMovementInterfaceConstants.COMPUTE_RESOURCE_ID, computeResourceId);
-            ids.put(AppCatAbstractResource.DataMovementInterfaceConstants.DATA_MOVEMENT_INTERFACE_ID, dataMovementInterfaceId);
-            resource.remove(ids);
-        }catch (Exception e){
-            logger.error("Error while removing data movement interface..", e);
-            throw new AppCatalogException(e);
-        }
-    }
-
-    @Override
-    public void removeBatchQueue(String computeResourceId, String queueName) throws AppCatalogException {
-        try {
-            BatchQueueResource resource = new BatchQueueResource();
-            Map<String, String> ids = new HashMap<String, String>();
-            ids.put(AppCatAbstractResource.BatchQueueConstants.COMPUTE_RESOURCE_ID, computeResourceId);
-            ids.put(AppCatAbstractResource.BatchQueueConstants.QUEUE_NAME, queueName);
-            resource.remove(ids);
-        }catch (Exception e){
-            logger.error("Error while removing batch queue..", e);
-            throw new AppCatalogException(e);
-        }
-    }
-
-    @Override
-	public String addResourceJobManager(ResourceJobManager resourceJobManager)
-			throws AppCatalogException {
-		resourceJobManager.setResourceJobManagerId(AppCatalogUtils.getID("RJM"));
-		ResourceJobManagerResource resource = AppCatalogThriftConversion.getResourceJobManager(resourceJobManager);
-		resource.save();
-		Map<JobManagerCommand, String> jobManagerCommands = resourceJobManager.getJobManagerCommands();
-		if (jobManagerCommands!=null && jobManagerCommands.size() != 0) {
-			for (JobManagerCommand commandType : jobManagerCommands.keySet()) {
-                if(jobManagerCommands.get(commandType) != null && !jobManagerCommands.get(commandType).isEmpty()) {
-                    JobManagerCommandResource r = new JobManagerCommandResource();
-                    r.setCommandType(commandType.toString());
-                    r.setCommand(jobManagerCommands.get(commandType));
-                    r.setResourceJobManagerId(resource.getResourceJobManagerId());
-                    r.save();
-                }
-			}
-		}
-
-        Map<ApplicationParallelismType, String> parallelismPrefix = resourceJobManager.getParallelismPrefix();
-        if (parallelismPrefix!=null && parallelismPrefix.size() != 0) {
-            for (ApplicationParallelismType commandType : parallelismPrefix.keySet()) {
-                if (parallelismPrefix.get(commandType) != null && !parallelismPrefix.get(commandType).isEmpty()) {
-                    ParallelismPrefixCommandResource r = new ParallelismPrefixCommandResource();
-                    r.setCommandType(commandType.toString());
-                    r.setCommand(parallelismPrefix.get(commandType));
-                    r.setResourceJobManagerId(resource.getResourceJobManagerId());
-                    r.save();
-                }
-            }
-        }
-		return resource.getResourceJobManagerId();
-	}
-
-    @Override
-    public void updateResourceJobManager(String resourceJobManagerId, ResourceJobManager updatedResourceJobManager) throws AppCatalogException {
-        try {
-            ResourceJobManagerResource resource = AppCatalogThriftConversion.getResourceJobManager(updatedResourceJobManager);
-            resource.setResourceJobManagerId(resourceJobManagerId);
-            resource.save();
-            Map<JobManagerCommand, String> jobManagerCommands = updatedResourceJobManager.getJobManagerCommands();
-            if (jobManagerCommands!=null && jobManagerCommands.size() != 0) {
-                for (JobManagerCommand commandType : jobManagerCommands.keySet()) {
-                    JobManagerCommandResource r = new JobManagerCommandResource();
-                    Map<String, String> ids = new HashMap<String, String>();
-                    ids.put(AppCatAbstractResource.JobManagerCommandConstants.RESOURCE_JOB_MANAGER_ID, resourceJobManagerId);
-                    ids.put(AppCatAbstractResource.JobManagerCommandConstants.COMMAND_TYPE, commandType.toString());
-                    JobManagerCommandResource existingCommand;
-                    if (r.isExists(ids)){
-                        existingCommand = (JobManagerCommandResource)r.get(ids);
-                    }else {
-                        existingCommand = new JobManagerCommandResource();
-                    }
-                    if(jobManagerCommands.get(commandType) != null && !jobManagerCommands.get(commandType).isEmpty()) {
-                        existingCommand.setCommandType(commandType.toString());
-                        existingCommand.setCommand(jobManagerCommands.get(commandType));
-                        existingCommand.setResourceJobManagerId(resource.getResourceJobManagerId());
-                        existingCommand.save();
-                    }
-                }
-            }
-
-            Map<ApplicationParallelismType, String> parallelismPrefix = updatedResourceJobManager.getParallelismPrefix();
-            if (parallelismPrefix!=null && parallelismPrefix.size() != 0) {
-                for (ApplicationParallelismType commandType : parallelismPrefix.keySet()) {
-                    ParallelismPrefixCommandResource r = new ParallelismPrefixCommandResource();
-                    Map<String, String> ids = new HashMap<String, String>();
-                    ids.put(AppCatAbstractResource.ParallelismCommandConstants.RESOURCE_JOB_MANAGER_ID, resourceJobManagerId);
-                    ids.put(AppCatAbstractResource.ParallelismCommandConstants.COMMAND_TYPE, commandType.toString());
-                    ParallelismPrefixCommandResource existingCommand;
-                    if (r.isExists(ids)){
-                        existingCommand = (ParallelismPrefixCommandResource)r.get(ids);
-                    }else {
-                        existingCommand = new ParallelismPrefixCommandResource();
-                    }
-                    if (parallelismPrefix.get(commandType) != null && !parallelismPrefix.get(commandType).isEmpty()) {
-                        existingCommand.setCommandType(commandType.toString());
-                        existingCommand.setCommand(parallelismPrefix.get(commandType));
-                        existingCommand.setResourceJobManagerId(resource.getResourceJobManagerId());
-                        existingCommand.save();
-                    }
-                }
-            }
-        }catch (Exception e){
-            logger.error("Error while updating resource job manager..", e);
-            throw new AppCatalogException(e);
-        }
-    }
-
-    @Override
-    public ResourceJobManager getResourceJobManager(String resourceJobManagerId) throws AppCatalogException {
-        try {
-            ResourceJobManagerResource resource = new ResourceJobManagerResource();
-            ResourceJobManagerResource jobManagerResource = (ResourceJobManagerResource)resource.get(resourceJobManagerId);
-            return AppCatalogThriftConversion.getResourceJobManager(jobManagerResource);
-        }catch (Exception e){
-            logger.error("Error while retrieving resource job manager..", e);
-            throw new AppCatalogException(e);
-        }
-    }
-
-    @Override
-    public void deleteResourceJobManager(String resourceJobManagerId) throws AppCatalogException {
-        try {
-            ResourceJobManagerResource resource = new ResourceJobManagerResource();
-            resource.remove(resourceJobManagerId);
-        }catch (Exception e){
-            logger.error("Error while deleting resource job manager..", e);
-            throw new AppCatalogException(e);
-        }
-    }
-
-    @Override
-	public String addLocalJobSubmission(LOCALSubmission localSubmission)
-			throws AppCatalogException {
-		localSubmission.setJobSubmissionInterfaceId(AppCatalogUtils.getID("LOCAL"));
-		String resourceJobManagerId = addResourceJobManager(localSubmission.getResourceJobManager());
-		LocalSubmissionResource localJobSubmission = AppCatalogThriftConversion.getLocalJobSubmission(localSubmission);
-		localJobSubmission.setResourceJobManagerId(resourceJobManagerId);
-		localJobSubmission.getResourceJobManagerResource().setResourceJobManagerId(resourceJobManagerId);
-        localJobSubmission.setSecurityProtocol(localSubmission.getSecurityProtocol().toString());
-    	localJobSubmission.save();
-    	return localJobSubmission.getJobSubmissionInterfaceId();
-	}
-
-	@Override
-	public String addLocalDataMovement(LOCALDataMovement localDataMovement)
-			throws AppCatalogException {
-		localDataMovement.setDataMovementInterfaceId(AppCatalogUtils.getID("LOCAL"));
-		LocalDataMovementResource ldm = AppCatalogThriftConversion.getLocalDataMovement(localDataMovement);
-		ldm.save();
-    	return ldm.getDataMovementInterfaceId();
-	}
-
-	@Override
-	public LOCALSubmission getLocalJobSubmission(String submissionId)
-			throws AppCatalogException {
-		LocalSubmissionResource localSubmissionResource = new LocalSubmissionResource();
-		localSubmissionResource= (LocalSubmissionResource)localSubmissionResource.get(submissionId);
-		return AppCatalogThriftConversion.getLocalJobSubmission(localSubmissionResource);
-	}
-
-	@Override
-	public LOCALDataMovement getLocalDataMovement(String datamovementId)
-			throws AppCatalogException {
-		LocalDataMovementResource localDataMovementResource = new LocalDataMovementResource();
-		localDataMovementResource = (LocalDataMovementResource) localDataMovementResource.get(datamovementId);
-		return AppCatalogThriftConversion.getLocalDataMovement(localDataMovementResource);
-	}
-
-}
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/impl/GwyResourceProfileImpl.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/impl/GwyResourceProfileImpl.java
deleted file mode 100644
index aba25c7..0000000
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/impl/GwyResourceProfileImpl.java
+++ /dev/null
@@ -1,372 +0,0 @@
-/**
- *
- * 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.airavata.registry.core.app.catalog.impl;
-
-import org.apache.airavata.common.utils.AiravataUtils;
-import org.apache.airavata.model.appcatalog.gatewayprofile.ComputeResourcePreference;
-import org.apache.airavata.model.appcatalog.gatewayprofile.GatewayResourceProfile;
-import org.apache.airavata.model.appcatalog.gatewayprofile.StoragePreference;
-import org.apache.airavata.registry.core.app.catalog.resources.*;
-import org.apache.airavata.registry.core.app.catalog.util.AppCatalogThriftConversion;
-import org.apache.airavata.registry.cpi.AppCatalogException;
-import org.apache.airavata.registry.cpi.GwyResourceProfile;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-public class GwyResourceProfileImpl implements GwyResourceProfile {
-    private final static Logger logger = LoggerFactory.getLogger(GwyResourceProfileImpl.class);
-
-    @Override
-    public String addGatewayResourceProfile(org.apache.airavata.model.appcatalog.gatewayprofile.GatewayResourceProfile gatewayProfile) throws AppCatalogException {
-        try {
-            GatewayProfileResource profileResource = new GatewayProfileResource();
-            if (!gatewayProfile.getGatewayID().equals("")){
-                profileResource.setGatewayID(gatewayProfile.getGatewayID());
-            }
-            if (gatewayProfile.getCredentialStoreToken()!= null){
-                profileResource.setCredentialStoreToken(gatewayProfile.getCredentialStoreToken());
-            }
-            if (gatewayProfile.getIdentityServerTenant() != null){
-                profileResource.setIdentityServerTenant(gatewayProfile.getIdentityServerTenant());
-            }
-            if (gatewayProfile.getIdentityServerPwdCredToken() != null){
-                profileResource.setIdentityServerPwdCredToken(gatewayProfile.getIdentityServerPwdCredToken());
-            }
-            profileResource.setGatewayID(gatewayProfile.getGatewayID());
-            profileResource.save();
-            List<ComputeResourcePreference> computeResourcePreferences = gatewayProfile.getComputeResourcePreferences();
-            if (computeResourcePreferences != null && !computeResourcePreferences.isEmpty()){
-                for (ComputeResourcePreference preference : computeResourcePreferences ){
-                    ComputeHostPreferenceResource resource = new ComputeHostPreferenceResource();
-                    resource.setGatewayProfile(profileResource);
-                    resource.setResourceId(preference.getComputeResourceId());
-                    ComputeResourceResource computeHostResource = new ComputeResourceResource();
-                    resource.setComputeHostResource((ComputeResourceResource)computeHostResource.get(preference.getComputeResourceId()));
-                    resource.setGatewayId(profileResource.getGatewayID());
-                    resource.setOverrideByAiravata(preference.isOverridebyAiravata());
-                    resource.setLoginUserName(preference.getLoginUserName());
-                    resource.setResourceCSToken(preference.getResourceSpecificCredentialStoreToken());
-                    resource.setUsageReportingGatewayId(preference.getUsageReportingGatewayId());
-                    if (preference.getPreferredJobSubmissionProtocol() != null){
-                        resource.setPreferredJobProtocol(preference.getPreferredJobSubmissionProtocol().toString());
-                    }
-
-                    if (preference.getPreferredDataMovementProtocol() != null){
-                        resource.setPreferedDMProtocol(preference.getPreferredDataMovementProtocol().toString());
-                    }
-
-                    resource.setBatchQueue(preference.getPreferredBatchQueue());
-                    resource.setProjectNumber(preference.getAllocationProjectNumber());
-                    resource.setScratchLocation(preference.getScratchLocation());
-                    resource.setQualityOfService(preference.getQualityOfService());
-                    resource.setReservation(preference.getReservation());
-                    if(preference.getReservationStartTime() > 0){
-                        resource.setReservationStartTime(AiravataUtils.getTime(preference.getReservationStartTime()));
-                    }
-
-                    if (preference.getReservationEndTime() > 0) {
-                        resource.setReservationEndTime(AiravataUtils.getTime(preference.getReservationEndTime()));
-                    }
-                    resource.setSshAccountProvisioner(preference.getSshAccountProvisioner());
-                    if (preference.getSshAccountProvisionerConfig() != null && !preference.getSshAccountProvisionerConfig().isEmpty()) {
-                        Map<String,String> sshAccountProvisionerConfigurationsCopy = new HashMap<>(preference.getSshAccountProvisionerConfig());
-                        resource.setSshAccountProvisionerConfigurations(sshAccountProvisionerConfigurationsCopy);
-                    }
-                    resource.setSshAccountProvisionerAdditionalInfo(preference.getSshAccountProvisionerAdditionalInfo());
-                    resource.save();
-                }
-            }
-            List<StoragePreference> dataStoragePreferences = gatewayProfile.getStoragePreferences();
-            if (dataStoragePreferences != null && !dataStoragePreferences.isEmpty()){
-                for (StoragePreference storagePreference : dataStoragePreferences){
-                    StoragePreferenceResource resource = new StoragePreferenceResource();
-                    resource.setStorageResourceId(storagePreference.getStorageResourceId());
-                    resource.setGatewayId(profileResource.getGatewayID());
-                    resource.setFsRootLocation(storagePreference.getFileSystemRootLocation());
-                    resource.setLoginUserName(storagePreference.getLoginUserName());
-                    resource.setResourceCSToken(storagePreference.getResourceSpecificCredentialStoreToken());
-                    resource.setGatewayProfile(profileResource);
-                    resource.save();
-                }
-            }
-            return profileResource.getGatewayID();
-        }catch (Exception e) {
-            logger.error("Error while saving gateway profile...", e);
-            throw new AppCatalogException(e);
-        }
-    }
-
-    @Override
-    public void updateGatewayResourceProfile(String gatewayId, org.apache.airavata.model.appcatalog.gatewayprofile.GatewayResourceProfile updatedProfile) throws AppCatalogException {
-        try {
-            GatewayProfileResource profileResource = new GatewayProfileResource();
-            GatewayProfileResource existingGP = (GatewayProfileResource)profileResource.get(gatewayId);
-            existingGP.setCredentialStoreToken(updatedProfile.getCredentialStoreToken());
-            existingGP.setIdentityServerTenant(updatedProfile.getIdentityServerTenant());
-            existingGP.setIdentityServerPwdCredToken(updatedProfile.getIdentityServerPwdCredToken());
-            existingGP.save();
-
-            List<ComputeResourcePreference> computeResourcePreferences = updatedProfile.getComputeResourcePreferences();
-            if (computeResourcePreferences != null && !computeResourcePreferences.isEmpty()){
-                for (ComputeResourcePreference preference : computeResourcePreferences ){
-                    ComputeHostPreferenceResource resource = new ComputeHostPreferenceResource();
-                    resource.setGatewayProfile(existingGP);
-                    resource.setResourceId(preference.getComputeResourceId());
-                    ComputeResourceResource computeHostResource = new ComputeResourceResource();
-                    resource.setComputeHostResource((ComputeResourceResource)computeHostResource.get(preference.getComputeResourceId()));
-                    resource.setGatewayId(gatewayId);
-                    resource.setLoginUserName(preference.getLoginUserName());
-                    resource.setOverrideByAiravata(preference.isOverridebyAiravata());
-                    if (preference.getPreferredJobSubmissionProtocol() != null){
-                        resource.setPreferredJobProtocol(preference.getPreferredJobSubmissionProtocol().toString());
-                    }
-
-                    if (preference.getPreferredDataMovementProtocol() != null){
-                        resource.setPreferedDMProtocol(preference.getPreferredDataMovementProtocol().toString());
-                    }
-                    resource.setBatchQueue(preference.getPreferredBatchQueue());
-                    resource.setProjectNumber(preference.getAllocationProjectNumber());
-                    resource.setScratchLocation(preference.getScratchLocation());
-                    resource.setResourceCSToken(preference.getResourceSpecificCredentialStoreToken());
-                    resource.setUsageReportingGatewayId(preference.getUsageReportingGatewayId());
-                    resource.setQualityOfService(preference.getQualityOfService());
-                    resource.setReservation(preference.getReservation());
-                    if(preference.getReservationStartTime() > 0){
-                        resource.setReservationStartTime(AiravataUtils.getTime(preference.getReservationStartTime()));
-                    }
-
-                    if (preference.getReservationEndTime() > 0) {
-                        resource.setReservationEndTime(AiravataUtils.getTime(preference.getReservationEndTime()));
-                    }
-                    resource.setSshAccountProvisioner(preference.getSshAccountProvisioner());
-                    if (preference.getSshAccountProvisionerConfig() != null && !preference.getSshAccountProvisionerConfig().isEmpty()) {
-                        Map<String,String> sshAccountProvisionerConfigurationsCopy = new HashMap<>(preference.getSshAccountProvisionerConfig());
-                        resource.setSshAccountProvisionerConfigurations(sshAccountProvisionerConfigurationsCopy);
-                    }
-                    resource.setSshAccountProvisionerAdditionalInfo(preference.getSshAccountProvisionerAdditionalInfo());
-                    resource.save();
-                }
-            }
-            List<StoragePreference> dataStoragePreferences = updatedProfile.getStoragePreferences();
-            if (dataStoragePreferences != null && !dataStoragePreferences.isEmpty()){
-                for (StoragePreference storagePreference : dataStoragePreferences){
-                    StoragePreferenceResource resource = new StoragePreferenceResource();
-                    resource.setStorageResourceId(storagePreference.getStorageResourceId());
-                    resource.setGatewayId(existingGP.getGatewayID());
-                    resource.setFsRootLocation(storagePreference.getFileSystemRootLocation());
-                    resource.setLoginUserName(storagePreference.getLoginUserName());
-                    resource.setResourceCSToken(storagePreference.getResourceSpecificCredentialStoreToken());
-                    resource.setGatewayProfile(existingGP);
-                    resource.save();
-                }
-            }
-        }catch (Exception e) {
-            logger.error("Error while updating gateway profile...", e);
-            throw new AppCatalogException(e);
-        }
-    }
-
-    @Override
-    public GatewayResourceProfile getGatewayProfile(String gatewayId) throws AppCatalogException {
-        try {
-            GatewayProfileResource resource = new GatewayProfileResource();
-            GatewayProfileResource gwresource = (GatewayProfileResource)resource.get(gatewayId);
-            ComputeHostPreferenceResource prefResource = new ComputeHostPreferenceResource();
-            List<AppCatalogResource> computePrefList = prefResource.get(AppCatAbstractResource.ComputeResourcePreferenceConstants.GATEWAY_ID, gatewayId);
-            List<ComputeResourcePreference> computeResourcePreferences = AppCatalogThriftConversion.getComputeResourcePreferences(computePrefList);
-            List<StoragePreference> dataStoragePreferences = getAllStoragePreferences(gatewayId);
-            return AppCatalogThriftConversion.getGatewayResourceProfile(gwresource, computeResourcePreferences, dataStoragePreferences);
-        }catch (Exception e) {
-            logger.error("Error while retrieving gateway profile...", e);
-            throw new AppCatalogException(e);
-        }
-    }
-
-    @Override
-    public boolean removeGatewayResourceProfile(String gatewayId) throws AppCatalogException {
-       try {
-           GatewayProfileResource resource = new GatewayProfileResource();
-           resource.remove(gatewayId);
-           return true;
-       }catch (Exception e) {
-           logger.error("Error while deleting gateway profile...", e);
-           throw new AppCatalogException(e);
-       }
-    }
-
-    @Override
-    public boolean removeComputeResourcePreferenceFromGateway(String gatewayId, String preferenceId) throws AppCatalogException {
-        try {
-            ComputeHostPreferenceResource resource = new ComputeHostPreferenceResource();
-            Map<String, String> ids = new HashMap<String, String>();
-            ids.put(AppCatAbstractResource.ComputeResourcePreferenceConstants.GATEWAY_ID, gatewayId);
-            ids.put(AppCatAbstractResource.ComputeResourcePreferenceConstants.RESOURCE_ID, preferenceId);
-            resource.remove(ids);
-            return true;
-        }catch (Exception e) {
-            logger.error("Error while deleting gateway profile...", e);
-            throw new AppCatalogException(e);
-        }
-    }
-
-    @Override
-    public boolean removeDataStoragePreferenceFromGateway(String gatewayId, String preferenceId) throws AppCatalogException {
-        try {
-            StoragePreferenceResource resource = new StoragePreferenceResource();
-            Map<String, String> ids = new HashMap<String, String>();
-            ids.put(AppCatAbstractResource.StoragePreferenceConstants.GATEWAY_ID, gatewayId);
-            ids.put(AppCatAbstractResource.StoragePreferenceConstants.STORAGE_ID, preferenceId);
-            resource.remove(ids);
-            return true;
-        }catch (Exception e) {
-            logger.error("Error while deleting gateway profile...", e);
-            throw new AppCatalogException(e);
-        }
-    }
-
-    @Override
-    public boolean isGatewayResourceProfileExists(String gatewayId) throws AppCatalogException {
-        try {
-            GatewayProfileResource resource = new GatewayProfileResource();
-            return resource.isExists(gatewayId);
-        }catch (Exception e) {
-            logger.error("Error while retrieving gateway profile...", e);
-            throw new AppCatalogException(e);
-        }
-    }
-
-    /**
-     * @param gatewayId
-     * @param hostId
-     * @return ComputeResourcePreference
-     */
-    @Override
-    public ComputeResourcePreference getComputeResourcePreference(String gatewayId, String hostId) throws AppCatalogException {
-        try {
-            ComputeHostPreferenceResource prefResource = new ComputeHostPreferenceResource();
-            List<AppCatalogResource> computePrefList = prefResource.get(AppCatAbstractResource.ComputeResourcePreferenceConstants.GATEWAY_ID, gatewayId);
-            for (AppCatalogResource resource : computePrefList){
-                ComputeHostPreferenceResource cmP = (ComputeHostPreferenceResource) resource;
-                if (cmP.getResourceId() != null && !cmP.getResourceId().equals("")){
-                    if (cmP.getResourceId().equals(hostId)){
-                        return AppCatalogThriftConversion.getComputeResourcePreference(cmP);
-                    }
-                }
-            }
-        }catch (Exception e) {
-            logger.error("Error while retrieving compute resource preference...", e);
-            throw new AppCatalogException(e);
-        }
-        return null;
-    }
-
-    @Override
-    public StoragePreference getStoragePreference(String gatewayId, String storageId) throws AppCatalogException {
-        try {
-            StoragePreferenceResource prefResource = new StoragePreferenceResource();
-            List<AppCatalogResource> computePrefList = prefResource.get(AppCatAbstractResource.ComputeResourcePreferenceConstants.GATEWAY_ID, gatewayId);
-            for (AppCatalogResource resource : computePrefList){
-                StoragePreferenceResource dsP = (StoragePreferenceResource) resource;
-                if (dsP.getStorageResourceId() != null && !dsP.getStorageResourceId().equals("")){
-                    if (dsP.getStorageResourceId().equals(storageId)){
-                        return AppCatalogThriftConversion.getDataStoragePreference(dsP);
-                    }
-                }
-            }
-        }catch (Exception e) {
-            logger.error("Error while retrieving data storage preference...", e);
-            throw new AppCatalogException(e);
-        }
-        return null;
-    }
-
-    /**
-     * @param gatewayId
-     * @return
-     */
-    @Override
-    public List<ComputeResourcePreference> getAllComputeResourcePreferences(String gatewayId) throws AppCatalogException {
-        try {
-            ComputeHostPreferenceResource prefResource = new ComputeHostPreferenceResource();
-            List<AppCatalogResource> computePrefList = prefResource.get(AppCatAbstractResource.ComputeResourcePreferenceConstants.GATEWAY_ID, gatewayId);
-            return AppCatalogThriftConversion.getComputeResourcePreferences(computePrefList);
-        }catch (Exception e) {
-            logger.error("Error while retrieving compute resource preference...", e);
-            throw new AppCatalogException(e);
-        }
-    }
-
-    @Override
-    public List<StoragePreference> getAllStoragePreferences(String gatewayId) throws AppCatalogException {
-        try {
-            StoragePreferenceResource prefResource = new StoragePreferenceResource();
-            List<AppCatalogResource> dataStoragePrefList = prefResource.get(AppCatAbstractResource.StoragePreferenceConstants.GATEWAY_ID, gatewayId);
-            return AppCatalogThriftConversion.getDataStoragePreferences(dataStoragePrefList);
-        }catch (Exception e) {
-            logger.error("Error while retrieving data storage preference...", e);
-            throw new AppCatalogException(e);
-        }
-    }
-
-    @Override
-    public List<String> getGatewayProfileIds(String gatewayName) throws AppCatalogException {
-        try {
-            GatewayProfileResource profileResource = new GatewayProfileResource();
-            List<AppCatalogResource> resourceList = profileResource.get(AppCatAbstractResource.GatewayProfileConstants.GATEWAY_ID, gatewayName);
-            List<String> gatewayIds = new ArrayList<String>();
-            if (resourceList != null && !resourceList.isEmpty()){
-                for (AppCatalogResource resource : resourceList){
-                    gatewayIds.add(((GatewayProfileResource)resource).getGatewayID());
-                }
-            }
-            return gatewayIds;
-        }catch (Exception e) {
-            logger.error("Error while retrieving gateway ids...", e);
-            throw new AppCatalogException(e);
-        }
-    }
-
-    @Override
-    public List<GatewayResourceProfile> getAllGatewayProfiles() throws AppCatalogException {
-        try {
-            List<GatewayResourceProfile> gatewayResourceProfileList = new ArrayList<GatewayResourceProfile>();
-            GatewayProfileResource profileResource = new GatewayProfileResource();
-            List<AppCatalogResource> resourceList = profileResource.getAll();
-            if (resourceList != null && !resourceList.isEmpty()){
-                for (AppCatalogResource resource : resourceList){
-                    GatewayProfileResource gatewayProfileResource = (GatewayProfileResource)resource;
-                    List<ComputeResourcePreference> computeResourcePreferences = getAllComputeResourcePreferences(gatewayProfileResource.getGatewayID());
-                    List<StoragePreference> dataStoragePreferences = getAllStoragePreferences(gatewayProfileResource.getGatewayID());
-                    GatewayResourceProfile gatewayResourceProfile = AppCatalogThriftConversion.getGatewayResourceProfile(gatewayProfileResource, computeResourcePreferences, dataStoragePreferences);
-                    gatewayResourceProfileList.add(gatewayResourceProfile);
-                }
-            }
-            return gatewayResourceProfileList;
-        }catch (Exception e) {
-            logger.error("Error while retrieving gateway ids...", e);
-            throw new AppCatalogException(e);
-        }
-    }
-}
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/impl/StorageResourceImpl.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/impl/StorageResourceImpl.java
deleted file mode 100644
index d00a7cc..0000000
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/impl/StorageResourceImpl.java
+++ /dev/null
@@ -1,277 +0,0 @@
-/**
- *
- * 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.airavata.registry.core.app.catalog.impl;
-
-import org.apache.airavata.model.appcatalog.storageresource.StorageResourceDescription;
-import org.apache.airavata.model.commons.airavata_commonsConstants;
-import org.apache.airavata.model.data.movement.DataMovementInterface;
-import org.apache.airavata.registry.core.app.catalog.resources.AppCatAbstractResource;
-import org.apache.airavata.registry.core.app.catalog.resources.AppCatalogResource;
-import org.apache.airavata.registry.core.app.catalog.resources.StorageInterfaceResource;
-import org.apache.airavata.registry.core.app.catalog.resources.StorageResourceResource;
-import org.apache.airavata.registry.core.app.catalog.util.AppCatalogThriftConversion;
-import org.apache.airavata.registry.core.app.catalog.util.AppCatalogUtils;
-import org.apache.airavata.registry.cpi.AppCatalogException;
-import org.apache.airavata.registry.cpi.StorageResource;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-public class StorageResourceImpl implements StorageResource {
-    private final static Logger logger = LoggerFactory.getLogger(StorageResourceImpl.class);
-
-
-	protected String saveStorageResourceDescriptorData(
-			StorageResourceDescription description) throws AppCatalogException {
-		//TODO remove existing one
-        StorageResourceResource storageResourceResource = saveStorageResource(description);
-		return storageResourceResource.getStorageResourceId();
-	}
-
-	protected StorageResourceResource saveStorageResource(
-			StorageResourceDescription description) throws AppCatalogException {
-        StorageResourceResource storageResourceResource = AppCatalogThriftConversion.getStorageResource(description);
-        storageResourceResource.save();
-        saveDataMovementInterfaces(description, storageResourceResource);
-		return storageResourceResource;
-	}
-
-    protected void saveDataMovementInterfaces(
-            StorageResourceDescription description,
-            StorageResourceResource storageResourceResource)
-            throws AppCatalogException {
-        List<DataMovementInterface> dataMovemenetInterfaces = description.getDataMovementInterfaces();
-        if (dataMovemenetInterfaces != null && !dataMovemenetInterfaces.isEmpty()) {
-            for (DataMovementInterface dataMovementInterface : dataMovemenetInterfaces) {
-                StorageInterfaceResource storageInterface = AppCatalogThriftConversion.getStorageInterface(dataMovementInterface);
-                storageInterface.setStorageResourceResource(storageResourceResource);
-                storageInterface.setStorageResourceId(storageResourceResource.getStorageResourceId());
-                storageInterface.save();
-            }
-        }
-    }
-    /**
-     * This function will add a storage resource description to the database
-     *
-     * @param description storage resource description
-     * @return unique resource ID generated by airavata
-     */
-    @Override
-    public String addStorageResource(StorageResourceDescription description) throws AppCatalogException {
-        try {
-            if (description.getStorageResourceDescription().equals("") || description.getStorageResourceId().equals(airavata_commonsConstants.DEFAULT_ID)){
-                description.setStorageResourceId(AppCatalogUtils.getID(description.getHostName()));
-            }
-            return saveStorageResourceDescriptorData(description);
-        } catch (Exception e) {
-            logger.error("Error while saving storage resource...", e);
-            throw new AppCatalogException(e);
-        }
-    }
-
-    /**
-     * This method will update storage resource
-     *
-     * @param storageResourceId      unique storage resource id
-     * @param updatedStorageResource updated storage resource
-     */
-    @Override
-    public void updateStorageResource(String storageResourceId, StorageResourceDescription updatedStorageResource) throws AppCatalogException {
-        try {
-            saveStorageResourceDescriptorData(updatedStorageResource);
-        } catch (Exception e) {
-            logger.error("Error while updating storage resource...", e);
-            throw new AppCatalogException(e);
-        }
-    }
-
-    /**
-     * This method will retrieve storage resource object on given resource id
-     *
-     * @param resourceId unique resource id
-     * @return StorageResource object
-     */
-    @Override
-    public StorageResourceDescription getStorageResource(String resourceId) throws AppCatalogException {
-        try {
-            StorageResourceResource resource = new StorageResourceResource();
-            StorageResourceResource storageResource = (StorageResourceResource)resource.get(resourceId);
-            return AppCatalogThriftConversion.getStorageDescription(storageResource);
-        }catch (Exception e){
-            logger.error("Error while retrieving storage resource...", e);
-            throw new AppCatalogException(e);
-        }
-    }
-
-    /**
-     * This method will return a list of storageResource descriptions according to given search criteria
-     *
-     * @param filters map should be provided as the field name and it's value
-     * @return list of storage resources
-     */
-    @Override
-    public List<StorageResourceDescription> getStorageResourceList(Map<String, String> filters) throws AppCatalogException {
-        List<StorageResourceDescription> storageResourceDescriptions = new ArrayList<StorageResourceDescription>();
-        try {
-            //TODO check if this is correct way to do this
-            StorageResourceResource resource = new StorageResourceResource();
-            for (String fieldName : filters.keySet() ){
-                if (fieldName.equals(AppCatAbstractResource.StorageResourceConstants.HOST_NAME)){
-                    List<AppCatalogResource> resources = resource.get(AppCatAbstractResource.ComputeResourceConstants.HOST_NAME, filters.get(fieldName));
-                    if (resources != null && !resources.isEmpty()){
-                        storageResourceDescriptions = AppCatalogThriftConversion.getStorageDescriptionList(resources);
-                    }
-                }else {
-                    logger.error("Unsupported field name for storage resource.", new IllegalArgumentException());
-                    throw new IllegalArgumentException("Unsupported field name for storage resource.");
-                }
-            }
-        }catch (Exception e){
-            logger.error("Error while retrieving storage resource list...", e);
-            throw new AppCatalogException(e);
-        }
-        return storageResourceDescriptions;
-    }
-
-    /**
-     * This method will retrieve all the storage resources
-     *
-     * @return list of storage resources
-     * @throws AppCatalogException
-     */
-    @Override
-    public List<StorageResourceDescription> getAllStorageResourceList() throws AppCatalogException {
-        List<StorageResourceDescription> storageResourceDescriptions = new ArrayList<StorageResourceDescription>();
-        try {
-            StorageResourceResource resource = new StorageResourceResource();
-            List<AppCatalogResource> resources = resource.getAll();
-            if (resources != null && !resources.isEmpty()){
-                storageResourceDescriptions = AppCatalogThriftConversion.getStorageDescriptionList(resources);
-            }
-        }catch (Exception e){
-            logger.error("Error while retrieving storage resource list...", e);
-            throw new AppCatalogException(e);
-        }
-        return storageResourceDescriptions;
-    }
-
-    /**
-     * This method will retrieve all the storage resource id with it's name
-     *
-     * @return map of storage resource ids + name
-     * @throws AppCatalogException
-     */
-    @Override
-    public Map<String, String> getAllStorageResourceIdList() throws AppCatalogException {
-        try {
-            Map<String, String> storageResourceMap = new HashMap<String, String>();
-            StorageResourceResource resource = new StorageResourceResource();
-            List<AppCatalogResource> allStorageResources = resource.getAll();
-            if (allStorageResources != null && !allStorageResources.isEmpty()){
-                for (AppCatalogResource sr : allStorageResources){
-                    StorageResourceResource srr = (StorageResourceResource)sr;
-                    storageResourceMap.put(srr.getStorageResourceId(), srr.getHostName());
-                }
-            }
-            return storageResourceMap;
-        }catch (Exception e){
-            logger.error("Error while retrieving storage resource list...", e);
-            throw new AppCatalogException(e);
-        }
-    }
-
-    /**
-     * This method will retrieve all the enabled storage resource id with it's name
-     *
-     * @return
-     * @throws AppCatalogException
-     */
-    @Override
-    public Map<String, String> getAvailableStorageResourceIdList() throws AppCatalogException {
-        try {
-            Map<String, String> storageResourceMap = new HashMap<String, String>();
-            StorageResourceResource resource = new StorageResourceResource();
-            List<AppCatalogResource> allStorageResources = resource.getAll();
-            if (allStorageResources != null && !allStorageResources.isEmpty()){
-                for (AppCatalogResource sr : allStorageResources){
-                    StorageResourceResource srr = (StorageResourceResource)sr;
-                    if(srr.isEnabled()) {
-                        storageResourceMap.put(srr.getStorageResourceId(), srr.getHostName());
-                    }
-                }
-            }
-            return storageResourceMap;
-        }catch (Exception e){
-            logger.error("Error while retrieving storage resource list...", e);
-            throw new AppCatalogException(e);
-        }
-    }
-
-    /**
-     * This method will check whether the given resource already exists in the system
-     *
-     * @param resourceId unique resource id
-     * @return true or false
-     */
-    @Override
-    public boolean isStorageResourceExists(String resourceId) throws AppCatalogException {
-        try {
-            StorageResourceResource resource = new StorageResourceResource();
-            return resource.isExists(resourceId);
-        }catch (Exception e){
-            logger.error("Error while retrieving storage resource...", e);
-            throw new AppCatalogException(e);
-        }
-    }
-
-    /**
-     * This method will remove given resource from the system
-     *
-     * @param resourceId unique resource id
-     */
-    @Override
-    public void removeStorageResource(String resourceId) throws AppCatalogException {
-        try {
-            StorageResourceResource resource = new StorageResourceResource();
-            resource.remove(resourceId);
-        }catch (Exception e){
-            logger.error("Error while removing storage resource...", e);
-            throw new AppCatalogException(e);
-        }
-    }
-
-    @Override
-    public void removeDataMovementInterface(String storageResourceId, String dataMovementInterfaceId) throws AppCatalogException {
-        try {
-            StorageInterfaceResource resource = new StorageInterfaceResource();
-            Map<String, String> ids = new HashMap<String, String>();
-            ids.put(AppCatAbstractResource.StorageInterfaceConstants.STORAGE_RESOURCE_ID, storageResourceId);
-            ids.put(AppCatAbstractResource.StorageInterfaceConstants.DATA_MOVEMENT_ID, dataMovementInterfaceId);
-            resource.remove(ids);
-        }catch (Exception e){
-            logger.error("Error while removing data movement interface..", e);
-            throw new AppCatalogException(e);
-        }
-    }
-}
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/impl/UsrResourceProfileImpl.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/impl/UsrResourceProfileImpl.java
deleted file mode 100644
index 19a7f15..0000000
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/impl/UsrResourceProfileImpl.java
+++ /dev/null
@@ -1,365 +0,0 @@
-/**
- *
- * 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.airavata.registry.core.app.catalog.impl;
-
-import org.apache.airavata.common.utils.AiravataUtils;
-import org.apache.airavata.model.appcatalog.userresourceprofile.UserComputeResourcePreference;
-import org.apache.airavata.model.appcatalog.userresourceprofile.UserResourceProfile;
-import org.apache.airavata.model.appcatalog.userresourceprofile.UserStoragePreference;
-import org.apache.airavata.registry.core.app.catalog.resources.*;
-import org.apache.airavata.registry.core.app.catalog.util.AppCatalogThriftConversion;
-import org.apache.airavata.registry.cpi.AppCatalogException;
-import org.apache.airavata.registry.cpi.CompositeIdentifier;
-import org.apache.airavata.registry.cpi.UsrResourceProfile;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import java.util.ArrayList;
-import java.util.List;
-
-public class UsrResourceProfileImpl implements UsrResourceProfile {
-    private final static Logger logger = LoggerFactory.getLogger(UsrResourceProfileImpl.class);
-
-    @Override
-    public String addUserResourceProfile(org.apache.airavata.model.appcatalog.userresourceprofile.UserResourceProfile userResourceProfile) throws AppCatalogException {
-        try {
-            UserResourceProfileResource profileResource = new UserResourceProfileResource();
-            if (!userResourceProfile.getUserId().equals("")){
-                profileResource.setUserId(userResourceProfile.getUserId());
-            }
-            if (!userResourceProfile.getGatewayID().equals("")){
-                profileResource.setGatewayID(userResourceProfile.getGatewayID());
-            }
-            if (userResourceProfile.getCredentialStoreToken()!= null){
-                profileResource.setCredentialStoreToken(userResourceProfile.getCredentialStoreToken());
-            }
-            if (userResourceProfile.getIdentityServerTenant() != null){
-                profileResource.setIdentityServerTenant(userResourceProfile.getIdentityServerTenant());
-            }
-            if (userResourceProfile.getIdentityServerPwdCredToken() != null){
-                profileResource.setIdentityServerPwdCredToken(userResourceProfile.getIdentityServerPwdCredToken());
-            }
-            profileResource.setUserId(userResourceProfile.getUserId());
-            profileResource.setGatewayID(userResourceProfile.getGatewayID());
-            profileResource.save();
-            List<UserComputeResourcePreference> userComputeResourcePreferences = userResourceProfile.getUserComputeResourcePreferences();
-            if (userComputeResourcePreferences != null && !userComputeResourcePreferences.isEmpty()){
-                for (UserComputeResourcePreference preference : userComputeResourcePreferences ){
-                    UserComputeHostPreferenceResource resource = new UserComputeHostPreferenceResource();
-                    resource.setUserResourceProfileResource(profileResource);
-                    resource.setResourceId(preference.getComputeResourceId());
-                    ComputeResourceResource computeHostResource = new ComputeResourceResource();
-                    resource.setComputeHostResource((ComputeResourceResource)computeHostResource.get(preference.getComputeResourceId()));
-                    resource.setGatewayId(profileResource.getGatewayID());
-                    resource.setUserId(profileResource.getUserId());
-                    resource.setLoginUserName(preference.getLoginUserName());
-                    resource.setResourceCSToken(preference.getResourceSpecificCredentialStoreToken());
-                    resource.setBatchQueue(preference.getPreferredBatchQueue());
-                    resource.setProjectNumber(preference.getAllocationProjectNumber());
-                    resource.setScratchLocation(preference.getScratchLocation());
-                    resource.setQualityOfService(preference.getQualityOfService());
-                    resource.setReservation(preference.getReservation());
-                    if(preference.getReservationStartTime() > 0){
-                        resource.setReservationStartTime(AiravataUtils.getTime(preference.getReservationStartTime()));
-                    }
-
-                    if (preference.getReservationEndTime() > 0) {
-                        resource.setReservationEndTime(AiravataUtils.getTime(preference.getReservationEndTime()));
-                    }
-                    resource.setValidated(preference.isValidated());
-                    resource.save();
-                }
-            }
-            List<UserStoragePreference> dataStoragePreferences = userResourceProfile.getUserStoragePreferences();
-            if (dataStoragePreferences != null && !dataStoragePreferences.isEmpty()){
-                for (UserStoragePreference storagePreference : dataStoragePreferences){
-                    UserStoragePreferenceResource resource = new UserStoragePreferenceResource();
-                    resource.setStorageResourceId(storagePreference.getStorageResourceId());
-                    resource.setGatewayId(profileResource.getGatewayID());
-                    resource.setUserId(profileResource.getUserId());
-                    resource.setFsRootLocation(storagePreference.getFileSystemRootLocation());
-                    resource.setLoginUserName(storagePreference.getLoginUserName());
-                    resource.setResourceCSToken(storagePreference.getResourceSpecificCredentialStoreToken());
-                    resource.setUserResourceProfileResource(profileResource);
-                    resource.save();
-                }
-            }
-            return profileResource.getGatewayID();
-        }catch (Exception e) {
-            logger.error("Error while saving gateway profile...", e);
-            throw new AppCatalogException(e);
-        }
-    }
-
-    @Override
-    public void updateUserResourceProfile(String userId, String gatewayId, org.apache.airavata.model.appcatalog.userresourceprofile.UserResourceProfile updatedProfile) throws AppCatalogException {
-        try {
-            UserResourceProfileResource profileResource = new UserResourceProfileResource();
-            CompositeIdentifier ids = new CompositeIdentifier(userId,gatewayId);
-            UserResourceProfileResource existingUP = (UserResourceProfileResource)profileResource.get(ids);
-            existingUP.setCredentialStoreToken(updatedProfile.getCredentialStoreToken());
-            existingUP.setIdentityServerTenant(updatedProfile.getIdentityServerTenant());
-            existingUP.setIdentityServerPwdCredToken(updatedProfile.getIdentityServerPwdCredToken());
-            existingUP.save();
-
-            List<UserComputeResourcePreference> userComputeResourcePreferences = updatedProfile.getUserComputeResourcePreferences();
-            if (userComputeResourcePreferences != null && !userComputeResourcePreferences.isEmpty()){
-                for (UserComputeResourcePreference preference : userComputeResourcePreferences ){
-                    UserComputeHostPreferenceResource resource = new UserComputeHostPreferenceResource();
-                    resource.setUserResourceProfileResource(existingUP);
-                    resource.setResourceId(preference.getComputeResourceId());
-                    ComputeResourceResource computeHostResource = new ComputeResourceResource();
-                    resource.setComputeHostResource((ComputeResourceResource)computeHostResource.get(preference.getComputeResourceId()));
-                    resource.setUserId(userId);
-                    resource.setGatewayId(gatewayId);
-                    resource.setLoginUserName(preference.getLoginUserName());
-                    resource.setBatchQueue(preference.getPreferredBatchQueue());
-                    resource.setProjectNumber(preference.getAllocationProjectNumber());
-                    resource.setScratchLocation(preference.getScratchLocation());
-                    resource.setResourceCSToken(preference.getResourceSpecificCredentialStoreToken());
-                    resource.setQualityOfService(preference.getQualityOfService());
-                    resource.setReservation(preference.getReservation());
-                    if(preference.getReservationStartTime() > 0){
-                        resource.setReservationStartTime(AiravataUtils.getTime(preference.getReservationStartTime()));
-                    }
-
-                    if (preference.getReservationEndTime() > 0) {
-                        resource.setReservationEndTime(AiravataUtils.getTime(preference.getReservationEndTime()));
-                    }
-                    resource.setValidated(preference.isValidated());
-                    resource.save();
-                }
-            }
-            List<UserStoragePreference> dataStoragePreferences = updatedProfile.getUserStoragePreferences();
-            if (dataStoragePreferences != null && !dataStoragePreferences.isEmpty()){
-                for (UserStoragePreference storagePreference : dataStoragePreferences){
-                    UserStoragePreferenceResource resource = new UserStoragePreferenceResource();
-                    resource.setStorageResourceId(storagePreference.getStorageResourceId());
-                    resource.setGatewayId(existingUP.getGatewayID());
-                    resource.setUserId(existingUP.getUserId());
-                    resource.setFsRootLocation(storagePreference.getFileSystemRootLocation());
-                    resource.setLoginUserName(storagePreference.getLoginUserName());
-                    resource.setResourceCSToken(storagePreference.getResourceSpecificCredentialStoreToken());
-                    resource.setUserResourceProfileResource(existingUP);
-                    resource.save();
-                }
-            }
-        }catch (Exception e) {
-            logger.error("Error while updating User Resource profile...", e);
-            throw new AppCatalogException(e);
-        }
-    }
-
-    @Override
-    public UserResourceProfile getUserResourceProfile(String userId, String gatewayId) throws AppCatalogException {
-        try {
-            UserResourceProfileResource resource = new UserResourceProfileResource();
-            CompositeIdentifier ids = new CompositeIdentifier(userId,gatewayId);
-            UserResourceProfileResource uResource = (UserResourceProfileResource)resource.get(ids);
-            UserComputeHostPreferenceResource prefResource = new UserComputeHostPreferenceResource();
-            List<AppCatalogResource> usercomputePrefList = prefResource.get(AppCatAbstractResource.UserComputeResourcePreferenceConstants.USER_ID, ids);
-            List<UserComputeResourcePreference> userComputeResourcePreferences = AppCatalogThriftConversion.getUserComputeResourcePreferences(usercomputePrefList);
-            List<UserStoragePreference> dataStoragePreferences = getAllUserStoragePreferences(userId,gatewayId);
-            return AppCatalogThriftConversion.getUserResourceProfile(uResource, userComputeResourcePreferences, dataStoragePreferences);
-        }catch (Exception e) {
-            logger.error("Error while retrieving user resource profile...", e);
-            throw new AppCatalogException(e);
-        }
-    }
-
-    @Override
-    public boolean removeUserResourceProfile(String userId, String gatewayId) throws AppCatalogException {
-       try {
-           UserResourceProfileResource resource = new UserResourceProfileResource();
-           CompositeIdentifier ids = new CompositeIdentifier(userId,gatewayId);
-           resource.remove(ids);
-           return true;
-       }catch (Exception e) {
-           logger.error("Error while deleting user resource profile...", e);
-           throw new AppCatalogException(e);
-       }
-    }
-
-    @Override
-    public boolean removeUserComputeResourcePreferenceFromGateway(String userId, String gatewayId, String preferenceId) throws AppCatalogException {
-        try {
-            UserComputeHostPreferenceResource resource = new UserComputeHostPreferenceResource();
-            CompositeIdentifier ids = new CompositeIdentifier(preferenceId, userId, gatewayId);
-            resource.remove(ids);
-            return true;
-        }catch (Exception e) {
-            logger.error("Error while deleting user resource profile...", e);
-            throw new AppCatalogException(e);
-        }
-    }
-
-    @Override
-    public boolean removeUserDataStoragePreferenceFromGateway(String userId, String gatewayId, String preferenceId) throws AppCatalogException {
-        try {
-            UserStoragePreferenceResource resource = new UserStoragePreferenceResource();
-            CompositeIdentifier ids = new CompositeIdentifier(preferenceId,userId, gatewayId);
-            resource.remove(ids);
-            return true;
-        }catch (Exception e) {
-            logger.error("Error while deleting user resource profile...", e);
-            throw new AppCatalogException(e);
-        }
-    }
-
-    @Override
-    public boolean isUserResourceProfileExists(String userId, String gatewayId) throws AppCatalogException {
-        try {
-            UserResourceProfileResource resource = new UserResourceProfileResource();
-            CompositeIdentifier ids = new CompositeIdentifier(userId, gatewayId);
-            return resource.isExists(ids);
-        }catch (Exception e) {
-            logger.error("Error while retrieving user resource profile...", e);
-            throw new AppCatalogException(e);
-        }
-    }
-
-    /**
-     * @param gatewayId
-     * @param hostId
-     * @return ComputeResourcePreference
-     */
-    @Override
-    public UserComputeResourcePreference getUserComputeResourcePreference(String userId, String gatewayId, String hostId) throws AppCatalogException {
-        try {
-            UserComputeHostPreferenceResource prefResource = new UserComputeHostPreferenceResource();
-            CompositeIdentifier ids = new CompositeIdentifier(userId, gatewayId);
-            List<AppCatalogResource> computePrefList = prefResource.get(AppCatAbstractResource.UserComputeResourcePreferenceConstants.USER_ID, ids);
-            for (AppCatalogResource resource : computePrefList){
-                UserComputeHostPreferenceResource cmP = (UserComputeHostPreferenceResource) resource;
-                if (cmP.getResourceId() != null && !cmP.getResourceId().equals("")){
-                    if (cmP.getResourceId().equals(hostId)){
-                        return AppCatalogThriftConversion.getUserComputeResourcePreference(cmP);
-                    }
-                }
-            }
-        }catch (Exception e) {
-            logger.error("Error while retrieving user compute resource preference...", e);
-            throw new AppCatalogException(e);
-        }
-        return null;
-    }
-
-    @Override
-    public UserStoragePreference getUserStoragePreference(String userId, String gatewayId, String storageId) throws AppCatalogException {
-        try {
-            UserStoragePreferenceResource prefResource = new UserStoragePreferenceResource();
-            CompositeIdentifier ids = new CompositeIdentifier(userId, gatewayId);
-            List<AppCatalogResource> computePrefList = prefResource.get(AppCatAbstractResource.UserComputeResourcePreferenceConstants.USER_ID, ids);
-            for (AppCatalogResource resource : computePrefList){
-                UserStoragePreferenceResource dsP = (UserStoragePreferenceResource) resource;
-                if (dsP.getStorageResourceId() != null && !dsP.getStorageResourceId().equals("")){
-                    if (dsP.getStorageResourceId().equals(storageId)){
-                        return AppCatalogThriftConversion.getUserDataStoragePreference(dsP);
-                    }
-                }
-            }
-        }catch (Exception e) {
-            logger.error("Error while retrieving user data storage preference...", e);
-            throw new AppCatalogException(e);
-        }
-        return null;
-    }
-
-    /**
-     * @param userId
-     * @return
-     */
-    @Override
-    public List<UserComputeResourcePreference> getAllUserComputeResourcePreferences(String userId, String gatewayID) throws AppCatalogException {
-        try {
-            UserComputeHostPreferenceResource prefResource = new UserComputeHostPreferenceResource();
-            CompositeIdentifier ids = new CompositeIdentifier(userId, gatewayID);
-            List<AppCatalogResource> computePrefList = prefResource.get(AppCatAbstractResource.UserComputeResourcePreferenceConstants.USER_ID, ids);
-            return AppCatalogThriftConversion.getUserComputeResourcePreferences(computePrefList);
-        }catch (Exception e) {
-            logger.error("Error while retrieving compute resource preference...", e);
-            throw new AppCatalogException(e);
-        }
-    }
-
-    @Override
-    public List<UserStoragePreference> getAllUserStoragePreferences(String userId, String gatewayID) throws AppCatalogException {
-        try {
-            UserStoragePreferenceResource prefResource = new UserStoragePreferenceResource();
-            CompositeIdentifier ids = new CompositeIdentifier(userId, gatewayID);
-            List<AppCatalogResource> dataStoragePrefList = prefResource.get(AppCatAbstractResource.UserStoragePreferenceConstants.USER_ID, ids);
-            return AppCatalogThriftConversion.getUserDataStoragePreferences(dataStoragePrefList);
-        }catch (Exception e) {
-            logger.error("Error while retrieving data storage preference...", e);
-            throw new AppCatalogException(e);
-        }
-    }
-
-    @Override
-    public List<String> getGatewayProfileIds(String gatewayName) throws AppCatalogException {
-        try {
-            UserResourceProfileResource profileResource = new UserResourceProfileResource();
-            List<AppCatalogResource> resourceList = profileResource.get(AppCatAbstractResource.UserResourceProfileConstants.GATEWAY_ID, gatewayName);
-            List<String> gatewayIds = new ArrayList<String>();
-            if (resourceList != null && !resourceList.isEmpty()){
-                for (AppCatalogResource resource : resourceList){
-                    gatewayIds.add(((UserResourceProfileResource)resource).getGatewayID());
-                }
-            }
-            return gatewayIds;
-        }catch (Exception e) {
-            logger.error("Error while retrieving gateway ids...", e);
-            throw new AppCatalogException(e);
-        }
-    }
-
-    @Override
-    public String getUserNamefromID(String userId, String gatewayID) throws AppCatalogException {
-//        Implementation not need, username and ID are some.
-        return null;
-    }
-
-
-    @Override
-    public List<UserResourceProfile> getAllUserResourceProfiles() throws AppCatalogException {
-        try {
-            List<UserResourceProfile> gatewayResourceProfileList = new ArrayList<UserResourceProfile>();
-            UserResourceProfileResource profileResource = new UserResourceProfileResource();
-            List<AppCatalogResource> resourceList = profileResource.getAll();
-            if (resourceList != null && !resourceList.isEmpty()){
-                for (AppCatalogResource resource : resourceList){
-                    UserResourceProfileResource userProfileResource = (UserResourceProfileResource)resource;
-                    List<UserComputeResourcePreference> computeResourcePreferences = getAllUserComputeResourcePreferences(userProfileResource.getUserId(),userProfileResource.getGatewayID());
-                    List<UserStoragePreference> dataStoragePreferences = getAllUserStoragePreferences(userProfileResource.getUserId(), userProfileResource.getGatewayID());
-                    UserResourceProfile gatewayResourceProfile = AppCatalogThriftConversion.getUserResourceProfile(userProfileResource, computeResourcePreferences, dataStoragePreferences);
-                    gatewayResourceProfileList.add(gatewayResourceProfile);
-                }
-            }
-            return gatewayResourceProfileList;
-        }catch (Exception e) {
-            logger.error("Error while retrieving user resource profiles...", e);
-            throw new AppCatalogException(e);
-        }
-    }
-
-    public static Logger getLogger() {
-        return logger;
-    }
-}
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/AppEnvironment.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/AppEnvironment.java
deleted file mode 100644
index 9d3cac2..0000000
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/AppEnvironment.java
+++ /dev/null
@@ -1,85 +0,0 @@
-/**
- *
- * 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.airavata.registry.core.app.catalog.model;
-
-import javax.persistence.*;
-import java.io.Serializable;
-
-@Entity
-@Table(name = "APP_ENVIRONMENT")
-@IdClass(AppEnvironment_PK.class)
-public class AppEnvironment implements Serializable {
-    @Id
-    @Column(name = "DEPLOYMENT_ID")
-    private String deploymentID;
-    @Id
-    @Column(name = "NAME")
-    private String name;
-
-    @Column(name = "VALUE")
-    private String value;
-
-    @Column(name = "ENV_ORDER")
-    private Integer order;
-
-    @ManyToOne(cascade= CascadeType.MERGE)
-    @JoinColumn(name = "DEPLOYMENT_ID")
-    private ApplicationDeployment applicationDeployment;
-
-    public String getDeploymentID() {
-        return deploymentID;
-    }
-
-    public void setDeploymentID(String deploymentID) {
-        this.deploymentID = deploymentID;
-    }
-
-    public String getName() {
-        return name;
-    }
-
-    public void setName(String name) {
-        this.name = name;
-    }
-
-    public String getValue() {
-        return value;
-    }
-
-    public void setValue(String value) {
-        this.value = value;
-    }
-
-    public ApplicationDeployment getApplicationDeployment() {
-        return applicationDeployment;
-    }
-
-    public void setApplicationDeployment(ApplicationDeployment applicationDeployment) {
-        this.applicationDeployment = applicationDeployment;
-    }
-
-    public Integer getOrder() {
-        return order;
-    }
-
-    public void setOrder(Integer order) {
-        this.order = order;
-    }
-}
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/AppEnvironment_PK.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/AppEnvironment_PK.java
deleted file mode 100644
index a48d39b..0000000
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/AppEnvironment_PK.java
+++ /dev/null
@@ -1,62 +0,0 @@
-/**
- *
- * 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.airavata.registry.core.app.catalog.model;
-
-import java.io.Serializable;
-
-public class AppEnvironment_PK implements Serializable {
-    private String deploymentID;
-    private String name;
-
-    public AppEnvironment_PK(String deploymentID, String name) {
-        this.deploymentID = deploymentID;
-        this.name = name;
-    }
-
-    public AppEnvironment_PK() {
-        ;
-    }
-
-    @Override
-    public boolean equals(Object o) {
-        return false;
-    }
-
-    @Override
-    public int hashCode() {
-        return 1;
-    }
-
-    public String getDeploymentID() {
-        return deploymentID;
-    }
-
-    public void setDeploymentID(String deploymentID) {
-        this.deploymentID = deploymentID;
-    }
-
-    public String getName() {
-        return name;
-    }
-
-    public void setName(String name) {
-        this.name = name;
-    }
-}
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/AppInput_PK.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/AppInput_PK.java
deleted file mode 100644
index 7783957..0000000
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/AppInput_PK.java
+++ /dev/null
@@ -1,62 +0,0 @@
-/**
- *
- * 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.airavata.registry.core.app.catalog.model;
-
-import java.io.Serializable;
-
-public class AppInput_PK implements Serializable {
-    private String interfaceID;
-    private String inputKey;
-
-    public AppInput_PK(String interfaceID, String inputKey) {
-        this.interfaceID = interfaceID;
-        this.inputKey = inputKey;
-    }
-
-    public AppInput_PK() {
-        ;
-    }
-
-    @Override
-    public boolean equals(Object o) {
-        return false;
-    }
-
-    @Override
-    public int hashCode() {
-        return 1;
-    }
-
-    public String getInterfaceID() {
-        return interfaceID;
-    }
-
-    public void setInterfaceID(String interfaceID) {
-        this.interfaceID = interfaceID;
-    }
-
-    public String getInputKey() {
-        return inputKey;
-    }
-
-    public void setInputKey(String inputKey) {
-        this.inputKey = inputKey;
-    }
-}
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/AppModuleMapping.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/AppModuleMapping.java
deleted file mode 100644
index c3ed5c5..0000000
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/AppModuleMapping.java
+++ /dev/null
@@ -1,75 +0,0 @@
-/**
- *
- * 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.airavata.registry.core.app.catalog.model;
-
-import javax.persistence.*;
-import java.io.Serializable;
-
-@Entity
-@Table(name = "APP_MODULE_MAPPING")
-@IdClass(AppModuleMapping_PK.class)
-public class AppModuleMapping implements Serializable {
-    @Id
-    @Column(name = "INTERFACE_ID")
-    private String interfaceID;
-    @Id
-    @Column(name = "MODULE_ID")
-    private String moduleID;
-
-    @ManyToOne(cascade= CascadeType.MERGE)
-    @JoinColumn(name = "INTERFACE_ID")
-    private ApplicationInterface applicationInterface;
-
-    @ManyToOne(cascade= CascadeType.MERGE)
-    @JoinColumn(name = "MODULE_ID")
-    private ApplicationModule applicationModule;
-
-    public String getInterfaceID() {
-        return interfaceID;
-    }
-
-    public void setInterfaceID(String interfaceID) {
-        this.interfaceID = interfaceID;
-    }
-
-    public String getModuleID() {
-        return moduleID;
-    }
-
-    public void setModuleID(String moduleID) {
-        this.moduleID = moduleID;
-    }
-
-    public ApplicationInterface getApplicationInterface() {
-        return applicationInterface;
-    }
-
-    public void setApplicationInterface(ApplicationInterface applicationInterface) {
-        this.applicationInterface = applicationInterface;
-    }
-
-    public ApplicationModule getApplicationModule() {
-        return applicationModule;
-    }
-
-    public void setApplicationModule(ApplicationModule applicationModule) {
-        this.applicationModule = applicationModule;
-    }
-}
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/AppModuleMapping_PK.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/AppModuleMapping_PK.java
deleted file mode 100644
index 43cb759..0000000
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/AppModuleMapping_PK.java
+++ /dev/null
@@ -1,62 +0,0 @@
-/**
- *
- * 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.airavata.registry.core.app.catalog.model;
-
-import java.io.Serializable;
-
-public class AppModuleMapping_PK implements Serializable {
-    private String interfaceID;
-    private String moduleID;
-
-    public AppModuleMapping_PK(String interfaceID, String moduleID) {
-        this.interfaceID = interfaceID;
-        this.moduleID = moduleID;
-    }
-
-    public AppModuleMapping_PK() {
-        ;
-    }
-
-    @Override
-    public boolean equals(Object o) {
-        return false;
-    }
-
-    @Override
-    public int hashCode() {
-        return 1;
-    }
-
-    public String getInterfaceID() {
-        return interfaceID;
-    }
-
-    public void setInterfaceID(String interfaceID) {
-        this.interfaceID = interfaceID;
-    }
-
-    public String getModuleID() {
-        return moduleID;
-    }
-
-    public void setModuleID(String moduleID) {
-        this.moduleID = moduleID;
-    }
-}
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/AppOutput_PK.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/AppOutput_PK.java
deleted file mode 100644
index 4e27fdd..0000000
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/AppOutput_PK.java
+++ /dev/null
@@ -1,62 +0,0 @@
-/**
- *
- * 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.airavata.registry.core.app.catalog.model;
-
-import java.io.Serializable;
-
-public class AppOutput_PK  implements Serializable {
-    private String interfaceID;
-    private String outputKey;
-
-    public AppOutput_PK(String interfaceID, String outputKey) {
-        this.interfaceID = interfaceID;
-        this.outputKey = outputKey;
-    }
-
-    public AppOutput_PK() {
-        ;
-    }
-
-    @Override
-    public boolean equals(Object o) {
-        return false;
-    }
-
-    @Override
-    public int hashCode() {
-        return 1;
-    }
-
-    public String getInterfaceID() {
-        return interfaceID;
-    }
-
-    public void setInterfaceID(String interfaceID) {
-        this.interfaceID = interfaceID;
-    }
-
-    public String getOutputKey() {
-        return outputKey;
-    }
-
-    public void setOutputKey(String outputKey) {
-        this.outputKey = outputKey;
-    }
-}
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/ApplicationDeployment.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/ApplicationDeployment.java
deleted file mode 100644
index 6e6f6fa..0000000
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/ApplicationDeployment.java
+++ /dev/null
@@ -1,196 +0,0 @@
-/**
- *
- * 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.airavata.registry.core.app.catalog.model;
-
-import javax.persistence.*;
-import java.io.Serializable;
-import java.sql.Timestamp;
-
-@Entity
-@Table(name = "APPLICATION_DEPLOYMENT")
-public class ApplicationDeployment implements Serializable {
-    @Id
-    @Column(name = "DEPLOYMENT_ID")
-    private String deploymentID;
-    @Column(name = "APP_MODULE_ID")
-    private String appModuleID;
-    @Column(name = "COMPUTE_HOSTID")
-    private String hostID;
-    @Column(name = "EXECUTABLE_PATH")
-    private String executablePath;
-    @Column(name = "APPLICATION_DESC")
-    private String applicationDesc;
-    @Column(name = "PARALLELISM")
-    private String parallelism;
-    @Column(name = "GATEWAY_ID")
-    private String gatewayId;
-    @Column(name = "DEFAULT_QUEUE_NAME")
-    private String defaultQueueName;
-    @Column(name = "DEFAULT_NODE_COUNT")
-    private int defaultNodeCount;
-    @Column(name = "DEFAULT_CPU_COUNT")
-    private int defaultCPUCount;
-    @Column(name = "DEFAULT_WALLTIME")
-    private int defaultWalltime;
-    @Column(name = "EDITABLE_BY_USER")
-    private boolean editableByUser;
-
-    @ManyToOne(cascade= CascadeType.MERGE)
-    @JoinColumn(name = "APP_MODULE_ID")
-    private ApplicationModule applicationModule;
-
-    @ManyToOne(cascade= CascadeType.MERGE)
-    @JoinColumn(name = "COMPUTE_HOSTID")
-    private ComputeResource computeResource;
-
-    @Column(name = "CREATION_TIME")
-    private Timestamp creationTime;
-
-    @Column(name = "UPDATE_TIME")
-    private Timestamp updateTime;
-
-    public String getGatewayId() {
-        return gatewayId;
-    }
-
-    public void setGatewayId(String gatewayId) {
-        this.gatewayId = gatewayId;
-    }
-
-    public Timestamp getCreationTime() {
-        return creationTime;
-    }
-
-    public void setCreationTime(Timestamp creationTime) {
-        this.creationTime = creationTime;
-    }
-
-    public Timestamp getUpdateTime() {
-        return updateTime;
-    }
-
-    public void setUpdateTime(Timestamp updateTime) {
-        this.updateTime = updateTime;
-    }
-
-    public String getDeploymentID() {
-        return deploymentID;
-    }
-
-    public void setDeploymentID(String deploymentID) {
-        this.deploymentID = deploymentID;
-    }
-
-    public String getAppModuleID() {
-        return appModuleID;
-    }
-
-    public void setAppModuleID(String appModuleID) {
-        this.appModuleID = appModuleID;
-    }
-
-    public String getHostID() {
-        return hostID;
-    }
-
-    public void setHostID(String hostID) {
-        this.hostID = hostID;
-    }
-
-    public String getExecutablePath() {
-        return executablePath;
-    }
-
-    public void setExecutablePath(String executablePath) {
-        this.executablePath = executablePath;
-    }
-
-    public String getApplicationDesc() {
-        return applicationDesc;
-    }
-
-    public void setApplicationDesc(String applicationDesc) {
-        this.applicationDesc = applicationDesc;
-    }
-
-    public ApplicationModule getApplicationModule() {
-        return applicationModule;
-    }
-
-    public void setApplicationModule(ApplicationModule applicationModule) {
-        this.applicationModule = applicationModule;
-    }
-
-    public ComputeResource getComputeResource() {
-        return computeResource;
-    }
-
-    public void setComputeResource(ComputeResource computeResource) {
-        this.computeResource = computeResource;
-    }
-
-	public String getParallelism() {
-		return parallelism;
-	}
-
-	public void setParallelism(String parallelism) {
-		this.parallelism = parallelism;
-	}
-
-    public String getDefaultQueueName() {
-        return defaultQueueName;
-    }
-
-    public void setDefaultQueueName(String defaultQueueName) {
-        this.defaultQueueName = defaultQueueName;
-    }
-
-    public int getDefaultNodeCount() {
-        return defaultNodeCount;
-    }
-
-    public void setDefaultNodeCount(int defaultNodeCount) {
-        this.defaultNodeCount = defaultNodeCount;
-    }
-
-    public int getDefaultCPUCount() {
-        return defaultCPUCount;
-    }
-
-    public void setDefaultCPUCount(int defaultCPUCount) {
-        this.defaultCPUCount = defaultCPUCount;
-    }
-
-    public int getDefaultWalltime() {
-        return defaultWalltime;
-    }
-
-    public void setDefaultWalltime(int defaultWalltime) {
-        this.defaultWalltime = defaultWalltime;
-    }
-
-    public boolean isEditableByUser() {
-        return editableByUser;
-    }
-
-    public void setEditableByUser(boolean editableByUser) {
-        this.editableByUser = editableByUser;
-    }
-}
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/ApplicationIntInput.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/ApplicationIntInput.java
deleted file mode 100644
index 613f00e..0000000
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/ApplicationIntInput.java
+++ /dev/null
@@ -1,175 +0,0 @@
-/**
- *
- * 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.airavata.registry.core.app.catalog.model;
-
-
-import javax.persistence.*;
-import java.io.Serializable;
-
-@Entity
-@Table(name = "APPLICATION_INPUT")
-@IdClass(AppInput_PK.class)
-public class ApplicationIntInput implements Serializable {
-    @Id
-    @Column(name = "INTERFACE_ID")
-    private String interfaceID;
-    @Id
-    @Column(name = "INPUT_KEY")
-    private String inputKey;
-    @Column(name = "INPUT_VALUE")
-    private String inputVal;
-    @Column(name = "DATA_TYPE")
-    private String dataType;
-    @Column(name = "METADATA")
-    private String metadata;
-    @Column(name = "APP_ARGUMENT")
-    private String appArgument;
-    @Column(name = "USER_FRIENDLY_DESC")
-    private String userFriendlyDesc;
-    @Column(name = "STANDARD_INPUT")
-    private boolean standardInput;
-    @Column(name="INPUT_ORDER")
-    private int inputOrder;
-    @Column(name="IS_REQUIRED")
-    private boolean isRequired;
-    @Column(name="REQUIRED_TO_COMMANDLINE")
-    private boolean requiredToCMD;
-    @Column(name = "DATA_STAGED")
-    private boolean dataStaged;
-    @Column(name = "IS_READ_ONLY")
-    private boolean isReadOnly;
-
-    @ManyToOne(cascade= CascadeType.MERGE)
-    @JoinColumn(name = "INTERFACE_ID")
-    private ApplicationInterface applicationInterface;
-
-    public String getInterfaceID() {
-        return interfaceID;
-    }
-
-    public void setInterfaceID(String interfaceID) {
-        this.interfaceID = interfaceID;
-    }
-
-    public String getInputKey() {
-        return inputKey;
-    }
-
-    public void setInputKey(String inputKey) {
-        this.inputKey = inputKey;
-    }
-
-    public String getInputVal() {
-        return inputVal;
-    }
-
-    public void setInputVal(String inputVal) {
-        this.inputVal = inputVal;
-    }
-
-    public String getDataType() {
-        return dataType;
-    }
-
-    public void setDataType(String dataType) {
-        this.dataType = dataType;
-    }
-
-    public String getMetadata() {
-        return metadata;
-    }
-
-    public void setMetadata(String metadata) {
-        this.metadata = metadata;
-    }
-
-    public String getAppArgument() {
-        return appArgument;
-    }
-
-    public void setAppArgument(String appArgument) {
-        this.appArgument = appArgument;
-    }
-
-    public String getUserFriendlyDesc() {
-        return userFriendlyDesc;
-    }
-
-    public void setUserFriendlyDesc(String userFriendlyDesc) {
-        this.userFriendlyDesc = userFriendlyDesc;
-    }
-
-    public ApplicationInterface getApplicationInterface() {
-        return applicationInterface;
-    }
-
-    public void setApplicationInterface(ApplicationInterface applicationInterface) {
-        this.applicationInterface = applicationInterface;
-    }
-
-    public boolean isStandardInput() {
-        return standardInput;
-    }
-
-    public void setStandardInput(boolean standardInput) {
-        this.standardInput = standardInput;
-    }
-
-    public int getInputOrder() {
-        return inputOrder;
-    }
-
-    public void setInputOrder(int inputOrder) {
-        this.inputOrder = inputOrder;
-    }
-
-    public boolean isRequired() {
-        return isRequired;
-    }
-
-    public void setRequired(boolean isRequired) {
-        this.isRequired = isRequired;
-    }
-
-    public boolean isRequiredToCMD() {
-        return requiredToCMD;
-    }
-
-    public void setRequiredToCMD(boolean requiredToCMD) {
-        this.requiredToCMD = requiredToCMD;
-    }
-
-    public boolean isDataStaged() {
-        return dataStaged;
-    }
-
-    public void setDataStaged(boolean dataStaged) {
-        this.dataStaged = dataStaged;
-    }
-
-
-    public boolean isReadOnly() {
-        return isReadOnly;
-    }
-
-    public void setReadOnly(boolean isReadOnly) {
-        this.isReadOnly = isReadOnly;
-    }
-}
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/ApplicationIntOutput.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/ApplicationIntOutput.java
deleted file mode 100644
index dc2a337..0000000
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/ApplicationIntOutput.java
+++ /dev/null
@@ -1,154 +0,0 @@
-/**
- *
- * 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.airavata.registry.core.app.catalog.model;
-
-
-import javax.persistence.*;
-import java.io.Serializable;
-
-@Entity
-@Table(name = "APPLICATION_OUTPUT")
-@IdClass(AppOutput_PK.class)
-public class ApplicationIntOutput implements Serializable {
-    @Id
-    @Column(name = "INTERFACE_ID")
-    private String interfaceID;
-    @Id
-    @Column(name = "OUTPUT_KEY")
-    private String outputKey;
-    @Column(name = "OUTPUT_VALUE")
-    private String outputVal;
-    @Column(name = "DATA_TYPE")
-    private String dataType;
-    @Column(name = "IS_REQUIRED")
-    private boolean isRequired;
-    @Column(name="REQUIRED_TO_COMMANDLINE")
-    private boolean requiredToCMD;
-    @Column(name = "DATA_MOVEMENT")
-    private boolean dataMovement;
-    @Column(name = "DATA_NAME_LOCATION")
-    private String dataNameLocation;
-    @Column(name = "SEARCH_QUERY")
-    private String searchQuery;
-    @Column(name = "APP_ARGUMENT")
-    private String applicationArgument;
-    @Column(name = "OUTPUT_STREAMING")
-    private boolean outputStreaming;
-
-    @ManyToOne(cascade= CascadeType.MERGE)
-    @JoinColumn(name = "INTERFACE_ID")
-    private ApplicationInterface applicationInterface;
-
-    public String getInterfaceID() {
-        return interfaceID;
-    }
-
-    public void setInterfaceID(String interfaceID) {
-        this.interfaceID = interfaceID;
-    }
-
-    public String getDataType() {
-        return dataType;
-    }
-
-    public void setDataType(String dataType) {
-        this.dataType = dataType;
-    }
-
-    public ApplicationInterface getApplicationInterface() {
-        return applicationInterface;
-    }
-
-    public void setApplicationInterface(ApplicationInterface applicationInterface) {
-        this.applicationInterface = applicationInterface;
-    }
-
-    public String getOutputKey() {
-        return outputKey;
-    }
-
-    public void setOutputKey(String outputKey) {
-        this.outputKey = outputKey;
-    }
-
-    public String getOutputVal() {
-        return outputVal;
-    }
-
-    public void setOutputVal(String outputVal) {
-        this.outputVal = outputVal;
-    }
-
-    public boolean isRequired() {
-        return isRequired;
-    }
-
-    public void setRequired(boolean isRequired) {
-        this.isRequired = isRequired;
-    }
-
-    public boolean isRequiredToCMD() {
-        return requiredToCMD;
-    }
-
-    public void setRequiredToCMD(boolean requiredToCMD) {
-        this.requiredToCMD = requiredToCMD;
-    }
-
-    public boolean isDataMovement() {
-        return dataMovement;
-    }
-
-    public void setDataMovement(boolean dataMovement) {
-        this.dataMovement = dataMovement;
-    }
-
-    public String getDataNameLocation() {
-        return dataNameLocation;
-    }
-
-    public void setDataNameLocation(String dataNameLocation) {
-        this.dataNameLocation = dataNameLocation;
-    }
-
-    public String getSearchQuery() {
-        return searchQuery;
-    }
-
-    public void setSearchQuery(String searchQuery) {
-        this.searchQuery = searchQuery;
-    }
-
-    public String getApplicationArgument() {
-        return applicationArgument;
-    }
-
-    public void setApplicationArgument(String applicationArgument) {
-        this.applicationArgument = applicationArgument;
-    }
-
-    public boolean isOutputStreaming() {
-        return outputStreaming;
-    }
-
-    public void setOutputStreaming(boolean outputStreaming) {
-        this.outputStreaming = outputStreaming;
-    }
-}
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/ApplicationInterface.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/ApplicationInterface.java
deleted file mode 100644
index a4ce9d7..0000000
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/ApplicationInterface.java
+++ /dev/null
@@ -1,114 +0,0 @@
-/**
- *
- * 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.airavata.registry.core.app.catalog.model;
-
-import javax.persistence.Column;
-import javax.persistence.Entity;
-import javax.persistence.Id;
-import javax.persistence.Table;
-import java.io.Serializable;
-import java.sql.Timestamp;
-
-@Entity
-@Table(name = "APPLICATION_INTERFACE")
-public class ApplicationInterface implements Serializable {
-    @Id
-    @Column(name = "INTERFACE_ID")
-    private String interfaceID;
-    @Column(name = "APPLICATION_NAME")
-    private String appName;
-    @Column(name = "APPLICATION_DESCRIPTION")
-    private String appDescription;
-    @Column(name = "CREATION_TIME")
-    private Timestamp creationTime;
-    @Column(name = "GATEWAY_ID")
-    private String gatewayId;
-    @Column(name = "ARCHIVE_WORKING_DIRECTORY")
-    private boolean archiveWorkingDirectory;
-    @Column(name = "HAS_OPTIONAL_FILE_INPUTS")
-    private boolean hasOptionalFileInputs;
-    @Column(name = "UPDATE_TIME")
-    private Timestamp updateTime;
-
-    public String getGatewayId() {
-        return gatewayId;
-    }
-
-    public void setGatewayId(String gatewayId) {
-        this.gatewayId = gatewayId;
-    }
-
-    public boolean isArchiveWorkingDirectory() {
-        return archiveWorkingDirectory;
-    }
-
-    public void setArchiveWorkingDirectory(boolean archiveWorkingDirectory) {
-        this.archiveWorkingDirectory = archiveWorkingDirectory;
-    }
-
-    public Timestamp getCreationTime() {
-        return creationTime;
-    }
-
-    public void setCreationTime(Timestamp creationTime) {
-        this.creationTime = creationTime;
-    }
-
-    public Timestamp getUpdateTime() {
-        return updateTime;
-    }
-
-    public void setUpdateTime(Timestamp updateTime) {
-        this.updateTime = updateTime;
-    }
-
-
-    public String getInterfaceID() {
-        return interfaceID;
-    }
-
-    public void setInterfaceID(String interfaceID) {
-        this.interfaceID = interfaceID;
-    }
-
-    public String getAppName() {
-        return appName;
-    }
-
-    public void setAppName(String appName) {
-        this.appName = appName;
-    }
-
-    public String getAppDescription() {
-        return appDescription;
-    }
-
-    public void setAppDescription(String appDescription) {
-        this.appDescription = appDescription;
-    }
-
-    public boolean isHasOptionalFileInputs() {
-        return hasOptionalFileInputs;
-    }
-
-    public void setHasOptionalFileInputs(boolean hasOptionalFileInputs) {
-        this.hasOptionalFileInputs = hasOptionalFileInputs;
-    }
-}
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/ApplicationModule.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/ApplicationModule.java
deleted file mode 100644
index 98b3ee6..0000000
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/ApplicationModule.java
+++ /dev/null
@@ -1,105 +0,0 @@
-/**
- *
- * 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.airavata.registry.core.app.catalog.model;
-
-import javax.persistence.Column;
-import javax.persistence.Entity;
-import javax.persistence.Id;
-import javax.persistence.Table;
-import java.io.Serializable;
-import java.sql.Timestamp;
-
-@Entity
-@Table(name = "APPLICATION_MODULE")
-public class ApplicationModule implements Serializable {
-    @Id
-    @Column(name = "MODULE_ID")
-    private String moduleID;
-    @Column(name = "MODULE_NAME")
-    private String moduleName;
-    @Column(name = "MODULE_VERSION")
-    private String moduleVersion;
-    @Column(name = "MODULE_DESC")
-    private String moduleDesc;
-    @Column(name = "CREATION_TIME")
-    private Timestamp creationTime;
-    @Column(name = "GATEWAY_ID")
-    private String gatewayId;
-
-    @Column(name = "UPDATE_TIME")
-    private Timestamp updateTime;
-
-    public Timestamp getCreationTime() {
-        return creationTime;
-    }
-
-    public void setCreationTime(Timestamp creationTime) {
-        this.creationTime = creationTime;
-    }
-
-    public Timestamp getUpdateTime() {
-        return updateTime;
-    }
-
-    public void setUpdateTime(Timestamp updateTime) {
-        this.updateTime = updateTime;
-    }
-
-
-    public String getModuleID() {
-        return moduleID;
-    }
-
-    public void setModuleID(String moduleID) {
-        this.moduleID = moduleID;
-    }
-
-    public String getModuleName() {
-        return moduleName;
-    }
-
-    public void setModuleName(String moduleName) {
-        this.moduleName = moduleName;
-    }
-
-    public String getModuleVersion() {
-        return moduleVersion;
-    }
-
-    public void setModuleVersion(String moduleVersion) {
-        this.moduleVersion = moduleVersion;
-    }
-
-    public String getModuleDesc() {
-        return moduleDesc;
-    }
-
-    public void setModuleDesc(String moduleDesc) {
-        this.moduleDesc = moduleDesc;
-    }
-
-    public String getGatewayId() {
-        return gatewayId;
-    }
-
-    public void setGatewayId(String gatewayId) {
-        this.gatewayId = gatewayId;
-    }
-}
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/BatchQueue.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/BatchQueue.java
deleted file mode 100644
index 1bd9a9b..0000000
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/BatchQueue.java
+++ /dev/null
@@ -1,197 +0,0 @@
-/**
- *
- * 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.airavata.registry.core.app.catalog.model;
-
-import javax.persistence.*;
-import java.io.Serializable;
-
-@Entity
-@Table(name = "BATCH_QUEUE")
-@IdClass(BatchQueue_PK.class)
-public class BatchQueue implements Serializable {
-	
-	@Id
-	@Column(name = "COMPUTE_RESOURCE_ID")
-	private String computeResourceId;
-	
-	@ManyToOne(cascade= CascadeType.MERGE)
-	@JoinColumn(name = "COMPUTE_RESOURCE_ID")
-	private ComputeResource computeResource;
-	
-	@Column(name = "MAX_RUNTIME")
-	private int maxRuntime;
-	
-	@Column(name = "MAX_JOB_IN_QUEUE")
-	private int maxJobInQueue;
-	
-	@Column(name = "QUEUE_DESCRIPTION")
-	private String queueDescription;
-	
-	@Id
-	@Column(name = "QUEUE_NAME")
-	private String queueName;
-	
-	@Column(name = "MAX_PROCESSORS")
-	private int maxProcessors;
-	
-	@Column(name = "MAX_NODES")
-	private int maxNodes;
-
-    @Column(name = "MAX_MEMORY")
-    private int maxMemory;
-
-	@Column(name = "CPU_PER_NODE")
-	private int cpuPerNode;
-
-	@Column(name = "DEFAULT_NODE_COUNT")
-	private int defaultNodeCount;
-
-	@Column(name = "DEFAULT_CPU_COUNT")
-	private int defaultCPUCount;
-
-	@Column(name = "DEFAULT_WALLTIME")
-	private int defaultWalltime;
-
-	@Column(name = "QUEUE_SPECIFIC_MACROS")
-	private String queueSpecificMacros;
-
-	@Column(name = "IS_DEFAULT_QUEUE")
-	private boolean isDefaultQueue;
-
-    public int getMaxMemory() {
-        return maxMemory;
-    }
-
-    public void setMaxMemory(int maxMemory) {
-        this.maxMemory = maxMemory;
-    }
-
-    public String getComputeResourceId() {
-		return computeResourceId;
-	}
-	
-	public ComputeResource getComputeResource() {
-		return computeResource;
-	}
-	
-	public int getMaxRuntime() {
-		return maxRuntime;
-	}
-	
-	public int getMaxJobInQueue() {
-		return maxJobInQueue;
-	}
-	
-	public String getQueueDescription() {
-		return queueDescription;
-	}
-	
-	public String getQueueName() {
-		return queueName;
-	}
-	
-	public int getMaxProcessors() {
-		return maxProcessors;
-	}
-	
-	public int getMaxNodes() {
-		return maxNodes;
-	}
-	
-	public void setComputeResourceId(String computeResourceId) {
-		this.computeResourceId=computeResourceId;
-	}
-	
-	public void setComputeResource(ComputeResource computeResource) {
-		this.computeResource=computeResource;
-	}
-	
-	public void setMaxRuntime(int maxRuntime) {
-		this.maxRuntime=maxRuntime;
-	}
-	
-	public void setMaxJobInQueue(int maxJobInQueue) {
-		this.maxJobInQueue=maxJobInQueue;
-	}
-	
-	public void setQueueDescription(String queueDescription) {
-		this.queueDescription=queueDescription;
-	}
-	
-	public void setQueueName(String queueName) {
-		this.queueName=queueName;
-	}
-	
-	public void setMaxProcessors(int maxProcessors) {
-		this.maxProcessors=maxProcessors;
-	}
-	
-	public void setMaxNodes(int maxNodes) {
-		this.maxNodes=maxNodes;
-	}
-
-	public int getCpuPerNode() {
-		return cpuPerNode;
-	}
-
-	public void setCpuPerNode(int cpuPerNode) {
-		this.cpuPerNode = cpuPerNode;
-	}
-
-	public int getDefaultNodeCount() {
-		return defaultNodeCount;
-	}
-
-	public void setDefaultNodeCount(int defaultNodeCount) {
-		this.defaultNodeCount = defaultNodeCount;
-	}
-
-	public int getDefaultCPUCount() {
-		return defaultCPUCount;
-	}
-
-	public void setDefaultCPUCount(int defaultCPUCount) {
-		this.defaultCPUCount = defaultCPUCount;
-	}
-
-	public boolean getIsDefaultQueue() {
-		return isDefaultQueue;
-	}
-
-	public void setIsDefaultQueue(boolean isDefaultQueue) {
-		this.isDefaultQueue = isDefaultQueue;
-	}
-
-	public int getDefaultWalltime() {
-		return defaultWalltime;
-	}
-
-	public void setDefaultWalltime(int defaultWalltime) {
-		this.defaultWalltime = defaultWalltime;
-	}
-
-	public String getQueueSpecificMacros() {
-		return queueSpecificMacros;
-	}
-
-	public void setQueueSpecificMacros(String queueSpecificMacros) {
-		this.queueSpecificMacros = queueSpecificMacros;
-	}
-}
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/BatchQueue_PK.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/BatchQueue_PK.java
deleted file mode 100644
index 537408b..0000000
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/BatchQueue_PK.java
+++ /dev/null
@@ -1,61 +0,0 @@
-/**
- *
- * 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.airavata.registry.core.app.catalog.model;
-
-import java.io.Serializable;
-
-public class BatchQueue_PK implements Serializable {
-	private String computeResourceId;
-	private String queueName;
-	public BatchQueue_PK(String computeResourceId, String queueName){
-		this.computeResourceId = computeResourceId;
-		this.queueName = queueName;
-	}
-	
-	public BatchQueue_PK() {
-	}
-	
-	@Override
-	public boolean equals(Object o) {
-		return false;
-	}
-	
-	@Override
-	public int hashCode() {
-		return 1;
-	}
-	
-	public String getComputeResourceId() {
-		return computeResourceId;
-	}
-	
-	public String getQueueName() {
-		return queueName;
-	}
-	
-	public void setComputeResourceId(String computeResourceId) {
-		this.computeResourceId=computeResourceId;
-	}
-	
-	public void setQueueName(String queueName) {
-		this.queueName=queueName;
-	}
-}
-
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/CloudJobSubmission.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/CloudJobSubmission.java
deleted file mode 100644
index 6f39049..0000000
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/CloudJobSubmission.java
+++ /dev/null
@@ -1,101 +0,0 @@
-/**
- *
- * 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.airavata.registry.core.app.catalog.model;
-
-import javax.persistence.Column;
-import javax.persistence.Entity;
-import javax.persistence.Id;
-import javax.persistence.Table;
-import java.io.Serializable;
-
-@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/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/ComputeResource.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/ComputeResource.java
deleted file mode 100644
index 0ea0cea..0000000
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/ComputeResource.java
+++ /dev/null
@@ -1,187 +0,0 @@
-/**
- *
- * 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.airavata.registry.core.app.catalog.model;
-
-import javax.persistence.Column;
-import javax.persistence.Entity;
-import javax.persistence.Id;
-import javax.persistence.Table;
-import java.io.Serializable;
-import java.sql.Timestamp;
-
-@Entity
-@Table(name = "COMPUTE_RESOURCE")
-public class ComputeResource implements Serializable {
-	
-	@Column(name = "RESOURCE_DESCRIPTION")
-	private String resourceDescription;
-	
-	@Id
-	@Column(name = "RESOURCE_ID")
-	private String resourceId;
-	
-	@Column(name = "HOST_NAME")
-	private String hostName;
-
-    @Column(name = "MAX_MEMORY_NODE")
-    private int maxMemoryPerNode;
-
-    @Column(name = "CREATION_TIME")
-    private Timestamp creationTime;
-
-    @Column(name = "UPDATE_TIME")
-    private Timestamp updateTime;
-
-    @Column(name = "ENABLED")
-    private boolean enabled;
-
-    @Column(name = "GATEWAY_USAGE_REPORTING")
-    private boolean gatewayUsageReporting;
-
-    @Column(name = "GATEWAY_USAGE_MODULE_LOAD_CMD")
-    private String gatewayUsageModLoadCMD;
-
-    @Column(name = "GATEWAY_USAGE_EXECUTABLE")
-    private String gatewayUsageExec;
-
-    @Column(name = "CPUS_PER_NODE")
-    private Integer cpusPerNode;
-
-    @Column(name = "DEFAULT_NODE_COUNT")
-    private Integer defaultNodeCount;
-
-    @Column(name = "DEFAULT_CPU_COUNT")
-    private Integer defaultCPUCount;
-
-    @Column(name = "DEFAULT_WALLTIME")
-    private Integer defaultWalltime;
-
-    public Timestamp getCreationTime() {
-        return creationTime;
-    }
-
-    public void setCreationTime(Timestamp creationTime) {
-        this.creationTime = creationTime;
-    }
-
-    public Timestamp getUpdateTime() {
-        return updateTime;
-    }
-
-    public void setUpdateTime(Timestamp updateTime) {
-        this.updateTime = updateTime;
-    }
-
-    public String getResourceDescription() {
-		return resourceDescription;
-	}
-	
-	public String getResourceId() {
-		return resourceId;
-	}
-	
-	public String getHostName() {
-		return hostName;
-	}
-
-    public Boolean getEnabled() {
-        return enabled;
-    }
-
-    public void setEnabled(Boolean enabled) {
-        this.enabled = enabled;
-    }
-	
-	public void setResourceDescription(String resourceDescription) {
-		this.resourceDescription=resourceDescription;
-	}
-	
-	public void setResourceId(String resourceId) {
-		this.resourceId=resourceId;
-	}
-	
-	public void setHostName(String hostName) {
-		this.hostName=hostName;
-	}
-
-    public int getMaxMemoryPerNode() {
-        return maxMemoryPerNode;
-    }
-
-    public void setMaxMemoryPerNode(int maxMemoryPerNode) {
-        this.maxMemoryPerNode = maxMemoryPerNode;
-    }
-
-    public boolean isGatewayUsageReporting() {
-        return gatewayUsageReporting;
-    }
-
-    public void setGatewayUsageReporting(boolean gatewayUsageReporting) {
-        this.gatewayUsageReporting = gatewayUsageReporting;
-    }
-
-    public String getGatewayUsageModLoadCMD() {
-        return gatewayUsageModLoadCMD;
-    }
-
-    public void setGatewayUsageModLoadCMD(String gatewayUsageModLoadCMD) {
-        this.gatewayUsageModLoadCMD = gatewayUsageModLoadCMD;
-    }
-
-    public String getGatewayUsageExec() {
-        return gatewayUsageExec;
-    }
-
-    public void setGatewayUsageExec(String gatewayUsageExec) {
-        this.gatewayUsageExec = gatewayUsageExec;
-    }
-
-    public Integer getCpusPerNode() {
-        return cpusPerNode;
-    }
-
-    public void setCpusPerNode(Integer cpusPerNode) {
-        this.cpusPerNode = cpusPerNode;
-    }
-
-    public Integer getDefaultNodeCount() {
-        return defaultNodeCount;
-    }
-
-    public void setDefaultNodeCount(Integer defaultNodeCount) {
-        this.defaultNodeCount = defaultNodeCount;
-    }
-
-    public Integer getDefaultCPUCount() {
-        return defaultCPUCount;
-    }
-
-    public void setDefaultCPUCount(Integer defaultCPUCount) {
-        this.defaultCPUCount = defaultCPUCount;
-    }
-
-    public Integer getDefaultWalltime() {
-        return defaultWalltime;
-    }
-
-    public void setDefaultWalltime(Integer defaultWalltime) {
-        this.defaultWalltime = defaultWalltime;
-    }
-}
\ No newline at end of file
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/ComputeResourceFileSystem.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/ComputeResourceFileSystem.java
deleted file mode 100644
index 461b8f0..0000000
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/ComputeResourceFileSystem.java
+++ /dev/null
@@ -1,85 +0,0 @@
-/**
- *
- * 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.airavata.registry.core.app.catalog.model;
-
-import java.io.Serializable;
-
-import javax.persistence.CascadeType;
-import javax.persistence.Column;
-import javax.persistence.Entity;
-import javax.persistence.Id;
-import javax.persistence.IdClass;
-import javax.persistence.JoinColumn;
-import javax.persistence.ManyToOne;
-import javax.persistence.Table;
-
-
-@Entity
-@Table(name = "COMPUTE_RESOURCE_FILE_SYSTEM")
-@IdClass(ComputeResourceFileSystem_PK.class)
-public class ComputeResourceFileSystem implements Serializable {
-	
-	@Id
-	@Column(name = "COMPUTE_RESOURCE_ID")
-	private String computeResourceId;
-	
-	@ManyToOne(cascade= CascadeType.MERGE)
-	@JoinColumn(name = "COMPUTE_RESOURCE_ID")
-	private ComputeResource computeResource;
-	
-	@Column(name = "PATH")
-	private String path;
-	
-	@Id
-	@Column(name = "FILE_SYSTEM")
-	private String fileSystem;
-	
-	public String getComputeResourceId() {
-		return computeResourceId;
-	}
-	
-	public ComputeResource getComputeResource() {
-		return computeResource;
-	}
-	
-	public String getPath() {
-		return path;
-	}
-	
-	public String getFileSystem() {
-		return fileSystem;
-	}
-	
-	public void setComputeResourceId(String computeResourceId) {
-		this.computeResourceId=computeResourceId;
-	}
-	
-	public void setComputeResource(ComputeResource computeResource) {
-		this.computeResource=computeResource;
-	}
-	
-	public void setPath(String path) {
-		this.path=path;
-	}
-	
-	public void setFileSystem(String fileSystem) {
-		this.fileSystem=fileSystem;
-	}
-}
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/ComputeResourceFileSystem_PK.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/ComputeResourceFileSystem_PK.java
deleted file mode 100644
index 044a253..0000000
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/ComputeResourceFileSystem_PK.java
+++ /dev/null
@@ -1,60 +0,0 @@
-/**
- *
- * 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.airavata.registry.core.app.catalog.model;
-
-import java.io.Serializable;
-
-public class ComputeResourceFileSystem_PK implements Serializable {
-	private String computeResourceId;
-	private String fileSystem;
-	public ComputeResourceFileSystem_PK(String computeResourceId, String fileSystem){
-		this.computeResourceId = computeResourceId;
-		this.fileSystem = fileSystem;
-	}
-	
-	public ComputeResourceFileSystem_PK() {
-	}
-	
-	@Override
-	public boolean equals(Object o) {
-		return false;
-	}
-	
-	@Override
-	public int hashCode() {
-		return 1;
-	}
-	
-	public String getComputeResourceId() {
-		return computeResourceId;
-	}
-	
-	public String getFileSystem() {
-		return fileSystem;
-	}
-	
-	public void setComputeResourceId(String computeResourceId) {
-		this.computeResourceId=computeResourceId;
-	}
-	
-	public void setFileSystem(String fileSystem) {
-		this.fileSystem=fileSystem;
-	}
-}
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/ComputeResourcePreference.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/ComputeResourcePreference.java
deleted file mode 100644
index 67402f4..0000000
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/ComputeResourcePreference.java
+++ /dev/null
@@ -1,240 +0,0 @@
-/**
- *
- * 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.airavata.registry.core.app.catalog.model;
-
-
-import javax.persistence.*;
-import java.sql.Timestamp;
-import java.util.Collection;
-
-@Entity
-@Table(name = "COMPUTE_RESOURCE_PREFERENCE")
-@IdClass(ComputeResourcePreferencePK.class)
-public class ComputeResourcePreference {
-    @Id
-    @Column(name = "GATEWAY_ID")
-    private String gatewayId;
-    @Id
-    @Column(name = "RESOURCE_ID")
-    private String resourceId;
-    @Column(name = "OVERRIDE_BY_AIRAVATA")
-    private boolean overrideByAiravata;
-    @Column(name = "PREFERED_JOB_SUB_PROTOCOL")
-    private String preferedJobSubmissionProtocol;
-    @Column(name = "PREFERED_DATA_MOVE_PROTOCOL")
-    private String preferedDataMoveProtocol;
-    @Column(name = "PREFERED_BATCH_QUEUE")
-    private String batchQueue;
-    @Column(name = "SCRATCH_LOCATION")
-    private String scratchLocation;
-    @Column(name = "ALLOCATION_PROJECT_NUMBER")
-    private String projectNumber;
-    @Column(name = "LOGIN_USERNAME")
-    private String loginUserName;
-    @Column(name = "RESOURCE_CS_TOKEN")
-    private String computeResourceCSToken;
-    @Column(name = "USAGE_REPORTING_GATEWAY_ID")
-    private String usageReportingGWId;
-    @Column(name = "QUALITY_OF_SERVICE")
-    private String qualityOfService;
-    @Column(name = "RESERVATION")
-    private String reservation;
-    @Column(name = "RESERVATION_START_TIME")
-    private Timestamp reservationStartTime;
-    @Column(name = "RESERVATION_END_TIME")
-    private Timestamp reservationEndTime;
-    @Column(name = "SSH_ACCOUNT_PROVISIONER")
-    private String sshAccountProvisioner;
-    @Column(name = "SSH_ACCOUNT_PROVISIONER_ADDITIONAL_INFO")
-    private String sshAccountProvisionerAdditionalInfo;
-
-
-    @ManyToOne(cascade= CascadeType.MERGE)
-    @JoinColumn(name = "RESOURCE_ID")
-    private ComputeResource computeHostResource;
-
-    @ManyToOne(cascade= CascadeType.MERGE)
-    @JoinColumn(name = "GATEWAY_ID")
-    private GatewayProfile gatewayProfile;
-
-    @OneToMany(mappedBy = "computeResourcePreference", cascade = CascadeType.ALL, orphanRemoval = true)
-    Collection<SSHAccountProvisionerConfiguration> sshAccountProvisionerConfigurations;
-
-
-    public String getGatewayId() {
-        return gatewayId;
-    }
-
-    public void setGatewayId(String gatewayId) {
-        this.gatewayId = gatewayId;
-    }
-
-    public String getResourceId() {
-        return resourceId;
-    }
-
-    public void setResourceId(String resourceId) {
-        this.resourceId = resourceId;
-    }
-
-    public boolean isOverrideByAiravata() {
-        return overrideByAiravata;
-    }
-
-    public void setOverrideByAiravata(boolean overrideByAiravata) {
-        this.overrideByAiravata = overrideByAiravata;
-    }
-
-    public String getPreferedJobSubmissionProtocol() {
-        return preferedJobSubmissionProtocol;
-    }
-
-    public void setPreferedJobSubmissionProtocol(String preferedJobSubmissionProtocol) {
-        this.preferedJobSubmissionProtocol = preferedJobSubmissionProtocol;
-    }
-
-    public String getPreferedDataMoveProtocol() {
-        return preferedDataMoveProtocol;
-    }
-
-    public void setPreferedDataMoveProtocol(String preferedDataMoveProtocol) {
-        this.preferedDataMoveProtocol = preferedDataMoveProtocol;
-    }
-
-    public String getBatchQueue() {
-        return batchQueue;
-    }
-
-    public void setBatchQueue(String batchQueue) {
-        this.batchQueue = batchQueue;
-    }
-
-    public String getScratchLocation() {
-        return scratchLocation;
-    }
-
-    public void setScratchLocation(String scratchLocation) {
-        this.scratchLocation = scratchLocation;
-    }
-
-    public String getProjectNumber() {
-        return projectNumber;
-    }
-
-    public void setProjectNumber(String projectNumber) {
-        this.projectNumber = projectNumber;
-    }
-
-    public ComputeResource getComputeHostResource() {
-        return computeHostResource;
-    }
-
-    public void setComputeHostResource(ComputeResource computeHostResource) {
-        this.computeHostResource = computeHostResource;
-    }
-
-    public GatewayProfile getGatewayProfile() {
-        return gatewayProfile;
-    }
-
-    public void setGatewayProfile(GatewayProfile gatewayProfile) {
-        this.gatewayProfile = gatewayProfile;
-    }
-
-    public String getLoginUserName() {
-        return loginUserName;
-    }
-
-    public void setLoginUserName(String loginUserName) {
-        this.loginUserName = loginUserName;
-    }
-
-    public String getComputeResourceCSToken() {
-        return computeResourceCSToken;
-    }
-
-    public void setComputeResourceCSToken(String computeResourceCSToken) {
-        this.computeResourceCSToken = computeResourceCSToken;
-    }
-
-    public String getUsageReportingGWId() {
-        return usageReportingGWId;
-    }
-
-    public void setUsageReportingGWId(String usageReportingGWId) {
-        this.usageReportingGWId = usageReportingGWId;
-    }
-
-    public String getQualityOfService() {
-        return qualityOfService;
-    }
-
-    public void setQualityOfService(String qualityOfService) {
-        this.qualityOfService = qualityOfService;
-    }
-
-    public String getReservation() {
-        return reservation;
-    }
-
-    public void setReservation(String reservation) {
-        this.reservation = reservation;
-    }
-
-    public Timestamp getReservationStartTime() {
-        return reservationStartTime;
-    }
-
-    public void setReservationStartTime(Timestamp reservationStratTime) {
-        this.reservationStartTime = reservationStratTime;
-    }
-
-    public Timestamp getReservationEndTime() {
-        return reservationEndTime;
-    }
-
-    public void setReservationEndTime(Timestamp reservationEndTime) {
-        this.reservationEndTime = reservationEndTime;
-    }
-
-    public String getSshAccountProvisioner() {
-        return sshAccountProvisioner;
-    }
-
-    public void setSshAccountProvisioner(String sshAccountProvisioner) {
-        this.sshAccountProvisioner = sshAccountProvisioner;
-    }
-
-    public Collection<SSHAccountProvisionerConfiguration> getSshAccountProvisionerConfigurations() {
-        return sshAccountProvisionerConfigurations;
-    }
-
-    public void setSshAccountProvisionerConfigurations(Collection<SSHAccountProvisionerConfiguration> sshAccountProvisionerConfigurations) {
-        this.sshAccountProvisionerConfigurations = sshAccountProvisionerConfigurations;
-    }
-
-    public String getSshAccountProvisionerAdditionalInfo() {
-        return sshAccountProvisionerAdditionalInfo;
-    }
-
-    public void setSshAccountProvisionerAdditionalInfo(String sshAccountProvisionerAdditionalInfo) {
-        this.sshAccountProvisionerAdditionalInfo = sshAccountProvisionerAdditionalInfo;
-    }
-}
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/ComputeResourcePreferencePK.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/ComputeResourcePreferencePK.java
deleted file mode 100644
index d9230dc..0000000
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/ComputeResourcePreferencePK.java
+++ /dev/null
@@ -1,62 +0,0 @@
-/**
- *
- * 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.airavata.registry.core.app.catalog.model;
-
-import java.io.Serializable;
-
-public class ComputeResourcePreferencePK implements Serializable {
-    private String gatewayId;
-    private String resourceId;
-
-    public ComputeResourcePreferencePK(String gatewayId, String resourceId) {
-        this.gatewayId = gatewayId;
-        this.resourceId = resourceId;
-    }
-
-    public ComputeResourcePreferencePK() {
-        ;
-    }
-
-    @Override
-    public boolean equals(Object o) {
-        return false;
-    }
-
-    @Override
-    public int hashCode() {
-        return 1;
-    }
-
-    public String getGatewayId() {
-        return gatewayId;
-    }
-
-    public void setGatewayId(String gatewayId) {
-        this.gatewayId = gatewayId;
-    }
-
-    public String getResourceId() {
-        return resourceId;
-    }
-
-    public void setResourceId(String resourceId) {
-        this.resourceId = resourceId;
-    }
-}
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/Configuration.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/Configuration.java
deleted file mode 100644
index 3a9cd70..0000000
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/Configuration.java
+++ /dev/null
@@ -1,72 +0,0 @@
-/**
- *
- * 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.
- */
-/*
-*
-* 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.airavata.registry.core.app.catalog.model;
-
-import javax.persistence.*;
-import java.io.Serializable;
-
-@Entity
-@Table(name ="CONFIGURATION")
-@IdClass(Configuration_PK.class)
-public class Configuration implements Serializable {
-    @Id
-    @Column(name = "CONFIG_KEY")
-    private String config_key;
-
-    @Id
-    @Column(name = "CONFIG_VAL")
-    private String config_val;
-
-    public String getConfig_key() {
-        return config_key;
-    }
-
-    public String getConfig_val() {
-        return config_val;
-    }
-
-    public void setConfig_key(String config_key) {
-        this.config_key = config_key;
-    }
-
-    public void setConfig_val(String config_val) {
-        this.config_val = config_val;
-    }
-}
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/Configuration_PK.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/Configuration_PK.java
deleted file mode 100644
index 8591239..0000000
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/Configuration_PK.java
+++ /dev/null
@@ -1,63 +0,0 @@
-/**
- *
- * 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.airavata.registry.core.app.catalog.model;
-
-import java.io.Serializable;
-
-public class Configuration_PK implements Serializable {
-    private String config_key;
-    private String config_val;
-
-    public Configuration_PK(String config_key, String config_val) {
-        this.config_key = config_key;
-        this.config_val = config_val;
-    }
-
-    public Configuration_PK() {
-        ;
-    }
-
-    @Override
-    public boolean equals(Object o) {
-        return false;
-    }
-
-    @Override
-    public int hashCode() {
-        return 1;
-    }
-
-    public String getConfig_key() {
-        return config_key;
-    }
-
-    public void setConfig_key(String config_key) {
-        this.config_key = config_key;
-    }
-
-    public void setConfig_val(String config_val) {
-        this.config_val = config_val;
-    }
-
-    public String getConfig_val() {
-        return config_val;
-    }
-
-}
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/DataMovementInterface.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/DataMovementInterface.java
deleted file mode 100644
index 29e75f5..0000000
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/DataMovementInterface.java
+++ /dev/null
@@ -1,119 +0,0 @@
-/**
- *
- * 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.airavata.registry.core.app.catalog.model;
-
-import java.io.Serializable;
-import java.sql.Timestamp;
-
-import javax.persistence.CascadeType;
-import javax.persistence.Column;
-import javax.persistence.Entity;
-import javax.persistence.Id;
-import javax.persistence.IdClass;
-import javax.persistence.JoinColumn;
-import javax.persistence.ManyToOne;
-import javax.persistence.Table;
-
-@Entity
-@Table(name = "DATA_MOVEMENT_INTERFACE")
-@IdClass(DataMovementInterface_PK.class)
-public class DataMovementInterface implements Serializable {
-	
-	@Id
-	@Column(name = "COMPUTE_RESOURCE_ID")
-	private String computeResourceId;
-	
-	@ManyToOne(cascade= CascadeType.MERGE)
-	@JoinColumn(name = "COMPUTE_RESOURCE_ID")
-	private ComputeResource computeResource;
-	
-	@Column(name = "DATA_MOVEMENT_PROTOCOL")
-	private String dataMovementProtocol;
-	
-	@Id
-	@Column(name = "DATA_MOVEMENT_INTERFACE_ID")
-	private String dataMovementInterfaceId;
-	
-	@Column(name = "PRIORITY_ORDER")
-	private int priorityOrder;
-
-    @Column(name = "CREATION_TIME")
-    private Timestamp creationTime;
-
-    @Column(name = "UPDATE_TIME")
-    private Timestamp updateTime;
-
-    public Timestamp getCreationTime() {
-        return creationTime;
-    }
-
-    public void setCreationTime(Timestamp creationTime) {
-        this.creationTime = creationTime;
-    }
-
-    public Timestamp getUpdateTime() {
-        return updateTime;
-    }
-
-    public void setUpdateTime(Timestamp updateTime) {
-        this.updateTime = updateTime;
-    }
-
-
-    public String getComputeResourceId() {
-		return computeResourceId;
-	}
-	
-	public ComputeResource getComputeResource() {
-		return computeResource;
-	}
-	
-	public String getDataMovementProtocol() {
-		return dataMovementProtocol;
-	}
-	
-	public String getDataMovementInterfaceId() {
-		return dataMovementInterfaceId;
-	}
-	
-	public int getPriorityOrder() {
-		return priorityOrder;
-	}
-	
-	public void setComputeResourceId(String computeResourceId) {
-		this.computeResourceId=computeResourceId;
-	}
-	
-	public void setComputeResource(ComputeResource computeResource) {
-		this.computeResource=computeResource;
-	}
-	
-	public void setDataMovementProtocol(String dataMovementProtocol) {
-		this.dataMovementProtocol=dataMovementProtocol;
-	}
-	
-	public void setDataMovementInterfaceId(String dataMovementInterfaceId) {
-		this.dataMovementInterfaceId=dataMovementInterfaceId;
-	}
-	
-	public void setPriorityOrder(int priorityOrder) {
-		this.priorityOrder=priorityOrder;
-	}
-}
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/DataMovementInterface_PK.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/DataMovementInterface_PK.java
deleted file mode 100644
index 8ff2df0..0000000
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/DataMovementInterface_PK.java
+++ /dev/null
@@ -1,60 +0,0 @@
-/**
- *
- * 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.airavata.registry.core.app.catalog.model;
-
-import java.io.Serializable;
-
-public class DataMovementInterface_PK implements Serializable {
-	private String computeResourceId;
-	private String dataMovementInterfaceId;
-	public DataMovementInterface_PK(String computeResourceId, String dataMovementInterfaceId){
-		this.computeResourceId = computeResourceId;
-		this.dataMovementInterfaceId = dataMovementInterfaceId;
-	}
-	
-	public DataMovementInterface_PK() {
-	}
-	
-	@Override
-	public boolean equals(Object o) {
-		return false;
-	}
-	
-	@Override
-	public int hashCode() {
-		return 1;
-	}
-	
-	public String getComputeResourceId() {
-		return computeResourceId;
-	}
-	
-	public String getDataMovementInterfaceId() {
-		return dataMovementInterfaceId;
-	}
-	
-	public void setComputeResourceId(String computeResourceId) {
-		this.computeResourceId=computeResourceId;
-	}
-	
-	public void setDataMovementInterfaceId(String dataMovementInterfaceId) {
-		this.dataMovementInterfaceId=dataMovementInterfaceId;
-	}
-}
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/DataStorageResource.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/DataStorageResource.java
deleted file mode 100644
index 5deec7c..0000000
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/DataStorageResource.java
+++ /dev/null
@@ -1,111 +0,0 @@
-/**
- *
- * 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.airavata.registry.core.app.catalog.model;
-
-import javax.persistence.*;
-import java.io.Serializable;
-import java.sql.Timestamp;
-
-@Entity
-@Table(name = "DATA_STORAGE_INTERFACE")
-@IdClass(StorageInterface_PK.class)
-public class DataStorageResource implements Serializable {
-	
-	@Id
-	@Column(name = "STORAGE_RESOURCE_ID")
-	private String computeResourceId;
-	
-	@ManyToOne(cascade= CascadeType.MERGE)
-	@JoinColumn(name = "COMPUTE_RESOURCE_ID")
-	private ComputeResource computeResource;
-	
-	@Column(name = "DATA_MOVEMENT_PROTOCOL")
-	private String dataMovementProtocol;
-	
-	@Id
-	@Column(name = "DATA_MOVEMENT_INTERFACE_ID")
-	private String dataMovementInterfaceId;
-	
-	@Column(name = "PRIORITY_ORDER")
-	private int priorityOrder;
-
-    @Column(name = "CREATION_TIME")
-    private Timestamp creationTime;
-
-    @Column(name = "UPDATE_TIME")
-    private Timestamp updateTime;
-
-    public Timestamp getCreationTime() {
-        return creationTime;
-    }
-
-    public void setCreationTime(Timestamp creationTime) {
-        this.creationTime = creationTime;
-    }
-
-    public Timestamp getUpdateTime() {
-        return updateTime;
-    }
-
-    public void setUpdateTime(Timestamp updateTime) {
-        this.updateTime = updateTime;
-    }
-
-
-    public String getComputeResourceId() {
-		return computeResourceId;
-	}
-	
-	public ComputeResource getComputeResource() {
-		return computeResource;
-	}
-	
-	public String getDataMovementProtocol() {
-		return dataMovementProtocol;
-	}
-	
-	public String getDataMovementInterfaceId() {
-		return dataMovementInterfaceId;
-	}
-	
-	public int getPriorityOrder() {
-		return priorityOrder;
-	}
-	
-	public void setComputeResourceId(String computeResourceId) {
-		this.computeResourceId=computeResourceId;
-	}
-	
-	public void setComputeResource(ComputeResource computeResource) {
-		this.computeResource=computeResource;
-	}
-	
-	public void setDataMovementProtocol(String dataMovementProtocol) {
-		this.dataMovementProtocol=dataMovementProtocol;
-	}
-	
-	public void setDataMovementInterfaceId(String dataMovementInterfaceId) {
-		this.dataMovementInterfaceId=dataMovementInterfaceId;
-	}
-	
-	public void setPriorityOrder(int priorityOrder) {
-		this.priorityOrder=priorityOrder;
-	}
-}
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/GSISSHExport.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/GSISSHExport.java
deleted file mode 100644
index 14cfe01..0000000
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/GSISSHExport.java
+++ /dev/null
@@ -1,71 +0,0 @@
-/**
- *
- * 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.airavata.registry.core.app.catalog.model;
-
-import java.io.Serializable;
-
-import javax.persistence.CascadeType;
-import javax.persistence.Column;
-import javax.persistence.Entity;
-import javax.persistence.Id;
-import javax.persistence.IdClass;
-import javax.persistence.JoinColumn;
-import javax.persistence.ManyToOne;
-import javax.persistence.Table;
-
-@Entity
-@Table(name = "GSISSH_EXPORT")
-@IdClass(GSISSHExportPK.class)
-public class GSISSHExport implements Serializable {
-    @Id
-    @Column(name = "SUBMISSION_ID")
-    private String submissionID;
-    @Id
-    @Column(name = "EXPORT")
-    private String export;
-
-    @ManyToOne(cascade= CascadeType.MERGE)
-    @JoinColumn(name = "SUBMISSION_ID")
-    private GSISSHSubmission gsisshJobSubmission;
-
-    public String getSubmissionID() {
-        return submissionID;
-    }
-
-    public void setSubmissionID(String submissionID) {
-        this.submissionID = submissionID;
-    }
-
-    public String getExport() {
-        return export;
-    }
-
-    public void setExport(String export) {
-        this.export = export;
-    }
-
-    public GSISSHSubmission getGsisshJobSubmission() {
-        return gsisshJobSubmission;
-    }
-
-    public void setGsisshJobSubmission(GSISSHSubmission gsisshJobSubmission) {
-        this.gsisshJobSubmission = gsisshJobSubmission;
-    }
-}
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/GSISSHExportPK.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/GSISSHExportPK.java
deleted file mode 100644
index b6f2b12..0000000
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/GSISSHExportPK.java
+++ /dev/null
@@ -1,62 +0,0 @@
-/**
- *
- * 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.airavata.registry.core.app.catalog.model;
-
-import java.io.Serializable;
-
-public class GSISSHExportPK implements Serializable {
-    private String submissionID;
-    private String export;
-
-    public GSISSHExportPK(String submissionID, String export) {
-        this.submissionID = submissionID;
-        this.export = export;
-    }
-
-    public GSISSHExportPK() {
-        ;
-    }
-
-    @Override
-    public boolean equals(Object o) {
-        return false;
-    }
-
-    @Override
-    public int hashCode() {
-        return 1;
-    }
-
-    public String getSubmissionID() {
-        return submissionID;
-    }
-
-    public void setSubmissionID(String submissionID) {
-        this.submissionID = submissionID;
-    }
-
-    public String getExport() {
-        return export;
-    }
-
-    public void setExport(String export) {
-        this.export = export;
-    }
-}
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/GSISSHSubmission.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/GSISSHSubmission.java
deleted file mode 100644
index 7f9cfa0..0000000
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/GSISSHSubmission.java
+++ /dev/null
@@ -1,80 +0,0 @@
-/**
- *
- * 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.airavata.registry.core.app.catalog.model;
-
-import javax.persistence.*;
-import java.io.Serializable;
-
-@Entity
-@Table(name = "GSISSH_SUBMISSION")
-public class GSISSHSubmission implements Serializable {
-    @Id
-    @Column(name = "SUBMISSION_ID")
-    private String submissionID;
-    @Column(name = "RESOURCE_JOB_MANAGER")
-    private String resourceJobManager;
-    @Column(name = "SSH_PORT")
-    private int sshPort;
-    @Column(name = "INSTALLED_PATH")
-    private String installedPath;
-    @Column(name = "MONITOR_MODE")
-    private String monitorMode;
-
-    public String getSubmissionID() {
-        return submissionID;
-    }
-
-    public void setSubmissionID(String submissionID) {
-        this.submissionID = submissionID;
-    }
-
-    public String getResourceJobManager() {
-        return resourceJobManager;
-    }
-
-    public void setResourceJobManager(String resourceJobManager) {
-        this.resourceJobManager = resourceJobManager;
-    }
-
-    public int getSshPort() {
-        return sshPort;
-    }
-
-    public void setSshPort(int sshPort) {
-        this.sshPort = sshPort;
-    }
-
-    public String getInstalledPath() {
-        return installedPath;
-    }
-
-    public void setInstalledPath(String installedPath) {
-        this.installedPath = installedPath;
-    }
-
-    public String getMonitorMode() {
-        return monitorMode;
-    }
-
-    public void setMonitorMode(String monitorMode) {
-        this.monitorMode = monitorMode;
-    }
-
-}
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/GatewayProfile.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/GatewayProfile.java
deleted file mode 100644
index 2fa9c5a..0000000
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/GatewayProfile.java
+++ /dev/null
@@ -1,98 +0,0 @@
-/**
- *
- * 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.airavata.registry.core.app.catalog.model;
-
-import javax.persistence.Column;
-import javax.persistence.Entity;
-import javax.persistence.Id;
-import javax.persistence.Table;
-import java.io.Serializable;
-import java.sql.Timestamp;
-
-@Entity
-@Table(name = "GATEWAY_PROFILE")
-public class GatewayProfile implements Serializable {
-    @Id
-    @Column(name = "GATEWAY_ID")
-    private String gatewayID;
-    @Column(name = "CREATION_TIME")
-    private Timestamp creationTime;
-
-    @Column(name = "UPDATE_TIME")
-    private Timestamp updateTime;
-
-    @Column(name = "CS_TOKEN")
-    private String credentialStoreToken;
-
-    @Column(name = "IDENTITY_SERVER_TENANT")
-    private String identityServerTenant;
-
-    @Column(name = "IDENTITY_SERVER_PWD_CRED_TOKEN")
-    private String identityServerPwdCredToken;
-
-    public Timestamp getCreationTime() {
-        return creationTime;
-    }
-
-    public void setCreationTime(Timestamp creationTime) {
-        this.creationTime = creationTime;
-    }
-
-    public Timestamp getUpdateTime() {
-        return updateTime;
-    }
-
-    public void setUpdateTime(Timestamp updateTime) {
-        this.updateTime = updateTime;
-    }
-
-
-    public String getGatewayID() {
-        return gatewayID;
-    }
-
-    public void setGatewayID(String gatewayID) {
-        this.gatewayID = gatewayID;
-    }
-
-    public String getCredentialStoreToken() {
-        return credentialStoreToken;
-    }
-
-    public void setCredentialStoreToken(String credentialStoreToken) {
-        this.credentialStoreToken = credentialStoreToken;
-    }
-
-    public String getIdentityServerTenant() {
-        return identityServerTenant;
-    }
-
-    public void setIdentityServerTenant(String identityServerTenant) {
-        this.identityServerTenant = identityServerTenant;
-    }
-
-    public String getIdentityServerPwdCredToken() {
-        return identityServerPwdCredToken;
-    }
-
-    public void setIdentityServerPwdCredToken(String identityServerPwdCredToken) {
-        this.identityServerPwdCredToken = identityServerPwdCredToken;
-    }
-}
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/GlobusGKEndPointPK.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/GlobusGKEndPointPK.java
deleted file mode 100644
index 181d0dd..0000000
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/GlobusGKEndPointPK.java
+++ /dev/null
@@ -1,62 +0,0 @@
-/**
- *
- * 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
... 58623 lines suppressed ...