You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airavata.apache.org by la...@apache.org on 2013/12/26 18:31:40 UTC

svn commit: r1553518 [1/15] - in /airavata/sandbox: orchestrator-service/ orchestrator/orchestrator-core/src/main/java/org/apache/airavata/orchestrator/core/ orchestrator/orchestrator-core/src/main/java/org/apache/airavata/orchestrator/core/context/ or...

Author: lahiru
Date: Thu Dec 26 17:31:35 2013
New Revision: 1553518

URL: http://svn.apache.org/r1553518
Log:
adding registry for changes.

Added:
    airavata/sandbox/orchestrator/orchestrator-core/src/main/resources/orchestrator.properties
    airavata/sandbox/registry/
    airavata/sandbox/registry/airavata-jpa-registry/
    airavata/sandbox/registry/airavata-jpa-registry/pom.xml
    airavata/sandbox/registry/airavata-jpa-registry/src/
    airavata/sandbox/registry/airavata-jpa-registry/src/main/
    airavata/sandbox/registry/airavata-jpa-registry/src/main/java/
    airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/
    airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/
    airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/
    airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/
    airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/
    airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/
    airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/JPAConstants.java
    airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/JPAResourceAccessor.java
    airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/Resource.java
    airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/ResourceType.java
    airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/ResourceUtils.java
    airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/impl/
    airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/impl/AiravataJPARegistry.java
    airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/
    airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Application_Descriptor.java
    airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Application_Descriptor_PK.java
    airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Configuration.java
    airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Configuration_PK.java
    airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Execution_Error.java
    airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Experiment.java
    airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Experiment_Data.java
    airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Experiment_Metadata.java
    airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/GFac_Job_Data.java
    airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/GFac_Job_Status.java
    airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Gateway.java
    airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Gateway_Worker.java
    airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Gateway_Worker_PK.java
    airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Gram_Data.java
    airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Gram_DataPK.java
    airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Host_Descriptor.java
    airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Host_Descriptor_PK.java
    airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Node_Data.java
    airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Node_DataPK.java
    airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Project.java
    airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Published_Workflow.java
    airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Published_Workflow_PK.java
    airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Service_Descriptor.java
    airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Service_Descriptor_PK.java
    airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/User_Workflow.java
    airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/User_Workflow_PK.java
    airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Users.java
    airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Workflow_Data.java
    airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/
    airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/AbstractResource.java
    airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/AiravataRegistryConnectionDataProviderImpl.java
    airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ApplicationDescriptorResource.java
    airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ConfigurationResource.java
    airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/DBC.java
    airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ExecutionErrorResource.java
    airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ExperimentDataResource.java
    airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ExperimentDataRetriever.java
    airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ExperimentMetadataResource.java
    airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ExperimentResource.java
    airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/GFacJobDataResource.java
    airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/GFacJobStatusResource.java
    airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/GatewayResource.java
    airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/GramDataResource.java
    airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/HostDescriptorResource.java
    airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/NodeDataResource.java
    airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ProjectResource.java
    airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/PublishWorkflowResource.java
    airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ServiceDescriptorResource.java
    airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/UserResource.java
    airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/UserWorkflowResource.java
    airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/Utils.java
    airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/WorkerResource.java
    airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/WorkflowDataResource.java
    airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/utils/
    airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/utils/QueryGenerator.java
    airavata/sandbox/registry/airavata-jpa-registry/src/main/resources/
    airavata/sandbox/registry/airavata-jpa-registry/src/main/resources/META-INF/
    airavata/sandbox/registry/airavata-jpa-registry/src/main/resources/META-INF/persistence.xml
    airavata/sandbox/registry/airavata-jpa-registry/src/main/resources/data-derby.sql
    airavata/sandbox/registry/airavata-jpa-registry/src/main/resources/data-mysql.sql
    airavata/sandbox/registry/airavata-jpa-registry/src/main/resources/provenance.sql
    airavata/sandbox/registry/airavata-jpa-registry/src/test/
    airavata/sandbox/registry/airavata-jpa-registry/src/test/java/
    airavata/sandbox/registry/airavata-jpa-registry/src/test/java/org/
    airavata/sandbox/registry/airavata-jpa-registry/src/test/java/org/apache/
    airavata/sandbox/registry/airavata-jpa-registry/src/test/java/org/apache/airavata/
    airavata/sandbox/registry/airavata-jpa-registry/src/test/java/org/apache/airavata/persistance/
    airavata/sandbox/registry/airavata-jpa-registry/src/test/java/org/apache/airavata/persistance/registry/
    airavata/sandbox/registry/airavata-jpa-registry/src/test/java/org/apache/airavata/persistance/registry/jpa/
    airavata/sandbox/registry/airavata-jpa-registry/src/test/java/org/apache/airavata/persistance/registry/jpa/AbstractResourceTest.java
    airavata/sandbox/registry/airavata-jpa-registry/src/test/java/org/apache/airavata/persistance/registry/jpa/ApplicationDescriptorResourceTest.java
    airavata/sandbox/registry/airavata-jpa-registry/src/test/java/org/apache/airavata/persistance/registry/jpa/ConfigurationResourceTest.java
    airavata/sandbox/registry/airavata-jpa-registry/src/test/java/org/apache/airavata/persistance/registry/jpa/ExecutionErrorResourceTest.java
    airavata/sandbox/registry/airavata-jpa-registry/src/test/java/org/apache/airavata/persistance/registry/jpa/ExperimentDataResourceTest.java
    airavata/sandbox/registry/airavata-jpa-registry/src/test/java/org/apache/airavata/persistance/registry/jpa/ExperimentMetadataResourceTest.java
    airavata/sandbox/registry/airavata-jpa-registry/src/test/java/org/apache/airavata/persistance/registry/jpa/ExperimentResourceTest.java
    airavata/sandbox/registry/airavata-jpa-registry/src/test/java/org/apache/airavata/persistance/registry/jpa/GFacJobDataResourceTest.java
    airavata/sandbox/registry/airavata-jpa-registry/src/test/java/org/apache/airavata/persistance/registry/jpa/GFacJobStatusResourceTest.java
    airavata/sandbox/registry/airavata-jpa-registry/src/test/java/org/apache/airavata/persistance/registry/jpa/GatewayResourceTest.java
    airavata/sandbox/registry/airavata-jpa-registry/src/test/java/org/apache/airavata/persistance/registry/jpa/GramDataResourceTest.java
    airavata/sandbox/registry/airavata-jpa-registry/src/test/java/org/apache/airavata/persistance/registry/jpa/HostDescriptorResourceTest.java
    airavata/sandbox/registry/airavata-jpa-registry/src/test/java/org/apache/airavata/persistance/registry/jpa/NodeDataResourceTest.java
    airavata/sandbox/registry/airavata-jpa-registry/src/test/java/org/apache/airavata/persistance/registry/jpa/PersistentDataTestSuite.java
    airavata/sandbox/registry/airavata-jpa-registry/src/test/java/org/apache/airavata/persistance/registry/jpa/ProjectResourceTest.java
    airavata/sandbox/registry/airavata-jpa-registry/src/test/java/org/apache/airavata/persistance/registry/jpa/PublishWorkflowResourceTest.java
    airavata/sandbox/registry/airavata-jpa-registry/src/test/java/org/apache/airavata/persistance/registry/jpa/ServiceDescriptorResourceTest.java
    airavata/sandbox/registry/airavata-jpa-registry/src/test/java/org/apache/airavata/persistance/registry/jpa/UserResourceTest.java
    airavata/sandbox/registry/airavata-jpa-registry/src/test/java/org/apache/airavata/persistance/registry/jpa/UserWorkflowResourceTest.java
    airavata/sandbox/registry/airavata-jpa-registry/src/test/java/org/apache/airavata/persistance/registry/jpa/WorkerResourceTest.java
    airavata/sandbox/registry/airavata-jpa-registry/src/test/java/org/apache/airavata/persistance/registry/jpa/WorkflowDataResourceTest.java
    airavata/sandbox/registry/airavata-jpa-registry/src/test/java/org/apache/airavata/persistance/registry/jpa/util/
    airavata/sandbox/registry/airavata-jpa-registry/src/test/java/org/apache/airavata/persistance/registry/jpa/util/Initialize.java
    airavata/sandbox/registry/airavata-jpa-registry/src/test/java/org/apache/airavata/provenance/
    airavata/sandbox/registry/airavata-jpa-registry/src/test/java/org/apache/airavata/provenance/test/
    airavata/sandbox/registry/airavata-jpa-registry/src/test/java/org/apache/airavata/provenance/test/JpaTest.java
    airavata/sandbox/registry/airavata-jpa-registry/src/test/resources/
    airavata/sandbox/registry/airavata-jpa-registry/src/test/resources/airavata-client.properties
    airavata/sandbox/registry/airavata-jpa-registry/src/test/resources/data-derby.sql
    airavata/sandbox/registry/airavata-registry-service/
    airavata/sandbox/registry/airavata-registry-service/pom.xml
    airavata/sandbox/registry/airavata-registry-service/src/
    airavata/sandbox/registry/airavata-registry-service/src/main/
    airavata/sandbox/registry/airavata-registry-service/src/main/java/
    airavata/sandbox/registry/airavata-registry-service/src/main/java/org/
    airavata/sandbox/registry/airavata-registry-service/src/main/java/org/apache/
    airavata/sandbox/registry/airavata-registry-service/src/main/java/org/apache/airavata/
    airavata/sandbox/registry/airavata-registry-service/src/main/java/org/apache/airavata/registry/
    airavata/sandbox/registry/airavata-registry-service/src/main/java/org/apache/airavata/registry/services/
    airavata/sandbox/registry/airavata-registry-service/src/main/java/org/apache/airavata/registry/services/ConfigurationRegistryService.java
    airavata/sandbox/registry/airavata-registry-service/src/main/java/org/apache/airavata/registry/services/DescriptorRegistryService.java
    airavata/sandbox/registry/airavata-registry-service/src/main/java/org/apache/airavata/registry/services/ProjectsRegistryService.java
    airavata/sandbox/registry/airavata-registry-service/src/main/java/org/apache/airavata/registry/services/ProvenanceRegistryService.java
    airavata/sandbox/registry/airavata-registry-service/src/main/java/org/apache/airavata/registry/services/PublishedWorkflowRegistryService.java
    airavata/sandbox/registry/airavata-registry-service/src/main/java/org/apache/airavata/registry/services/RegistryService.java
    airavata/sandbox/registry/airavata-registry-service/src/main/java/org/apache/airavata/registry/services/UserWorkflowRegistryService.java
    airavata/sandbox/registry/airavata-registry-service/src/main/java/org/apache/airavata/registry/services/utils/
    airavata/sandbox/registry/airavata-registry-service/src/main/java/org/apache/airavata/registry/services/utils/ConnectionPool.java
    airavata/sandbox/registry/airavata-registry-service/src/main/java/org/apache/airavata/registry/services/utils/DatabaseCreator.java
    airavata/sandbox/registry/airavata-registry-service/src/main/java/org/apache/airavata/registry/services/utils/JdbcStorage.java
    airavata/sandbox/registry/airavata-registry-service/src/main/resources/
    airavata/sandbox/registry/airavata-registry-service/src/main/resources/services.xml
    airavata/sandbox/registry/airavata-registry-test/
    airavata/sandbox/registry/airavata-registry-test/pom.xml
    airavata/sandbox/registry/airavata-registry-test/src/
    airavata/sandbox/registry/airavata-registry-test/src/main/
    airavata/sandbox/registry/airavata-registry-test/src/main/java/
    airavata/sandbox/registry/airavata-registry-test/src/main/resources/
    airavata/sandbox/registry/airavata-registry-test/src/test/
    airavata/sandbox/registry/airavata-registry-test/src/test/java/
    airavata/sandbox/registry/airavata-registry-test/src/test/java/org/
    airavata/sandbox/registry/airavata-registry-test/src/test/java/org/apache/
    airavata/sandbox/registry/airavata-registry-test/src/test/java/org/apache/airavata/
    airavata/sandbox/registry/airavata-registry-test/src/test/java/org/apache/airavata/registry/
    airavata/sandbox/registry/airavata-registry-test/src/test/java/org/apache/airavata/registry/api/
    airavata/sandbox/registry/airavata-registry-test/src/test/java/org/apache/airavata/registry/api/test/
    airavata/sandbox/registry/airavata-registry-test/src/test/java/org/apache/airavata/registry/api/test/AiravataRegistryAPITest.java
    airavata/sandbox/registry/airavata-registry-test/src/test/java/org/apache/airavata/registry/api/test/util/
    airavata/sandbox/registry/airavata-registry-test/src/test/java/org/apache/airavata/registry/api/test/util/Initialize.java
    airavata/sandbox/registry/airavata-registry-test/src/test/resources/
    airavata/sandbox/registry/airavata-registry-test/src/test/resources/airavata-client.properties
    airavata/sandbox/registry/airavata-registry-test/src/test/resources/data-derby.sql
    airavata/sandbox/registry/pom.xml
    airavata/sandbox/registry/registry-api/
    airavata/sandbox/registry/registry-api/pom.xml
    airavata/sandbox/registry/registry-api/src/
    airavata/sandbox/registry/registry-api/src/main/
    airavata/sandbox/registry/registry-api/src/main/java/
    airavata/sandbox/registry/registry-api/src/main/java/org/
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/AiravataExperiment.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/AiravataRegistry2.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/AiravataRegistryConnectionDataProvider.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/AiravataRegistryFactory.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/AiravataSubRegistry.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/AiravataUser.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/ConfigurationRegistry.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/CredentialRegistry.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/DataRegistry.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/DescriptorRegistry.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/ExecutionErrors.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/Gateway.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/PasswordCallback.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/ProjectsRegistry.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/ProvenanceRegistry.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/PublishedWorkflowRegistry.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/ResourceMetadata.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/UserRegistry.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/UserWorkflowRegistry.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/WorkspaceProject.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/exception/
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/exception/AiravataRegistryUninitializedException.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/exception/DeploymentDescriptionRetrieveException.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/exception/GatewayNotRegisteredException.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/exception/HostDescriptionRetrieveException.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/exception/RegistryAPIVersionIncompatibleException.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/exception/RegistryAccessorInstantiateException.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/exception/RegistryAccessorInvalidException.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/exception/RegistryAccessorNotFoundException.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/exception/RegistryAccessorUndefinedException.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/exception/RegistryException.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/exception/RegistrySettingsException.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/exception/RegistrySettingsLoadException.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/exception/ServiceDescriptionRetrieveException.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/exception/UnimplementedRegistryOperationException.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/exception/UnknownRegistryConnectionDataException.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/exception/UnspecifiedRegistrySettingsException.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/exception/gateway/
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/exception/gateway/DescriptorAlreadyExistsException.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/exception/gateway/DescriptorDoesNotExistsException.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/exception/gateway/InsufficientDataException.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/exception/gateway/MalformedDescriptorException.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/exception/gateway/PublishedWorkflowAlreadyExistsException.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/exception/gateway/PublishedWorkflowDoesNotExistsException.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/exception/worker/
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/exception/worker/ApplicationJobAlreadyExistsException.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/exception/worker/ApplicationJobDoesNotExistsException.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/exception/worker/ExperimentAlreadyExistsException.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/exception/worker/ExperimentDoesNotExistsException.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/exception/worker/ExperimentLazyLoadedException.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/exception/worker/InvalidApplicationJobIDException.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/exception/worker/UserWorkflowAlreadyExistsException.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/exception/worker/UserWorkflowDoesNotExistsException.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/exception/worker/WorkflowInstanceAlreadyExistsException.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/exception/worker/WorkflowInstanceDoesNotExistsException.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/exception/worker/WorkflowInstanceNodeAlreadyExistsException.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/exception/worker/WorkflowInstanceNodeDoesNotExistsException.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/exception/worker/WorkspaceProjectAlreadyExistsException.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/exception/worker/WorkspaceProjectDoesNotExistsException.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/impl/
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/impl/ExperimentDataImpl.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/impl/WorkflowExecutionDataImpl.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/util/
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/util/RegistryConstants.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/util/RegistrySettings.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/util/RegistryUtils.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/util/WebServiceUtil.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/workflow/
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/workflow/ApplicationJob.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/workflow/ApplicationJobExecutionError.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/workflow/ApplicationJobStatusData.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/workflow/ExecutionError.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/workflow/ExperimentData.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/workflow/ExperimentExecutionError.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/workflow/ExperimentMetadata.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/workflow/ExperimentName.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/workflow/ExperimentUser.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/workflow/InputData.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/workflow/NodeExecutionData.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/workflow/NodeExecutionError.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/workflow/NodeExecutionStatus.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/workflow/OutputData.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/workflow/WorkflowExecution.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/workflow/WorkflowExecutionData.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/workflow/WorkflowExecutionError.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/workflow/WorkflowExecutionStatus.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/workflow/WorkflowIOData.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/workflow/WorkflowInstanceNode.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/workflow/WorkflowInstanceNodePortData.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/workflow/WorkflowNodeGramData.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/workflow/WorkflowNodeIOData.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/workflow/WorkflowNodeType.java
    airavata/sandbox/registry/registry-api/src/main/java/org/apache/airavata/registry/api/workflow/WorkflowRunTimeData.java
    airavata/sandbox/registry/registry-api/src/main/resources/
    airavata/sandbox/registry/registry-api/src/test/
    airavata/sandbox/registry/registry-api/src/test/java/
    airavata/sandbox/registry/registry-api/src/test/java/org/
    airavata/sandbox/registry/registry-api/src/test/java/org/apache/
    airavata/sandbox/registry/registry-api/src/test/java/org/apache/airavata/
    airavata/sandbox/registry/registry-api/src/test/java/org/apache/airavata/registry/
    airavata/sandbox/registry/registry-api/src/test/java/org/apache/airavata/registry/api/
    airavata/sandbox/registry/registry-api/src/test/java/org/apache/airavata/registry/api/impl/
Removed:
    airavata/sandbox/orchestrator-service/
Modified:
    airavata/sandbox/orchestrator/orchestrator-core/src/main/java/org/apache/airavata/orchestrator/core/JobRequest.java
    airavata/sandbox/orchestrator/orchestrator-core/src/main/java/org/apache/airavata/orchestrator/core/context/OrchestratorContext.java

Modified: airavata/sandbox/orchestrator/orchestrator-core/src/main/java/org/apache/airavata/orchestrator/core/JobRequest.java
URL: http://svn.apache.org/viewvc/airavata/sandbox/orchestrator/orchestrator-core/src/main/java/org/apache/airavata/orchestrator/core/JobRequest.java?rev=1553518&r1=1553517&r2=1553518&view=diff
==============================================================================
--- airavata/sandbox/orchestrator/orchestrator-core/src/main/java/org/apache/airavata/orchestrator/core/JobRequest.java (original)
+++ airavata/sandbox/orchestrator/orchestrator-core/src/main/java/org/apache/airavata/orchestrator/core/JobRequest.java Thu Dec 26 17:31:35 2013
@@ -21,4 +21,5 @@
 package org.apache.airavata.orchestrator.core;
 
 public class JobRequest {
+
 }

Modified: airavata/sandbox/orchestrator/orchestrator-core/src/main/java/org/apache/airavata/orchestrator/core/context/OrchestratorContext.java
URL: http://svn.apache.org/viewvc/airavata/sandbox/orchestrator/orchestrator-core/src/main/java/org/apache/airavata/orchestrator/core/context/OrchestratorContext.java?rev=1553518&r1=1553517&r2=1553518&view=diff
==============================================================================
--- airavata/sandbox/orchestrator/orchestrator-core/src/main/java/org/apache/airavata/orchestrator/core/context/OrchestratorContext.java (original)
+++ airavata/sandbox/orchestrator/orchestrator-core/src/main/java/org/apache/airavata/orchestrator/core/context/OrchestratorContext.java Thu Dec 26 17:31:35 2013
@@ -22,10 +22,21 @@ package org.apache.airavata.orchestrator
 
 import org.apache.airavata.orchestrator.core.gfac.GFACInstance;
 
+import java.util.ArrayList;
 import java.util.List;
 
 public class OrchestratorContext {
     private List<GFACInstance> gfacInstanceList;
 
+    public OrchestratorContext(List<GFACInstance> gfacInstanceList) {
+        this.gfacInstanceList = new ArrayList<GFACInstance>();
+    }
 
+    public List<GFACInstance> getGfacInstanceList() {
+        return gfacInstanceList;
+    }
+
+    public void addGfacInstanceList(GFACInstance instance) {
+        this.gfacInstanceList.add(instance);
+    }
 }

Added: airavata/sandbox/orchestrator/orchestrator-core/src/main/resources/orchestrator.properties
URL: http://svn.apache.org/viewvc/airavata/sandbox/orchestrator/orchestrator-core/src/main/resources/orchestrator.properties?rev=1553518&view=auto
==============================================================================
    (empty)

Added: airavata/sandbox/registry/airavata-jpa-registry/pom.xml
URL: http://svn.apache.org/viewvc/airavata/sandbox/registry/airavata-jpa-registry/pom.xml?rev=1553518&view=auto
==============================================================================
--- airavata/sandbox/registry/airavata-jpa-registry/pom.xml (added)
+++ airavata/sandbox/registry/airavata-jpa-registry/pom.xml Thu Dec 26 17:31:35 2013
@@ -0,0 +1,129 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--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. -->
+
+<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">
+
+    <parent>
+        <groupId>org.apache.airavata</groupId>
+        <artifactId>registry</artifactId>
+        <version>0.12-SNAPSHOT</version>
+        <relativePath>../pom.xml</relativePath>
+    </parent>
+
+    <modelVersion>4.0.0</modelVersion>
+    <artifactId>airavata-jpa-registry</artifactId>
+    <packaging>jar</packaging>
+    <name>Airavata JPA Registry</name>
+    <url>http://airavata.apache.org/</url>
+
+    <dependencies>
+        <dependency>
+            <groupId>org.slf4j</groupId>
+            <artifactId>slf4j-api</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.airavata</groupId>
+            <artifactId>airavata-gfac-schema-utils</artifactId>
+            <version>${project.version}</version>
+        </dependency>
+        <!--dependency>
+            <groupId>org.apache.airavata</groupId>
+            <artifactId>airavata-common-utils</artifactId>
+            <version>${project.version}</version>
+        </dependency-->
+        <!-- Test -->
+        <dependency>
+            <groupId>junit</groupId>
+            <artifactId>junit</artifactId>
+            <scope>test</scope>
+        </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-all</artifactId>
+        	<version>2.2.0</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.airavata</groupId>
+            <artifactId>airavata-registry-api</artifactId>
+            <version>${project.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.airavata</groupId>
+            <artifactId>airavata-credential-store</artifactId>
+            <version>${project.version}</version>
+        </dependency>
+        <!--dependency>
+            <groupId>mysql</groupId>
+            <artifactId>mysql-connector-java</artifactId>
+            <version>5.1.6</version>
+        </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>
+            <scope>test</scope>
+        </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>
+        </plugins>
+    </build>
+
+</project>

Added: airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/JPAConstants.java
URL: http://svn.apache.org/viewvc/airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/JPAConstants.java?rev=1553518&view=auto
==============================================================================
--- airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/JPAConstants.java (added)
+++ airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/JPAConstants.java Thu Dec 26 17:31:35 2013
@@ -0,0 +1,32 @@
+/*
+ *
+ * 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.persistance.registry.jpa;
+
+public class JPAConstants {
+	public static final String KEY_JDBC_URL = "registry.jdbc.url";
+	public static final String KEY_JDBC_USER = "registry.jdbc.user";
+	public static final String KEY_JDBC_PASSWORD = "registry.jdbc.password";
+	public static final String KEY_JDBC_DRIVER = "registry.jdbc.driver";
+	public static final String KEY_DERBY_START_ENABLE = "start.derby.server.mode";
+    public static final String VALIDATION_QUERY = "validationQuery";
+    public static final String CONNECTION_JPA_PROPERTY = "jpa.connection.properties";
+}

Added: airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/JPAResourceAccessor.java
URL: http://svn.apache.org/viewvc/airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/JPAResourceAccessor.java?rev=1553518&view=auto
==============================================================================
--- airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/JPAResourceAccessor.java (added)
+++ airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/JPAResourceAccessor.java Thu Dec 26 17:31:35 2013
@@ -0,0 +1,49 @@
+/*
+ *
+ * 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.persistance.registry.jpa;
+
+import org.apache.airavata.persistance.registry.jpa.resources.GatewayResource;
+import org.apache.airavata.persistance.registry.jpa.resources.WorkerResource;
+import org.apache.airavata.registry.api.AiravataRegistry2;
+
+public class JPAResourceAccessor {
+	private AiravataRegistry2 registry=null;
+	private ResourceUtils resourceUtils = new ResourceUtils();
+
+	public JPAResourceAccessor(AiravataRegistry2 registry) {
+		this.registry=registry;
+	}
+	
+	public GatewayResource getGateway(){
+        GatewayResource gatewayResource = new GatewayResource();
+        gatewayResource.setGatewayName(this.registry.getGateway().getGatewayName());
+		return gatewayResource;
+	}
+	
+	public ResourceUtils root(){
+		return resourceUtils;
+	}
+	
+	public WorkerResource getWorker(){
+        return new WorkerResource(registry.getUser().getUserName(), getGateway());
+	}
+}

Added: airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/Resource.java
URL: http://svn.apache.org/viewvc/airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/Resource.java?rev=1553518&view=auto
==============================================================================
--- airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/Resource.java (added)
+++ airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/Resource.java Thu Dec 26 17:31:35 2013
@@ -0,0 +1,69 @@
+/*
+ *
+ * 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.persistance.registry.jpa;
+
+import java.util.List;
+
+public interface Resource {
+    /**
+     * This method will create associate resource objects for the given resource type.
+     * @param type child resource type
+     * @return associate child resource
+     */
+    Resource create(ResourceType type);
+
+    /**
+     * This method will remove the given child resource from the database
+     * @param type child resource type
+     * @param name child resource name
+     */
+    void remove(ResourceType type, Object name);
+
+    /**
+     *  This method will return the given child resource from the database
+     * @param type child resource type
+     * @param name child resource name
+     * @return associate child resource
+     */
+    Resource get(ResourceType type, Object name);
+
+    /**
+     * This method will list all the child resources for the given resource type
+     * @param type child resource type
+     * @return list of child resources of the given child resource type
+     */
+    List<Resource> get(ResourceType type);
+
+    /**
+     * This method will save the resource to the database.
+     */
+    void save();
+
+    /**
+     * This method will check whether an entry from the given resource type and resource name
+     * exists in the database
+     * @param type child resource type
+     * @param name child resource name
+     * @return whether the entry exists in the database or not
+     */
+    boolean isExists(ResourceType type, Object name);
+
+}

Added: airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/ResourceType.java
URL: http://svn.apache.org/viewvc/airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/ResourceType.java?rev=1553518&view=auto
==============================================================================
--- airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/ResourceType.java (added)
+++ airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/ResourceType.java Thu Dec 26 17:31:35 2013
@@ -0,0 +1,44 @@
+/*
+ *
+ * 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.persistance.registry.jpa;
+
+public enum ResourceType {
+    GATEWAY,
+    PROJECT,
+    USER,
+    SERVICE_DESCRIPTOR,
+    PUBLISHED_WORKFLOW,
+    USER_WORKFLOW,
+    HOST_DESCRIPTOR,
+    APPLICATION_DESCRIPTOR,
+    EXPERIMENT,
+    CONFIGURATION,
+    GATEWAY_WORKER,
+    EXPERIMENT_DATA,
+    EXPERIMENT_METADATA,
+    WORKFLOW_DATA,
+    NODE_DATA,
+    GRAM_DATA,
+    EXECUTION_ERROR,
+    GFAC_JOB_DATA,
+    GFAC_JOB_STATUS
+
+}

Added: airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/ResourceUtils.java
URL: http://svn.apache.org/viewvc/airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/ResourceUtils.java?rev=1553518&view=auto
==============================================================================
--- airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/ResourceUtils.java (added)
+++ airavata/sandbox/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/ResourceUtils.java Thu Dec 26 17:31:35 2013
@@ -0,0 +1,328 @@
+/*
+ *
+ * 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.persistance.registry.jpa;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.concurrent.locks.Lock;
+import java.util.concurrent.locks.ReentrantLock;
+
+import javax.persistence.EntityManager;
+import javax.persistence.EntityManagerFactory;
+import javax.persistence.EntityNotFoundException;
+import javax.persistence.Persistence;
+import javax.persistence.Query;
+
+import org.apache.airavata.persistance.registry.jpa.model.Configuration;
+import org.apache.airavata.persistance.registry.jpa.model.Configuration_PK;
+import org.apache.airavata.persistance.registry.jpa.model.Gateway;
+import org.apache.airavata.persistance.registry.jpa.model.Gateway_Worker;
+import org.apache.airavata.persistance.registry.jpa.model.Gateway_Worker_PK;
+import org.apache.airavata.persistance.registry.jpa.model.Users;
+import org.apache.airavata.persistance.registry.jpa.resources.AbstractResource;
+import org.apache.airavata.persistance.registry.jpa.resources.ConfigurationResource;
+import org.apache.airavata.persistance.registry.jpa.resources.GatewayResource;
+import org.apache.airavata.persistance.registry.jpa.resources.UserResource;
+import org.apache.airavata.persistance.registry.jpa.resources.Utils;
+import org.apache.airavata.persistance.registry.jpa.resources.WorkerResource;
+import org.apache.airavata.persistance.registry.jpa.utils.QueryGenerator;
+import org.apache.airavata.registry.api.exception.AiravataRegistryUninitializedException;
+import org.apache.airavata.registry.api.exception.RegistryException;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+public class ResourceUtils {
+    private final static Logger logger = LoggerFactory.getLogger(ResourceUtils.class);
+    private static final String PERSISTENCE_UNIT_NAME = "airavata_data";
+    protected static EntityManagerFactory factory;
+
+    private static Lock lock = new ReentrantLock();
+
+    public static void reset(){
+    	factory=null;
+    }
+    
+    public static EntityManager getEntityManager(){
+        if (factory == null) {
+            String connectionProperties = "DriverClassName=" + Utils.getJDBCDriver() + "," + "Url=" + Utils.getJDBCURL() + "," +
+                    "Username=" + Utils.getJDBCUser() + "," + "Password=" + Utils.getJDBCPassword() + ",validationQuery=" +
+            Utils.getValidationQuery() + "," + Utils.getJPAConnectionProperties();
+            System.out.println(connectionProperties);
+            Map<String, String> properties = new HashMap<String, String>();
+            properties.put("openjpa.ConnectionDriverName", "org.apache.commons.dbcp.BasicDataSource");
+            properties.put("openjpa.ConnectionProperties", connectionProperties);
+            properties.put("openjpa.DynamicEnhancementAgent", "true");
+            properties.put("openjpa.RuntimeUnenhancedClasses", "unsupported");
+            properties.put("openjpa.Log", "SQL=ERROR");
+//            properties.put("openjpa.Log","DefaultLevel=WARN, Runtime=INFO, Tool=INFO, SQL=TRACE");
+            properties.put("openjpa.ReadLockLevel", "none");
+            properties.put("openjpa.WriteLockLevel", "none");
+            properties.put("openjpa.LockTimeout", "30000");
+            properties.put("openjpa.LockManager", "none");
+            properties.put("openjpa.jdbc.SynchronizeMappings", "buildSchema(ForeignKeys=true)");
+            properties.put("openjpa.ConnectionFactoryProperties", "PrettyPrint=true, PrettyPrintLineLength=72, PrintParameters=true, MaxActive=10, MaxIdle=5, MinIdle=2, MaxWait=60000");
+			properties.put("openjpa.jdbc.QuerySQLCache", "false");
+            factory = Persistence.createEntityManagerFactory(PERSISTENCE_UNIT_NAME, properties);
+        }
+		return factory.createEntityManager();
+    }
+
+    /**
+     * @param gatewayName
+     * @return
+     */
+    public static Resource createGateway(String gatewayName){
+        if (!isGatewayExist(gatewayName)) {
+            GatewayResource gatewayResource = new GatewayResource();
+            gatewayResource.setGatewayName(gatewayName);
+            return gatewayResource;
+        }
+        return null;
+
+    }
+
+    public static Resource getGateway(String gatewayName){
+        if (isGatewayExist(gatewayName)) {
+            EntityManager em = getEntityManager();
+            Gateway gateway = em.find(Gateway.class, gatewayName);
+            GatewayResource gatewayResource = (GatewayResource)Utils.getResource(ResourceType.GATEWAY, gateway);
+            em.close();
+            return gatewayResource;
+        }
+        return null;
+
+    }
+
+    public static Resource getWorker(String gatewayName, String userName){
+        EntityManager em = getEntityManager();
+        Gateway_Worker gatewayWorker = em.find(Gateway_Worker.class, new Gateway_Worker_PK(gatewayName, userName));
+        WorkerResource workerResource = (WorkerResource) Utils.getResource(ResourceType.GATEWAY_WORKER, gatewayWorker);
+        em.close();
+        return workerResource;
+    }
+
+
+    /**
+     * @param gatewayName
+     * @return
+     */
+    public static boolean isGatewayExist(String gatewayName){
+
+        EntityManager em = getEntityManager();
+        em.getTransaction().begin();
+        QueryGenerator generator = new QueryGenerator(AbstractResource.GATEWAY);
+        generator.setParameter(AbstractResource.GatewayConstants.GATEWAY_NAME, gatewayName);
+        Query q = generator.selectQuery(em);
+        int size = q.getResultList().size();
+        em.getTransaction().commit();
+        em.close();
+		return size>0;
+    }
+
+    /**
+     * @param gatewayName
+     * @return
+     */
+    public static boolean removeGateway(String gatewayName) {
+        try {
+            EntityManager em = getEntityManager();
+            em.getTransaction().begin();
+            QueryGenerator generator = new QueryGenerator(AbstractResource.GATEWAY);
+            generator.setParameter(AbstractResource.GatewayConstants.GATEWAY_NAME, gatewayName);
+            Query q = generator.deleteQuery(em);
+            q.executeUpdate();
+            em.getTransaction().commit();
+            em.close();
+            return true;
+        } catch (Exception e) {
+            logger.error(e.getMessage(), e);
+            return false;
+        }
+
+
+    }
+
+    /**
+     * @param gatewayResource
+     * @param userResource
+     */
+    public static void addGatewayWorker(GatewayResource gatewayResource, UserResource userResource) {
+        try {
+            EntityManager em = getEntityManager();
+            em.getTransaction().begin();
+            Gateway gateway = new Gateway();
+            gateway.setGateway_name(gatewayResource.getGatewayName());
+            Users user = new Users();
+            user.setUser_name(userResource.getUserName());
+            Gateway_Worker gatewayWorker = new Gateway_Worker();
+            gatewayWorker.setGateway(gateway);
+            gatewayWorker.setUser(user);
+            em.persist(gatewayWorker);
+            em.getTransaction().commit();
+            em.close();
+        } catch (Exception e) {
+            logger.error(e.getMessage(), e);
+        }
+
+    }
+
+    /**
+     * @param gatewayResource
+     * @param userResource
+     * @return
+     */
+    public static boolean removeGatewayWorker(GatewayResource gatewayResource, UserResource userResource) {
+        try {
+            EntityManager em = getEntityManager();
+            em.getTransaction().begin();
+            QueryGenerator generator = new QueryGenerator(AbstractResource.GATEWAY_WORKER);
+            generator.setParameter(AbstractResource.GatewayWorkerConstants.GATEWAY_NAME,
+                    gatewayResource.getGatewayName());
+            generator.setParameter(AbstractResource.UserConstants.USERNAME, userResource.getUserName());
+            Query q = generator.deleteQuery(em);
+            q.executeUpdate();
+            em.getTransaction().commit();
+            em.close();
+            return true;
+        } catch (Exception e) {
+            logger.error(e.getMessage(), e);
+            return false;
+        }
+
+    }
+
+    /**
+     * @param configKey
+     * @return
+     */
+    public static List<ConfigurationResource> getConfigurations(String configKey){
+        List<ConfigurationResource> list = new ArrayList<ConfigurationResource>();
+        EntityManager em = getEntityManager();
+        em.getTransaction().begin();
+        QueryGenerator generator = new QueryGenerator(AbstractResource.CONFIGURATION);
+        generator.setParameter(AbstractResource.ConfigurationConstants.CONFIG_KEY, configKey);
+        Query q = generator.selectQuery(em);
+        List<?> resultList = q.getResultList();
+        if (resultList.size() != 0) {
+            for (Object result : resultList) {
+                ConfigurationResource configurationResource = createConfigurationResourceObject(result);
+                list.add(configurationResource);
+            }
+        }
+        em.getTransaction().commit();
+        em.close();
+        return list;
+    }
+
+    /**
+     * @param configKey
+     * @return
+     */
+    public static ConfigurationResource getConfiguration(String configKey){
+        List<ConfigurationResource> configurations = getConfigurations(configKey);
+        return (configurations != null && configurations.size() > 0) ? configurations.get(0) : null;
+    }
+
+    /**
+     * @param configKey
+     * @return
+     */
+    public static boolean isConfigurationExist(String configKey){
+        List<ConfigurationResource> configurations = getConfigurations(configKey);
+        return (configurations != null && configurations.size() > 0);
+    }
+
+    /**
+     * @param configKey
+     * @return
+     */
+    public static ConfigurationResource createConfiguration(String configKey) {
+        ConfigurationResource config = new ConfigurationResource();
+        config.setConfigKey(configKey);
+        return config;
+    }
+
+    /**
+     * @param result
+     * @return
+     */
+    private static ConfigurationResource createConfigurationResourceObject(
+            Object result) {
+        Configuration configuration = (Configuration) result;
+        ConfigurationResource configurationResource = new ConfigurationResource(configuration.getConfig_key(), configuration.getConfig_val());
+        configurationResource.setExpireDate(configuration.getExpire_date());
+        return configurationResource;
+    }
+
+    /**
+     * @param configkey
+     * @param configValue
+     */
+    public static void removeConfiguration(String configkey, String configValue){
+        QueryGenerator queryGenerator = new QueryGenerator(AbstractResource.CONFIGURATION);
+        queryGenerator.setParameter(AbstractResource.ConfigurationConstants.CONFIG_KEY, configkey);
+        queryGenerator.setParameter(AbstractResource.ConfigurationConstants.CONFIG_VAL, configValue);
+        if(isConfigurationExists(configkey, configValue)){
+            EntityManager em = getEntityManager();
+            em.getTransaction().begin();
+            Query q = queryGenerator.deleteQuery(em);
+            q.executeUpdate();
+            em.getTransaction().commit();
+            em.close();
+        }
+    }
+
+    /**
+     * @param configkey
+     */
+    public static void removeConfiguration(String configkey){
+        QueryGenerator queryGenerator = new QueryGenerator(AbstractResource.CONFIGURATION);
+        queryGenerator.setParameter(AbstractResource.ConfigurationConstants.CONFIG_KEY, configkey);
+        if(isConfigurationExist(configkey)){
+            EntityManager em = getEntityManager();
+            em.getTransaction().begin();
+            Query q = queryGenerator.deleteQuery(em);
+            q.executeUpdate();
+            em.getTransaction().commit();
+            em.close();
+        }
+    }
+
+    public static boolean isConfigurationExists(String configKey, String configVal){
+        try{
+            //Currently categoryID is hardcoded value
+            EntityManager em = ResourceUtils.getEntityManager();
+            Configuration existing = em.find(Configuration.class, new Configuration_PK(configKey, configVal, AbstractResource.ConfigurationConstants.CATEGORY_ID_DEFAULT_VALUE));
+            em.close();
+            return existing!= null;
+        } catch (Exception e){
+            logger.error(e.getMessage(), e);
+            throw new EntityNotFoundException();
+        }
+    }
+
+    public static Lock getLock() {
+        return lock;
+    }
+
+}