You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airavata.apache.org by sh...@apache.org on 2015/06/04 22:37:21 UTC

[35/52] [abbrv] [partial] airavata git commit: registry refactoring

http://git-wip-us.apache.org/repos/asf/airavata/blob/ec8c6202/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/impl/AiravataJobStatusUpdator.java
----------------------------------------------------------------------
diff --git a/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/impl/AiravataJobStatusUpdator.java b/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/impl/AiravataJobStatusUpdator.java
index e7c6572..46659ff 100644
--- a/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/impl/AiravataJobStatusUpdator.java
+++ b/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/impl/AiravataJobStatusUpdator.java
@@ -32,8 +32,8 @@ import org.apache.airavata.model.messaging.event.MessageType;
 import org.apache.airavata.model.workspace.experiment.JobDetails;
 import org.apache.airavata.model.workspace.experiment.JobState;
 import org.apache.airavata.registry.cpi.CompositeIdentifier;
-import org.apache.airavata.registry.cpi.Registry;
-import org.apache.airavata.registry.cpi.RegistryModelType;
+import org.apache.airavata.registry.cpi.ExperimentCatalog;
+import org.apache.airavata.registry.cpi.ExperimentCatalogModelType;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -41,18 +41,18 @@ import java.util.Calendar;
 
 public class AiravataJobStatusUpdator implements AbstractActivityListener {
     private final static Logger logger = LoggerFactory.getLogger(AiravataJobStatusUpdator.class);
-    private Registry airavataRegistry;
+    private ExperimentCatalog airavataExperimentCatalog;
 
     private MonitorPublisher monitorPublisher;
     private Publisher publisher;
 
 
-    public Registry getAiravataRegistry() {
-        return airavataRegistry;
+    public ExperimentCatalog getAiravataExperimentCatalog() {
+        return airavataExperimentCatalog;
     }
 
-    public void setAiravataRegistry(Registry airavataRegistry) {
-        this.airavataRegistry = airavataRegistry;
+    public void setAiravataExperimentCatalog(ExperimentCatalog airavataExperimentCatalog) {
+        this.airavataExperimentCatalog = airavataExperimentCatalog;
     }
 
 
@@ -87,7 +87,7 @@ public class AiravataJobStatusUpdator implements AbstractActivityListener {
     public  void updateJobStatus(String expId, String taskId, String jobID, JobState state) throws Exception {
         logger.info("expId - {}: Updating job status for " + jobID + ":" + state.toString(), expId);
         CompositeIdentifier ids = new CompositeIdentifier(taskId, jobID);
-        JobDetails details = (JobDetails) airavataRegistry.get(RegistryModelType.JOB_DETAIL, ids);
+        JobDetails details = (JobDetails) airavataExperimentCatalog.get(ExperimentCatalogModelType.JOB_DETAIL, ids);
         if (details == null) {
             details = new JobDetails();
         }
@@ -102,14 +102,14 @@ public class AiravataJobStatusUpdator implements AbstractActivityListener {
         details.setJobStatus(status);
         details.setJobID(jobID);
         logger.debug("expId - {}: Updated job status for " + jobID + ":" + details.getJobStatus().toString(), expId);
-        airavataRegistry.update(RegistryModelType.JOB_STATUS, status, ids);
+        airavataExperimentCatalog.update(ExperimentCatalogModelType.JOB_STATUS, status, ids);
     }
 
 	@SuppressWarnings("unchecked")
 	public void setup(Object... configurations) {
 		for (Object configuration : configurations) {
-			if (configuration instanceof Registry){
-				this.airavataRegistry=(Registry)configuration;
+			if (configuration instanceof ExperimentCatalog){
+				this.airavataExperimentCatalog =(ExperimentCatalog)configuration;
 			} else if (configuration instanceof MonitorPublisher){
 				this.monitorPublisher=(MonitorPublisher) configuration;
 			} else if (configuration instanceof Publisher){

http://git-wip-us.apache.org/repos/asf/airavata/blob/ec8c6202/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/impl/AiravataTaskStatusUpdator.java
----------------------------------------------------------------------
diff --git a/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/impl/AiravataTaskStatusUpdator.java b/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/impl/AiravataTaskStatusUpdator.java
index 94029be..7cfa7ca 100644
--- a/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/impl/AiravataTaskStatusUpdator.java
+++ b/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/impl/AiravataTaskStatusUpdator.java
@@ -35,8 +35,8 @@ import org.apache.airavata.model.messaging.event.TaskStatusChangeEvent;
 import org.apache.airavata.model.messaging.event.TaskStatusChangeRequestEvent;
 import org.apache.airavata.model.workspace.experiment.TaskDetails;
 import org.apache.airavata.model.workspace.experiment.TaskState;
-import org.apache.airavata.registry.cpi.Registry;
-import org.apache.airavata.registry.cpi.RegistryModelType;
+import org.apache.airavata.registry.cpi.ExperimentCatalog;
+import org.apache.airavata.registry.cpi.ExperimentCatalogModelType;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -44,16 +44,16 @@ import java.util.Calendar;
 
 public class AiravataTaskStatusUpdator implements AbstractActivityListener {
     private final static Logger logger = LoggerFactory.getLogger(AiravataTaskStatusUpdator.class);
-    private Registry airavataRegistry;
+    private ExperimentCatalog airavataExperimentCatalog;
     private MonitorPublisher monitorPublisher;
     private Publisher publisher;
     
-    public Registry getAiravataRegistry() {
-        return airavataRegistry;
+    public ExperimentCatalog getAiravataExperimentCatalog() {
+        return airavataExperimentCatalog;
     }
 
-    public void setAiravataRegistry(Registry airavataRegistry) {
-        this.airavataRegistry = airavataRegistry;
+    public void setAiravataExperimentCatalog(ExperimentCatalog airavataExperimentCatalog) {
+        this.airavataExperimentCatalog = airavataExperimentCatalog;
     }
 
     @Subscribe
@@ -120,7 +120,7 @@ public class AiravataTaskStatusUpdator implements AbstractActivityListener {
     }
     
     public  TaskState updateTaskStatus(String taskId, TaskState state) throws Exception {
-    	TaskDetails details = (TaskDetails)airavataRegistry.get(RegistryModelType.TASK_DETAIL, taskId);
+    	TaskDetails details = (TaskDetails) airavataExperimentCatalog.get(ExperimentCatalogModelType.TASK_DETAIL, taskId);
         if(details == null) {
             logger.error("Task details cannot be null at this point");
             throw new Exception("Task details cannot be null at this point");
@@ -136,14 +136,14 @@ public class AiravataTaskStatusUpdator implements AbstractActivityListener {
         details.setTaskStatus(status);
         logger.debug("Updating task status for "+taskId+":"+details.getTaskStatus().toString());
 
-        airavataRegistry.update(RegistryModelType.TASK_STATUS, status, taskId);
+        airavataExperimentCatalog.update(ExperimentCatalogModelType.TASK_STATUS, status, taskId);
         return status.getExecutionState();
     }
 
 	public void setup(Object... configurations) {
 		for (Object configuration : configurations) {
-			if (configuration instanceof Registry){
-				this.airavataRegistry=(Registry)configuration;
+			if (configuration instanceof ExperimentCatalog){
+				this.airavataExperimentCatalog =(ExperimentCatalog)configuration;
 			} else if (configuration instanceof MonitorPublisher){
 				this.monitorPublisher=(MonitorPublisher) configuration;
 			} else if (configuration instanceof Publisher){

http://git-wip-us.apache.org/repos/asf/airavata/blob/ec8c6202/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/impl/AiravataWorkflowNodeStatusUpdator.java
----------------------------------------------------------------------
diff --git a/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/impl/AiravataWorkflowNodeStatusUpdator.java b/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/impl/AiravataWorkflowNodeStatusUpdator.java
index 092774b..ddec551 100644
--- a/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/impl/AiravataWorkflowNodeStatusUpdator.java
+++ b/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/impl/AiravataWorkflowNodeStatusUpdator.java
@@ -33,8 +33,8 @@ import org.apache.airavata.model.messaging.event.WorkflowNodeStatusChangeEvent;
 import org.apache.airavata.model.workspace.experiment.WorkflowNodeDetails;
 import org.apache.airavata.model.workspace.experiment.WorkflowNodeState;
 import org.apache.airavata.model.workspace.experiment.WorkflowNodeStatus;
-import org.apache.airavata.registry.cpi.Registry;
-import org.apache.airavata.registry.cpi.RegistryModelType;
+import org.apache.airavata.registry.cpi.ExperimentCatalog;
+import org.apache.airavata.registry.cpi.ExperimentCatalogModelType;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -43,19 +43,19 @@ import java.util.Calendar;
 public class AiravataWorkflowNodeStatusUpdator implements AbstractActivityListener {
     private final static Logger logger = LoggerFactory.getLogger(AiravataWorkflowNodeStatusUpdator.class);
 
-    private Registry airavataRegistry;
+    private ExperimentCatalog airavataExperimentCatalog;
     private MonitorPublisher monitorPublisher;
     private Publisher publisher;
 
 
 
 
-    public Registry getAiravataRegistry() {
-        return airavataRegistry;
+    public ExperimentCatalog getAiravataExperimentCatalog() {
+        return airavataExperimentCatalog;
     }
 
-    public void setAiravataRegistry(Registry airavataRegistry) {
-        this.airavataRegistry = airavataRegistry;
+    public void setAiravataExperimentCatalog(ExperimentCatalog airavataExperimentCatalog) {
+        this.airavataExperimentCatalog = airavataExperimentCatalog;
     }
 
     @Subscribe
@@ -103,7 +103,7 @@ public class AiravataWorkflowNodeStatusUpdator implements AbstractActivityListen
 
     public  void updateWorkflowNodeStatus(String experimentId, String workflowNodeId, WorkflowNodeState state) throws Exception {
 		logger.info("expId - {}: Updating workflow node status for "+workflowNodeId+":"+state.toString(), experimentId);
-    	WorkflowNodeDetails details = (WorkflowNodeDetails)airavataRegistry.get(RegistryModelType.WORKFLOW_NODE_DETAIL, workflowNodeId);
+    	WorkflowNodeDetails details = (WorkflowNodeDetails) airavataExperimentCatalog.get(ExperimentCatalogModelType.WORKFLOW_NODE_DETAIL, workflowNodeId);
         if(details == null) {
             details = new WorkflowNodeDetails();
             details.setNodeInstanceId(workflowNodeId);
@@ -112,13 +112,13 @@ public class AiravataWorkflowNodeStatusUpdator implements AbstractActivityListen
         status.setWorkflowNodeState(state);
         status.setTimeOfStateChange(Calendar.getInstance().getTimeInMillis());
         details.setWorkflowNodeStatus(status);
-        airavataRegistry.update(RegistryModelType.WORKFLOW_NODE_STATUS, status, workflowNodeId);
+        airavataExperimentCatalog.update(ExperimentCatalogModelType.WORKFLOW_NODE_STATUS, status, workflowNodeId);
     }
 
 	public void setup(Object... configurations) {
 		for (Object configuration : configurations) {
-			if (configuration instanceof Registry){
-				this.airavataRegistry=(Registry)configuration;
+			if (configuration instanceof ExperimentCatalog){
+				this.airavataExperimentCatalog =(ExperimentCatalog)configuration;
 			} else if (configuration instanceof MonitorPublisher){
 				this.monitorPublisher=(MonitorPublisher) configuration;
 			}  else if (configuration instanceof Publisher){

http://git-wip-us.apache.org/repos/asf/airavata/blob/ec8c6202/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/impl/BetterGfacImpl.java
----------------------------------------------------------------------
diff --git a/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/impl/BetterGfacImpl.java b/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/impl/BetterGfacImpl.java
index f4c627f..564fcb2 100644
--- a/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/impl/BetterGfacImpl.java
+++ b/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/impl/BetterGfacImpl.java
@@ -20,8 +20,8 @@
 */
 package org.apache.airavata.gfac.impl;
 
-import org.airavata.appcatalog.cpi.AppCatalog;
-import org.airavata.appcatalog.cpi.AppCatalogException;
+import org.apache.airavata.registry.cpi.AppCatalog;
+import org.apache.airavata.registry.cpi.AppCatalogException;
 import org.apache.aiaravata.application.catalog.data.impl.AppCatalogFactory;
 import org.apache.airavata.common.utils.AiravataZKUtils;
 import org.apache.airavata.common.utils.MonitorPublisher;
@@ -71,9 +71,9 @@ import org.apache.airavata.model.workspace.experiment.JobDetails;
 import org.apache.airavata.model.workspace.experiment.JobState;
 import org.apache.airavata.model.workspace.experiment.TaskDetails;
 import org.apache.airavata.model.workspace.experiment.TaskState;
-import org.apache.airavata.registry.cpi.Registry;
+import org.apache.airavata.registry.cpi.ExperimentCatalog;
+import org.apache.airavata.registry.cpi.ExperimentCatalogModelType;
 import org.apache.airavata.registry.cpi.RegistryException;
-import org.apache.airavata.registry.cpi.RegistryModelType;
 import org.apache.curator.framework.CuratorFramework;
 import org.apache.curator.utils.ZKPaths;
 import org.slf4j.Logger;
@@ -96,7 +96,7 @@ import java.util.Properties;
 public class BetterGfacImpl implements GFac {
     private static final Logger log = LoggerFactory.getLogger(BetterGfacImpl.class);
     private static String ERROR_SENT = "ErrorSent";
-    private Registry registry;
+    private ExperimentCatalog experimentCatalog;
     private CuratorFramework curatorClient;
     private MonitorPublisher monitorPublisher;
     private static GFac gfacInstance;
@@ -118,9 +118,9 @@ public class BetterGfacImpl implements GFac {
     }
 
     @Override
-    public boolean init(Registry registry, AppCatalog appCatalog, CuratorFramework curatorClient,
+    public boolean init(ExperimentCatalog experimentCatalog, AppCatalog appCatalog, CuratorFramework curatorClient,
                         MonitorPublisher publisher) {
-        this.registry = registry;
+        this.experimentCatalog = experimentCatalog;
         monitorPublisher = publisher;     // This is a EventBus common for gfac
         this.curatorClient = curatorClient;
         return initialized = true;
@@ -177,7 +177,7 @@ public class BetterGfacImpl implements GFac {
          */
 
         //Fetch the Task details for the requested experimentID from the registry. Extract required pointers from the Task object.
-        TaskDetails taskData = (TaskDetails) registry.get(RegistryModelType.TASK_DETAIL, taskID);
+        TaskDetails taskData = (TaskDetails) experimentCatalog.get(ExperimentCatalogModelType.TASK_DETAIL, taskID);
 
         String applicationInterfaceId = taskData.getApplicationId();
         String applicationDeploymentId = taskData.getApplicationDeploymentId();
@@ -220,7 +220,7 @@ public class BetterGfacImpl implements GFac {
         jobExecutionContext = new JobExecutionContext(gFacConfiguration, applicationInterface.getApplicationName());
 
         // setting experiment/task/workflownode related information
-        Experiment experiment = (Experiment) registry.get(RegistryModelType.EXPERIMENT, experimentID);
+        Experiment experiment = (Experiment) experimentCatalog.get(ExperimentCatalogModelType.EXPERIMENT, experimentID);
         jobExecutionContext.setExperiment(experiment);
         jobExecutionContext.setExperimentID(experimentID);
         jobExecutionContext.setWorkflowNodeDetails(experiment.getWorkflowNodeDetailsList().get(0));
@@ -235,7 +235,7 @@ public class BetterGfacImpl implements GFac {
             jobExecutionContext.setJobDetails(jDetails);
         }
         // setting the registry
-        jobExecutionContext.setRegistry(registry);
+        jobExecutionContext.setExperimentCatalog(experimentCatalog);
 
         ApplicationContext applicationContext = new ApplicationContext();
         applicationContext.setComputeResourceDescription(computeResource);
@@ -1096,7 +1096,7 @@ public class BetterGfacImpl implements GFac {
     private boolean isCancelled(JobExecutionContext executionContext) {
         // we should check whether experiment is cancelled using registry
         try {
-            ExperimentStatus status = (ExperimentStatus) registry.get(RegistryModelType.EXPERIMENT_STATUS, executionContext.getExperimentID());
+            ExperimentStatus status = (ExperimentStatus) experimentCatalog.get(ExperimentCatalogModelType.EXPERIMENT_STATUS, executionContext.getExperimentID());
             if (status != null) {
                 ExperimentState experimentState = status.getExperimentState();
                 if (experimentState != null) {
@@ -1114,7 +1114,7 @@ public class BetterGfacImpl implements GFac {
     private boolean isCancelling(JobExecutionContext executionContext) {
         // check whether cancelling request came
         try {
-            ExperimentStatus status = (ExperimentStatus) registry.get(RegistryModelType.EXPERIMENT_STATUS, executionContext.getExperimentID());
+            ExperimentStatus status = (ExperimentStatus) experimentCatalog.get(ExperimentCatalogModelType.EXPERIMENT_STATUS, executionContext.getExperimentID());
             if (status != null) {
                 ExperimentState experimentState = status.getExperimentState();
                 if (experimentState != null) {
@@ -1131,7 +1131,7 @@ public class BetterGfacImpl implements GFac {
 
     private boolean isCancel(JobExecutionContext jobExecutionContext) {
         try {
-            ExperimentStatus status = (ExperimentStatus) registry.get(RegistryModelType.EXPERIMENT_STATUS, jobExecutionContext.getExperimentID());
+            ExperimentStatus status = (ExperimentStatus) experimentCatalog.get(ExperimentCatalogModelType.EXPERIMENT_STATUS, jobExecutionContext.getExperimentID());
             if (status != null) {
                 ExperimentState experimentState = status.getExperimentState();
                 if (experimentState != null) {

http://git-wip-us.apache.org/repos/asf/airavata/blob/ec8c6202/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/local/provider/impl/LocalProvider.java
----------------------------------------------------------------------
diff --git a/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/local/provider/impl/LocalProvider.java b/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/local/provider/impl/LocalProvider.java
index f00e62a..1bc5244 100644
--- a/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/local/provider/impl/LocalProvider.java
+++ b/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/local/provider/impl/LocalProvider.java
@@ -49,8 +49,8 @@ import org.apache.airavata.model.messaging.event.TaskOutputChangeEvent;
 import org.apache.airavata.model.workspace.experiment.JobDetails;
 import org.apache.airavata.model.workspace.experiment.JobState;
 import org.apache.airavata.model.workspace.experiment.TaskDetails;
-import org.apache.airavata.registry.cpi.ChildDataType;
-import org.apache.airavata.registry.cpi.RegistryModelType;
+import org.apache.airavata.registry.cpi.ExpCatChildDataType;
+import org.apache.airavata.registry.cpi.ExperimentCatalogModelType;
 import org.apache.xmlbeans.XmlException;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -224,12 +224,12 @@ public class LocalProvider extends AbstractProvider {
             String stdErrStr = GFacUtils.readFileToString(jobExecutionContext.getStandardError());
 			Map<String, Object> output = jobExecutionContext.getOutMessageContext().getParameters();
             OutputUtils.fillOutputFromStdout(output, stdOutStr, stdErrStr, outputArray);
-            TaskDetails taskDetails = (TaskDetails)registry.get(RegistryModelType.TASK_DETAIL, jobExecutionContext.getTaskData().getTaskID());
+            TaskDetails taskDetails = (TaskDetails) experimentCatalog.get(ExperimentCatalogModelType.TASK_DETAIL, jobExecutionContext.getTaskData().getTaskID());
             if (taskDetails != null){
                 taskDetails.setApplicationOutputs(outputArray);
-                registry.update(RegistryModelType.TASK_DETAIL, taskDetails, taskDetails.getTaskID());
+                experimentCatalog.update(ExperimentCatalogModelType.TASK_DETAIL, taskDetails, taskDetails.getTaskID());
             }
-            registry.add(ChildDataType.EXPERIMENT_OUTPUT, outputArray, jobExecutionContext.getExperimentID());
+            experimentCatalog.add(ExpCatChildDataType.EXPERIMENT_OUTPUT, outputArray, jobExecutionContext.getExperimentID());
             TaskIdentifier taskIdentity = new TaskIdentifier(jobExecutionContext.getTaskData().getTaskID(),
                     jobExecutionContext.getWorkflowNodeDetails().getNodeInstanceId(),
                     jobExecutionContext.getExperimentID(),

http://git-wip-us.apache.org/repos/asf/airavata/blob/ec8c6202/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/ssh/handler/AdvancedSCPInputHandler.java
----------------------------------------------------------------------
diff --git a/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/ssh/handler/AdvancedSCPInputHandler.java b/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/ssh/handler/AdvancedSCPInputHandler.java
index db9522e..712678c 100644
--- a/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/ssh/handler/AdvancedSCPInputHandler.java
+++ b/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/ssh/handler/AdvancedSCPInputHandler.java
@@ -36,7 +36,7 @@ import org.apache.airavata.gfac.core.authentication.AuthenticationInfo;
 import org.apache.airavata.model.appcatalog.appinterface.DataType;
 import org.apache.airavata.model.appcatalog.appinterface.InputDataObjectType;
 import org.apache.airavata.model.workspace.experiment.*;
-import org.apache.airavata.registry.cpi.ChildDataType;
+import org.apache.airavata.registry.cpi.ExpCatChildDataType;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -166,7 +166,7 @@ public class AdvancedSCPInputHandler extends AbstractHandler {
                         status.setTransferState(TransferState.UPLOAD);
                         detail.setTransferStatus(status);
                         detail.setTransferDescription("Input Data Staged: " + stageInputFile);
-                        registry.add(ChildDataType.DATA_TRANSFER_DETAIL, detail, jobExecutionContext.getTaskData().getTaskID());
+                        experimentCatalog.add(ExpCatChildDataType.DATA_TRANSFER_DETAIL, detail, jobExecutionContext.getTaskData().getTaskID());
 
                         GFacUtils.saveHandlerData(jobExecutionContext, temp.insert(0, ++index), this.getClass().getName());
                     }

http://git-wip-us.apache.org/repos/asf/airavata/blob/ec8c6202/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/ssh/handler/AdvancedSCPOutputHandler.java
----------------------------------------------------------------------
diff --git a/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/ssh/handler/AdvancedSCPOutputHandler.java b/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/ssh/handler/AdvancedSCPOutputHandler.java
index ad7df41..ddfff15 100644
--- a/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/ssh/handler/AdvancedSCPOutputHandler.java
+++ b/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/ssh/handler/AdvancedSCPOutputHandler.java
@@ -37,7 +37,7 @@ import org.apache.airavata.model.appcatalog.appinterface.DataType;
 import org.apache.airavata.model.appcatalog.appinterface.OutputDataObjectType;
 import org.apache.airavata.model.workspace.experiment.CorrectiveAction;
 import org.apache.airavata.model.workspace.experiment.ErrorCategory;
-import org.apache.airavata.registry.cpi.ChildDataType;
+import org.apache.airavata.registry.cpi.ExpCatChildDataType;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -194,7 +194,7 @@ public class AdvancedSCPOutputHandler extends AbstractHandler {
                     outputArray.add(dataObjectType);
                 }
              }
-           registry.add(ChildDataType.EXPERIMENT_OUTPUT, outputArray, jobExecutionContext.getExperimentID());
+           experimentCatalog.add(ExpCatChildDataType.EXPERIMENT_OUTPUT, outputArray, jobExecutionContext.getExperimentID());
         } catch (SSHApiException e) {
             try {
                 StringWriter errors = new StringWriter();

http://git-wip-us.apache.org/repos/asf/airavata/blob/ec8c6202/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/ssh/handler/NewSSHOutputHandler.java
----------------------------------------------------------------------
diff --git a/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/ssh/handler/NewSSHOutputHandler.java b/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/ssh/handler/NewSSHOutputHandler.java
index 0df9eab..0758a59 100644
--- a/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/ssh/handler/NewSSHOutputHandler.java
+++ b/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/ssh/handler/NewSSHOutputHandler.java
@@ -18,7 +18,7 @@ import org.apache.airavata.gfac.ssh.util.HandleOutputs;
 import org.apache.airavata.model.appcatalog.appinterface.OutputDataObjectType;
 import org.apache.airavata.model.workspace.experiment.CorrectiveAction;
 import org.apache.airavata.model.workspace.experiment.ErrorCategory;
-import org.apache.airavata.registry.cpi.ChildDataType;
+import org.apache.airavata.registry.cpi.ExpCatChildDataType;
 import org.apache.airavata.registry.cpi.RegistryException;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -56,7 +56,7 @@ public class NewSSHOutputHandler extends AbstractHandler{
 	        super.invoke(jobExecutionContext);
 	        List<OutputDataObjectType> outputArray =  HandleOutputs.handleOutputs(jobExecutionContext, cluster);
 	        try {
-				registry.add(ChildDataType.EXPERIMENT_OUTPUT, outputArray, jobExecutionContext.getExperimentID());
+				experimentCatalog.add(ExpCatChildDataType.EXPERIMENT_OUTPUT, outputArray, jobExecutionContext.getExperimentID());
 			} catch (RegistryException e) {
 				throw new GFacHandlerException(e);
 			}

http://git-wip-us.apache.org/repos/asf/airavata/blob/ec8c6202/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/ssh/handler/SSHDirectorySetupHandler.java
----------------------------------------------------------------------
diff --git a/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/ssh/handler/SSHDirectorySetupHandler.java b/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/ssh/handler/SSHDirectorySetupHandler.java
index c96e5d9..e675680 100644
--- a/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/ssh/handler/SSHDirectorySetupHandler.java
+++ b/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/ssh/handler/SSHDirectorySetupHandler.java
@@ -29,7 +29,7 @@ import org.apache.airavata.gfac.core.GFacUtils;
 import org.apache.airavata.gfac.ssh.security.SSHSecurityContext;
 import org.apache.airavata.gfac.ssh.util.GFACSSHUtils;
 import org.apache.airavata.model.workspace.experiment.*;
-import org.apache.airavata.registry.cpi.ChildDataType;
+import org.apache.airavata.registry.cpi.ExpCatChildDataType;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -92,7 +92,7 @@ public class SSHDirectorySetupHandler extends AbstractHandler {
             detail.setTransferStatus(status);
             detail.setTransferDescription("Working directory = " + workingDirectory);
 
-            registry.add(ChildDataType.DATA_TRANSFER_DETAIL, detail, jobExecutionContext.getTaskData().getTaskID());
+            experimentCatalog.add(ExpCatChildDataType.DATA_TRANSFER_DETAIL, detail, jobExecutionContext.getTaskData().getTaskID());
 
         } catch (Exception e) {
 			DataTransferDetails detail = new DataTransferDetails();
@@ -101,7 +101,7 @@ public class SSHDirectorySetupHandler extends AbstractHandler {
             detail.setTransferStatus(status);
             detail.setTransferDescription("Working directory = " + jobExecutionContext.getWorkingDir());
             try {
-                registry.add(ChildDataType.DATA_TRANSFER_DETAIL, detail, jobExecutionContext.getTaskData().getTaskID());
+                experimentCatalog.add(ExpCatChildDataType.DATA_TRANSFER_DETAIL, detail, jobExecutionContext.getTaskData().getTaskID());
                 StringWriter errors = new StringWriter();
                 e.printStackTrace(new PrintWriter(errors));
                 GFacUtils.saveErrorDetails(jobExecutionContext,  errors.toString(), CorrectiveAction.CONTACT_SUPPORT, ErrorCategory.FILE_SYSTEM_FAILURE);

http://git-wip-us.apache.org/repos/asf/airavata/blob/ec8c6202/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/ssh/handler/SSHInputHandler.java
----------------------------------------------------------------------
diff --git a/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/ssh/handler/SSHInputHandler.java b/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/ssh/handler/SSHInputHandler.java
index 1c83e88..4940c3f 100644
--- a/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/ssh/handler/SSHInputHandler.java
+++ b/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/ssh/handler/SSHInputHandler.java
@@ -33,7 +33,7 @@ import org.apache.airavata.gfac.ssh.util.GFACSSHUtils;
 import org.apache.airavata.model.appcatalog.appinterface.DataType;
 import org.apache.airavata.model.appcatalog.appinterface.InputDataObjectType;
 import org.apache.airavata.model.workspace.experiment.*;
-import org.apache.airavata.registry.cpi.ChildDataType;
+import org.apache.airavata.registry.cpi.ExpCatChildDataType;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -108,7 +108,7 @@ public class SSHInputHandler extends AbstractHandler {
                         status.setTransferState(TransferState.UPLOAD);
                         detail.setTransferStatus(status);
                         detail.setTransferDescription("Input Data Staged: " + stageInputFile);
-                        registry.add(ChildDataType.DATA_TRANSFER_DETAIL, detail, jobExecutionContext.getTaskData().getTaskID());
+                        experimentCatalog.add(ExpCatChildDataType.DATA_TRANSFER_DETAIL, detail, jobExecutionContext.getTaskData().getTaskID());
 
                         GFacUtils.saveHandlerData(jobExecutionContext, temp.insert(0, ++index), this.getClass().getName());
                     }
@@ -144,7 +144,7 @@ public class SSHInputHandler extends AbstractHandler {
                 StringWriter errors = new StringWriter();
                 e.printStackTrace(new PrintWriter(errors));
                 GFacUtils.saveErrorDetails(jobExecutionContext, errors.toString(), CorrectiveAction.CONTACT_SUPPORT, ErrorCategory.FILE_SYSTEM_FAILURE);
-                registry.add(ChildDataType.DATA_TRANSFER_DETAIL, detail, jobExecutionContext.getTaskData().getTaskID());
+                experimentCatalog.add(ExpCatChildDataType.DATA_TRANSFER_DETAIL, detail, jobExecutionContext.getTaskData().getTaskID());
             } catch (Exception e1) {
                 throw new GFacHandlerException("Error persisting status", e1, e1.getLocalizedMessage());
             }

http://git-wip-us.apache.org/repos/asf/airavata/blob/ec8c6202/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/ssh/handler/SSHOutputHandler.java
----------------------------------------------------------------------
diff --git a/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/ssh/handler/SSHOutputHandler.java b/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/ssh/handler/SSHOutputHandler.java
index 17a48e7..80b8069 100644
--- a/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/ssh/handler/SSHOutputHandler.java
+++ b/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/ssh/handler/SSHOutputHandler.java
@@ -40,7 +40,7 @@ import org.apache.airavata.model.workspace.experiment.ErrorCategory;
 import org.apache.airavata.model.workspace.experiment.TaskDetails;
 import org.apache.airavata.model.workspace.experiment.TransferState;
 import org.apache.airavata.model.workspace.experiment.TransferStatus;
-import org.apache.airavata.registry.cpi.ChildDataType;
+import org.apache.airavata.registry.cpi.ExpCatChildDataType;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -130,12 +130,12 @@ public class SSHOutputHandler extends AbstractHandler {
             status.setTransferState(TransferState.STDOUT_DOWNLOAD);
             detail.setTransferStatus(status);
             detail.setTransferDescription("STDOUT:" + localStdOutFile.getAbsolutePath());
-            registry.add(ChildDataType.DATA_TRANSFER_DETAIL, detail, jobExecutionContext.getTaskData().getTaskID());
+            experimentCatalog.add(ExpCatChildDataType.DATA_TRANSFER_DETAIL, detail, jobExecutionContext.getTaskData().getTaskID());
 
             status.setTransferState(TransferState.STDERROR_DOWNLOAD);
             detail.setTransferStatus(status);
             detail.setTransferDescription("STDERR:" + localStdErrFile.getAbsolutePath());
-            registry.add(ChildDataType.DATA_TRANSFER_DETAIL, detail, jobExecutionContext.getTaskData().getTaskID());
+            experimentCatalog.add(ExpCatChildDataType.DATA_TRANSFER_DETAIL, detail, jobExecutionContext.getTaskData().getTaskID());
 
 
             List<OutputDataObjectType> outputArray = new ArrayList<OutputDataObjectType>();
@@ -226,14 +226,14 @@ public class SSHOutputHandler extends AbstractHandler {
             status.setTransferState(TransferState.DOWNLOAD);
             detail.setTransferStatus(status);
             detail.setTransferDescription(outputDataDir);
-            registry.add(ChildDataType.DATA_TRANSFER_DETAIL, detail, jobExecutionContext.getTaskData().getTaskID());
-            registry.add(ChildDataType.EXPERIMENT_OUTPUT, outputArray, jobExecutionContext.getExperimentID());
+            experimentCatalog.add(ExpCatChildDataType.DATA_TRANSFER_DETAIL, detail, jobExecutionContext.getTaskData().getTaskID());
+            experimentCatalog.add(ExpCatChildDataType.EXPERIMENT_OUTPUT, outputArray, jobExecutionContext.getExperimentID());
 
         } catch (Exception e) {
             try {
                 status.setTransferState(TransferState.FAILED);
                 detail.setTransferStatus(status);
-                registry.add(ChildDataType.DATA_TRANSFER_DETAIL, detail, jobExecutionContext.getTaskData().getTaskID());
+                experimentCatalog.add(ExpCatChildDataType.DATA_TRANSFER_DETAIL, detail, jobExecutionContext.getTaskData().getTaskID());
                 StringWriter errors = new StringWriter();
                 e.printStackTrace(new PrintWriter(errors));
                 GFacUtils.saveErrorDetails(jobExecutionContext,  errors.toString(), CorrectiveAction.CONTACT_SUPPORT, ErrorCategory.FILE_SYSTEM_FAILURE);

http://git-wip-us.apache.org/repos/asf/airavata/blob/ec8c6202/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/ssh/provider/impl/SSHProvider.java
----------------------------------------------------------------------
diff --git a/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/ssh/provider/impl/SSHProvider.java b/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/ssh/provider/impl/SSHProvider.java
index 44f24fa..58fe0e3 100644
--- a/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/ssh/provider/impl/SSHProvider.java
+++ b/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/ssh/provider/impl/SSHProvider.java
@@ -21,7 +21,7 @@
 
 package org.apache.airavata.gfac.ssh.provider.impl;
 
-import org.airavata.appcatalog.cpi.AppCatalogException;
+import org.apache.airavata.registry.cpi.AppCatalogException;
 import org.apache.airavata.common.exception.AiravataException;
 import org.apache.airavata.common.exception.ApplicationSettingsException;
 import org.apache.airavata.common.utils.MonitorPublisher;

http://git-wip-us.apache.org/repos/asf/airavata/blob/ec8c6202/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/ssh/util/GFACSSHUtils.java
----------------------------------------------------------------------
diff --git a/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/ssh/util/GFACSSHUtils.java b/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/ssh/util/GFACSSHUtils.java
index 307d8c3..ae4eaa5 100644
--- a/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/ssh/util/GFACSSHUtils.java
+++ b/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/ssh/util/GFACSSHUtils.java
@@ -20,8 +20,8 @@
 */
 package org.apache.airavata.gfac.ssh.util;
 
-import org.airavata.appcatalog.cpi.AppCatalog;
-import org.airavata.appcatalog.cpi.AppCatalogException;
+import org.apache.airavata.registry.cpi.AppCatalog;
+import org.apache.airavata.registry.cpi.AppCatalogException;
 import org.apache.airavata.common.exception.ApplicationSettingsException;
 import org.apache.airavata.common.utils.ServerSettings;
 import org.apache.airavata.credential.store.credential.impl.ssh.SSHCredential;

http://git-wip-us.apache.org/repos/asf/airavata/blob/ec8c6202/modules/gfac/gfac-impl/src/test/java/org/apache/airavata/job/AMQPMonitorTest.java
----------------------------------------------------------------------
diff --git a/modules/gfac/gfac-impl/src/test/java/org/apache/airavata/job/AMQPMonitorTest.java b/modules/gfac/gfac-impl/src/test/java/org/apache/airavata/job/AMQPMonitorTest.java
index aecc8c2..fc0ea30 100644
--- a/modules/gfac/gfac-impl/src/test/java/org/apache/airavata/job/AMQPMonitorTest.java
+++ b/modules/gfac/gfac-impl/src/test/java/org/apache/airavata/job/AMQPMonitorTest.java
@@ -22,7 +22,7 @@ package org.apache.airavata.job;
 
 import com.google.common.eventbus.EventBus;
 import com.google.common.eventbus.Subscribe;
-import org.airavata.appcatalog.cpi.AppCatalog;
+import org.apache.airavata.registry.cpi.AppCatalog;
 import org.apache.aiaravata.application.catalog.data.impl.AppCatalogFactory;
 import org.apache.airavata.common.utils.MonitorPublisher;
 import org.apache.airavata.gfac.core.JobDescriptor;

http://git-wip-us.apache.org/repos/asf/airavata/blob/ec8c6202/modules/gfac/gfac-service/src/main/java/org/apache/airavata/gfac/server/GfacServerHandler.java
----------------------------------------------------------------------
diff --git a/modules/gfac/gfac-service/src/main/java/org/apache/airavata/gfac/server/GfacServerHandler.java b/modules/gfac/gfac-service/src/main/java/org/apache/airavata/gfac/server/GfacServerHandler.java
index 64c06e4..c3abe78 100644
--- a/modules/gfac/gfac-service/src/main/java/org/apache/airavata/gfac/server/GfacServerHandler.java
+++ b/modules/gfac/gfac-service/src/main/java/org/apache/airavata/gfac/server/GfacServerHandler.java
@@ -21,7 +21,7 @@
 package org.apache.airavata.gfac.server;
 
 import com.google.common.eventbus.EventBus;
-import org.airavata.appcatalog.cpi.AppCatalog;
+import org.apache.airavata.registry.cpi.AppCatalog;
 import org.apache.aiaravata.application.catalog.data.impl.AppCatalogFactory;
 import org.apache.airavata.common.exception.AiravataException;
 import org.apache.airavata.common.exception.ApplicationSettingsException;
@@ -33,6 +33,7 @@ import org.apache.airavata.common.utils.MonitorPublisher;
 import org.apache.airavata.common.utils.ServerSettings;
 import org.apache.airavata.common.utils.ThriftUtils;
 import org.apache.airavata.common.utils.listener.AbstractActivityListener;
+import org.apache.airavata.registry.core.experiment.catalog.impl.RegistryFactory;
 import org.apache.airavata.gfac.GFacConfiguration;
 import org.apache.airavata.gfac.GFacException;
 import org.apache.airavata.gfac.core.GFac;
@@ -56,10 +57,9 @@ import org.apache.airavata.model.messaging.event.TaskSubmitEvent;
 import org.apache.airavata.model.messaging.event.TaskTerminateEvent;
 import org.apache.airavata.model.workspace.experiment.ExperimentState;
 import org.apache.airavata.model.workspace.experiment.ExperimentStatus;
-import org.apache.airavata.persistance.registry.jpa.impl.RegistryFactory;
-import org.apache.airavata.registry.cpi.Registry;
+import org.apache.airavata.registry.cpi.ExperimentCatalog;
+import org.apache.airavata.registry.cpi.ExperimentCatalogModelType;
 import org.apache.airavata.registry.cpi.RegistryException;
-import org.apache.airavata.registry.cpi.RegistryModelType;
 import org.apache.curator.RetryPolicy;
 import org.apache.curator.framework.CuratorFramework;
 import org.apache.curator.framework.CuratorFrameworkFactory;
@@ -87,7 +87,7 @@ public class GfacServerHandler implements GfacService.Iface {
     private final static AiravataLogger logger = AiravataLoggerFactory.getLogger(GfacServerHandler.class);
     private static RabbitMQTaskLaunchConsumer rabbitMQTaskLaunchConsumer;
     private static int requestCount=0;
-    private Registry registry;
+    private ExperimentCatalog experimentCatalog;
     private AppCatalog appCatalog;
     private String gatewayName;
     private String airavataUserName;
@@ -114,17 +114,17 @@ public class GfacServerHandler implements GfacService.Iface {
                     + ":" + ServerSettings.getSetting(Constants.GFAC_SERVER_PORT);
             storeServerConfig();
             publisher = new MonitorPublisher(new EventBus());
-            registry = RegistryFactory.getDefaultRegistry();
+            experimentCatalog = RegistryFactory.getDefaultRegistry();
             appCatalog = AppCatalogFactory.getAppCatalog();
             setGatewayProperties();
             startDaemonHandlers();
             // initializing Better Gfac Instance
-            BetterGfacImpl.getInstance().init(registry, appCatalog, curatorClient, publisher);
+            BetterGfacImpl.getInstance().init(experimentCatalog, appCatalog, curatorClient, publisher);
             if (ServerSettings.isGFacPassiveMode()) {
                 rabbitMQTaskLaunchConsumer = new RabbitMQTaskLaunchConsumer();
                 rabbitMQTaskLaunchConsumer.listen(new TaskLaunchMessageHandler());
             }
-            startStatusUpdators(registry, curatorClient, publisher, rabbitMQTaskLaunchConsumer);
+            startStatusUpdators(experimentCatalog, curatorClient, publisher, rabbitMQTaskLaunchConsumer);
 
         } catch (Exception e) {
             throw new Exception("Error initialising GFAC", e);
@@ -227,12 +227,12 @@ public class GfacServerHandler implements GfacService.Iface {
         }
     }
 
-    public Registry getRegistry() {
-        return registry;
+    public ExperimentCatalog getExperimentCatalog() {
+        return experimentCatalog;
     }
 
-    public void setRegistry(Registry registry) {
-        this.registry = registry;
+    public void setExperimentCatalog(ExperimentCatalog experimentCatalog) {
+        this.experimentCatalog = experimentCatalog;
     }
 
     public String getGatewayName() {
@@ -258,7 +258,7 @@ public class GfacServerHandler implements GfacService.Iface {
 
     private GFac getGfac() throws TException {
         GFac gFac = BetterGfacImpl.getInstance();
-        gFac.init(registry, appCatalog, curatorClient, publisher);
+        gFac.init(experimentCatalog, appCatalog, curatorClient, publisher);
         return gFac;
     }
 
@@ -288,7 +288,7 @@ public class GfacServerHandler implements GfacService.Iface {
     }
 
 
-    public static void startStatusUpdators(Registry registry, CuratorFramework curatorClient, MonitorPublisher publisher,
+    public static void startStatusUpdators(ExperimentCatalog experimentCatalog, CuratorFramework curatorClient, MonitorPublisher publisher,
 
                                            RabbitMQTaskLaunchConsumer rabbitMQTaskLaunchConsumer) {
         try {
@@ -298,7 +298,7 @@ public class GfacServerHandler implements GfacService.Iface {
                 Class<? extends AbstractActivityListener> aClass = Class.forName(listenerClass).asSubclass(AbstractActivityListener.class);
                 AbstractActivityListener abstractActivityListener = aClass.newInstance();
                 activityListeners.add(abstractActivityListener);
-                abstractActivityListener.setup(publisher, registry, curatorClient, rabbitMQPublisher, rabbitMQTaskLaunchConsumer);
+                abstractActivityListener.setup(publisher, experimentCatalog, curatorClient, rabbitMQPublisher, rabbitMQTaskLaunchConsumer);
                 logger.info("Registering listener: " + listenerClass);
                 publisher.registerListener(abstractActivityListener);
             }
@@ -365,7 +365,7 @@ public class GfacServerHandler implements GfacService.Iface {
                     ExperimentStatus status = new ExperimentStatus();
                     status.setExperimentState(ExperimentState.EXECUTING);
                     status.setTimeOfStateChange(Calendar.getInstance().getTimeInMillis());
-                    registry.update(RegistryModelType.EXPERIMENT_STATUS, status, event.getExperimentId());
+                    experimentCatalog.update(ExperimentCatalogModelType.EXPERIMENT_STATUS, status, event.getExperimentId());
                     experimentNode = ServerSettings.getSetting(Constants.ZOOKEEPER_GFAC_EXPERIMENT_NODE, "/gfac-experiments");
                     try {
                         GFacUtils.createExperimentEntryForPassive(event.getExperimentId(), event.getTaskId(), curatorClient,

http://git-wip-us.apache.org/repos/asf/airavata/blob/ec8c6202/modules/gfac/gfac-service/src/test/java/org/apache/airavata/gfac/client/GfacClientFactoryTest.java
----------------------------------------------------------------------
diff --git a/modules/gfac/gfac-service/src/test/java/org/apache/airavata/gfac/client/GfacClientFactoryTest.java b/modules/gfac/gfac-service/src/test/java/org/apache/airavata/gfac/client/GfacClientFactoryTest.java
index b01c8a5..ce88c18 100644
--- a/modules/gfac/gfac-service/src/test/java/org/apache/airavata/gfac/client/GfacClientFactoryTest.java
+++ b/modules/gfac/gfac-service/src/test/java/org/apache/airavata/gfac/client/GfacClientFactoryTest.java
@@ -24,7 +24,7 @@ package org.apache.airavata.gfac.client;
 import org.apache.airavata.gfac.client.util.Initialize;
 import org.apache.airavata.gfac.cpi.GfacService;
 import org.apache.airavata.gfac.server.GfacServer;
-import org.apache.airavata.registry.cpi.Registry;
+import org.apache.airavata.registry.cpi.ExperimentCatalog;
 import org.apache.zookeeper.server.ServerCnxnFactory;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -33,7 +33,7 @@ public class GfacClientFactoryTest {
     private final static Logger logger = LoggerFactory.getLogger(GfacClientFactoryTest.class);
 //    private DocumentCreator documentCreator;
     private GfacService.Client gfacClient;
-    private Registry registry;
+    private ExperimentCatalog experimentCatalog;
     private int NUM_CONCURRENT_REQUESTS = 1;
     Initialize initialize;
     GfacServer service;

http://git-wip-us.apache.org/repos/asf/airavata/blob/ec8c6202/modules/gfac/gfac-service/src/test/java/org/apache/airavata/gfac/client/util/Initialize.java
----------------------------------------------------------------------
diff --git a/modules/gfac/gfac-service/src/test/java/org/apache/airavata/gfac/client/util/Initialize.java b/modules/gfac/gfac-service/src/test/java/org/apache/airavata/gfac/client/util/Initialize.java
index 15d384c..548d4b5 100644
--- a/modules/gfac/gfac-service/src/test/java/org/apache/airavata/gfac/client/util/Initialize.java
+++ b/modules/gfac/gfac-service/src/test/java/org/apache/airavata/gfac/client/util/Initialize.java
@@ -23,8 +23,8 @@ package org.apache.airavata.gfac.client.util;
 
 import org.apache.airavata.common.exception.ApplicationSettingsException;
 import org.apache.airavata.common.utils.ServerSettings;
-import org.apache.airavata.experiment.catalog.ResourceType;
-import org.apache.airavata.experiment.catalog.resources.*;
+import org.apache.airavata.registry.core.experiment.catalog.ResourceType;
+import org.apache.airavata.registry.core.experiment.catalog.resources.*;
 import org.apache.airavata.registry.cpi.RegistryException;
 import org.apache.derby.drda.NetworkServerControl;
 import org.slf4j.Logger;

http://git-wip-us.apache.org/repos/asf/airavata/blob/ec8c6202/modules/integration-tests/src/test/java/org/apache/airavata/integration/DataRetrievalIT.java
----------------------------------------------------------------------
diff --git a/modules/integration-tests/src/test/java/org/apache/airavata/integration/DataRetrievalIT.java b/modules/integration-tests/src/test/java/org/apache/airavata/integration/DataRetrievalIT.java
index a23fff0..a9e743a 100644
--- a/modules/integration-tests/src/test/java/org/apache/airavata/integration/DataRetrievalIT.java
+++ b/modules/integration-tests/src/test/java/org/apache/airavata/integration/DataRetrievalIT.java
@@ -21,7 +21,7 @@
 
 package org.apache.airavata.integration;
 
-import org.airavata.appcatalog.cpi.AppCatalogException;
+import org.apache.airavata.registry.cpi.AppCatalogException;
 import org.apache.airavata.api.Airavata.Client;
 import org.apache.airavata.common.exception.ApplicationSettingsException;
 import org.apache.airavata.integration.tools.DocumentCreatorNew;

http://git-wip-us.apache.org/repos/asf/airavata/blob/ec8c6202/modules/integration-tests/src/test/java/org/apache/airavata/integration/tools/DocumentCreatorNew.java
----------------------------------------------------------------------
diff --git a/modules/integration-tests/src/test/java/org/apache/airavata/integration/tools/DocumentCreatorNew.java b/modules/integration-tests/src/test/java/org/apache/airavata/integration/tools/DocumentCreatorNew.java
index 34786fe..ff0dd1c 100644
--- a/modules/integration-tests/src/test/java/org/apache/airavata/integration/tools/DocumentCreatorNew.java
+++ b/modules/integration-tests/src/test/java/org/apache/airavata/integration/tools/DocumentCreatorNew.java
@@ -20,10 +20,9 @@
 */
 package org.apache.airavata.integration.tools;
 
-import org.airavata.appcatalog.cpi.AppCatalog;
-import org.airavata.appcatalog.cpi.AppCatalogException;
+import org.apache.airavata.registry.cpi.AppCatalog;
+import org.apache.airavata.registry.cpi.AppCatalogException;
 import org.apache.airavata.api.Airavata;
-import org.apache.airavata.common.utils.ClientSettings;
 import org.apache.airavata.model.appcatalog.appdeployment.ApplicationDeploymentDescription;
 import org.apache.airavata.model.appcatalog.appdeployment.ApplicationModule;
 import org.apache.airavata.model.appcatalog.appdeployment.ApplicationParallelismType;

http://git-wip-us.apache.org/repos/asf/airavata/blob/ec8c6202/modules/integration-tests/src/test/java/org/apache/airavata/integration/tools/DocumentCreatorUtils.java
----------------------------------------------------------------------
diff --git a/modules/integration-tests/src/test/java/org/apache/airavata/integration/tools/DocumentCreatorUtils.java b/modules/integration-tests/src/test/java/org/apache/airavata/integration/tools/DocumentCreatorUtils.java
index a49d22f..caad455 100644
--- a/modules/integration-tests/src/test/java/org/apache/airavata/integration/tools/DocumentCreatorUtils.java
+++ b/modules/integration-tests/src/test/java/org/apache/airavata/integration/tools/DocumentCreatorUtils.java
@@ -21,7 +21,7 @@
 
 package org.apache.airavata.integration.tools;
 
-import org.airavata.appcatalog.cpi.AppCatalogException;
+import org.apache.airavata.registry.cpi.AppCatalogException;
 import org.apache.airavata.model.appcatalog.appdeployment.ApplicationDeploymentDescription;
 import org.apache.airavata.model.appcatalog.appdeployment.ApplicationModule;
 import org.apache.airavata.model.appcatalog.appdeployment.ApplicationParallelismType;
@@ -39,7 +39,6 @@ import org.apache.airavata.model.appcatalog.gatewayprofile.ComputeResourcePrefer
 
 import java.util.List;
 import java.util.Map;
-import java.util.Set;
 
 public class DocumentCreatorUtils {
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/ec8c6202/modules/orchestrator/orchestrator-core/src/main/java/org/apache/airavata/orchestrator/core/validator/impl/BatchQueueValidator.java
----------------------------------------------------------------------
diff --git a/modules/orchestrator/orchestrator-core/src/main/java/org/apache/airavata/orchestrator/core/validator/impl/BatchQueueValidator.java b/modules/orchestrator/orchestrator-core/src/main/java/org/apache/airavata/orchestrator/core/validator/impl/BatchQueueValidator.java
index a0d6ce5..e3b2cdc 100644
--- a/modules/orchestrator/orchestrator-core/src/main/java/org/apache/airavata/orchestrator/core/validator/impl/BatchQueueValidator.java
+++ b/modules/orchestrator/orchestrator-core/src/main/java/org/apache/airavata/orchestrator/core/validator/impl/BatchQueueValidator.java
@@ -29,7 +29,7 @@ import org.apache.airavata.model.error.ValidationResults;
 import org.apache.airavata.model.error.ValidatorResult;
 import org.apache.airavata.model.workspace.experiment.*;
 import org.apache.airavata.orchestrator.core.validator.JobMetadataValidator;
-import org.apache.airavata.experiment.catalog.impl.RegistryFactory;
+import org.apache.airavata.registry.core.experiment.catalog.impl.RegistryFactory;
 import org.apache.airavata.registry.cpi.Registry;
 import org.apache.airavata.registry.cpi.RegistryException;
 import org.slf4j.Logger;

http://git-wip-us.apache.org/repos/asf/airavata/blob/ec8c6202/modules/orchestrator/orchestrator-core/src/main/java/org/apache/airavata/orchestrator/cpi/impl/AbstractOrchestrator.java
----------------------------------------------------------------------
diff --git a/modules/orchestrator/orchestrator-core/src/main/java/org/apache/airavata/orchestrator/cpi/impl/AbstractOrchestrator.java b/modules/orchestrator/orchestrator-core/src/main/java/org/apache/airavata/orchestrator/cpi/impl/AbstractOrchestrator.java
index 87e862b..9835fc5 100644
--- a/modules/orchestrator/orchestrator-core/src/main/java/org/apache/airavata/orchestrator/cpi/impl/AbstractOrchestrator.java
+++ b/modules/orchestrator/orchestrator-core/src/main/java/org/apache/airavata/orchestrator/cpi/impl/AbstractOrchestrator.java
@@ -27,7 +27,7 @@ import org.apache.airavata.orchestrator.core.context.OrchestratorContext;
 import org.apache.airavata.orchestrator.core.exception.OrchestratorException;
 import org.apache.airavata.orchestrator.core.utils.OrchestratorUtils;
 import org.apache.airavata.orchestrator.cpi.Orchestrator;
-import org.apache.airavata.experiment.catalog.impl.RegistryImpl;
+import org.apache.airavata.registry.core.experiment.catalog.impl.RegistryImpl;
 import org.apache.airavata.registry.cpi.RegistryException;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;

http://git-wip-us.apache.org/repos/asf/airavata/blob/ec8c6202/modules/orchestrator/orchestrator-core/src/test/java/org/apache/airavata/orchestrator/core/util/Initialize.java
----------------------------------------------------------------------
diff --git a/modules/orchestrator/orchestrator-core/src/test/java/org/apache/airavata/orchestrator/core/util/Initialize.java b/modules/orchestrator/orchestrator-core/src/test/java/org/apache/airavata/orchestrator/core/util/Initialize.java
index ff2b0c6..5b0247f 100644
--- a/modules/orchestrator/orchestrator-core/src/test/java/org/apache/airavata/orchestrator/core/util/Initialize.java
+++ b/modules/orchestrator/orchestrator-core/src/test/java/org/apache/airavata/orchestrator/core/util/Initialize.java
@@ -23,8 +23,8 @@ package org.apache.airavata.orchestrator.core.util;
 
 import org.apache.airavata.common.exception.ApplicationSettingsException;
 import org.apache.airavata.common.utils.ServerSettings;
-import org.apache.airavata.experiment.catalog.ResourceType;
-import org.apache.airavata.experiment.catalog.resources.*;
+import org.apache.airavata.registry.core.experiment.catalog.ResourceType;
+import org.apache.airavata.registry.core.experiment.catalog.resources.*;
 import org.apache.airavata.registry.cpi.RegistryException;
 import org.apache.derby.drda.NetworkServerControl;
 import org.slf4j.Logger;

http://git-wip-us.apache.org/repos/asf/airavata/blob/ec8c6202/modules/orchestrator/orchestrator-service/src/main/java/org/apache/airavata/orchestrator/server/OrchestratorServerHandler.java
----------------------------------------------------------------------
diff --git a/modules/orchestrator/orchestrator-service/src/main/java/org/apache/airavata/orchestrator/server/OrchestratorServerHandler.java b/modules/orchestrator/orchestrator-service/src/main/java/org/apache/airavata/orchestrator/server/OrchestratorServerHandler.java
index 8f94633..694f783 100644
--- a/modules/orchestrator/orchestrator-service/src/main/java/org/apache/airavata/orchestrator/server/OrchestratorServerHandler.java
+++ b/modules/orchestrator/orchestrator-service/src/main/java/org/apache/airavata/orchestrator/server/OrchestratorServerHandler.java
@@ -21,9 +21,9 @@
 
 package org.apache.airavata.orchestrator.server;
 
-import org.airavata.appcatalog.cpi.AppCatalog;
-import org.airavata.appcatalog.cpi.AppCatalogException;
-import org.airavata.appcatalog.cpi.ComputeResource;
+import org.apache.airavata.registry.cpi.AppCatalog;
+import org.apache.airavata.registry.cpi.AppCatalogException;
+import org.apache.airavata.registry.cpi.ComputeResource;
 import org.apache.aiaravata.application.catalog.data.impl.AppCatalogFactory;
 import org.apache.aiaravata.application.catalog.data.resources.AbstractResource;
 import org.apache.airavata.common.exception.AiravataException;
@@ -67,10 +67,10 @@ import org.apache.airavata.orchestrator.cpi.impl.SimpleOrchestratorImpl;
 import org.apache.airavata.orchestrator.cpi.orchestrator_cpi_serviceConstants;
 import org.apache.airavata.orchestrator.util.DataModelUtils;
 import org.apache.airavata.orchestrator.util.OrchestratorServerThreadPoolExecutor;
-import org.apache.airavata.experiment.catalog.impl.RegistryFactory;
-import org.apache.airavata.registry.cpi.Registry;
+import org.apache.airavata.registry.core.experiment.catalog.impl.RegistryFactory;
+import org.apache.airavata.registry.cpi.ExperimentCatalog;
+import org.apache.airavata.registry.cpi.ExperimentCatalogModelType;
 import org.apache.airavata.registry.cpi.RegistryException;
-import org.apache.airavata.registry.cpi.RegistryModelType;
 import org.apache.airavata.registry.cpi.utils.Constants.FieldConstants.TaskDetailConstants;
 import org.apache.airavata.registry.cpi.utils.Constants.FieldConstants.WorkflowNodeConstants;
 import org.apache.airavata.workflow.core.WorkflowEnactmentService;
@@ -86,7 +86,7 @@ import java.util.Map;
 public class OrchestratorServerHandler implements OrchestratorService.Iface {
 	private static AiravataLogger log = AiravataLoggerFactory .getLogger(OrchestratorServerHandler.class);
 	private SimpleOrchestratorImpl orchestrator = null;
-	private Registry registry;
+	private ExperimentCatalog experimentCatalog;
 	private static Integer mutex = new Integer(-1);
 	private String airavataUserName;
 	private String gatewayName;
@@ -123,7 +123,7 @@ public class OrchestratorServerHandler implements OrchestratorService.Iface {
 			// first constructing the monitorManager and orchestrator, then fill
 			// the required properties
 			orchestrator = new SimpleOrchestratorImpl();
-			registry = RegistryFactory.getDefaultRegistry();
+			experimentCatalog = RegistryFactory.getDefaultRegistry();
 			orchestrator.initialize();
 			orchestrator.getOrchestratorContext().setPublisher(this.publisher);
             startProcessConsumer();
@@ -160,8 +160,8 @@ public class OrchestratorServerHandler implements OrchestratorService.Iface {
 	public boolean launchExperiment(String experimentId, String token) throws TException {
         Experiment experiment = null; // this will inside the bottom catch statement
         try {
-            experiment = (Experiment) registry.get(
-                    RegistryModelType.EXPERIMENT, experimentId);
+            experiment = (Experiment) experimentCatalog.get(
+                    ExperimentCatalogModelType.EXPERIMENT, experimentId);
             if (experiment == null) {
                 log.errorId(experimentId, "Error retrieving the Experiment by the given experimentID: {} ", experimentId);
                 return false;
@@ -216,22 +216,22 @@ public class OrchestratorServerHandler implements OrchestratorService.Iface {
 			if (tasks.size() > 1) {
 				log.info("There are multiple tasks for this experiment, So Orchestrator will launch multiple Jobs");
 			}
-			List<String> ids = registry.getIds(
-					RegistryModelType.WORKFLOW_NODE_DETAIL,
+			List<String> ids = experimentCatalog.getIds(
+					ExperimentCatalogModelType.WORKFLOW_NODE_DETAIL,
 					WorkflowNodeConstants.EXPERIMENT_ID, experimentId);
 			for (String workflowNodeId : ids) {
-				WorkflowNodeDetails workflowNodeDetail = (WorkflowNodeDetails) registry
-						.get(RegistryModelType.WORKFLOW_NODE_DETAIL,
+				WorkflowNodeDetails workflowNodeDetail = (WorkflowNodeDetails) experimentCatalog
+						.get(ExperimentCatalogModelType.WORKFLOW_NODE_DETAIL,
 								workflowNodeId);
-				List<Object> taskDetailList = registry.get(
-						RegistryModelType.TASK_DETAIL,
+				List<Object> taskDetailList = experimentCatalog.get(
+						ExperimentCatalogModelType.TASK_DETAIL,
 						TaskDetailConstants.NODE_ID, workflowNodeId);
 				for (Object o : taskDetailList) {
 					TaskDetails taskID = (TaskDetails) o;
 					// iterate through all the generated tasks and performs the
 					// job submisssion+monitoring
-					Experiment experiment = (Experiment) registry.get(
-							RegistryModelType.EXPERIMENT, experimentId);
+					Experiment experiment = (Experiment) experimentCatalog.get(
+							ExperimentCatalogModelType.EXPERIMENT, experimentId);
 					if (experiment == null) {
 						log.errorId(experimentId, "Error retrieving the Experiment by the given experimentID: {}.",
                                 experimentId);
@@ -284,8 +284,8 @@ public class OrchestratorServerHandler implements OrchestratorService.Iface {
 	@Override
 	public boolean launchTask(String taskId, String airavataCredStoreToken) throws TException {
 		try {
-			TaskDetails taskData = (TaskDetails) registry.get(
-					RegistryModelType.TASK_DETAIL, taskId);
+			TaskDetails taskData = (TaskDetails) experimentCatalog.get(
+					ExperimentCatalogModelType.TASK_DETAIL, taskId);
 			String applicationId = taskData.getApplicationId();
 			if (applicationId == null) {
                 log.errorId(taskId, "Application id shouldn't be null.");
@@ -293,12 +293,12 @@ public class OrchestratorServerHandler implements OrchestratorService.Iface {
 			}
 			ApplicationDeploymentDescription applicationDeploymentDescription = getAppDeployment(taskData, applicationId);
             taskData.setApplicationDeploymentId(applicationDeploymentDescription.getAppDeploymentId());
-			registry.update(RegistryModelType.TASK_DETAIL, taskData,taskData.getTaskID());
-			List<Object> workflowNodeDetailList = registry.get(RegistryModelType.WORKFLOW_NODE_DETAIL,
+			experimentCatalog.update(ExperimentCatalogModelType.TASK_DETAIL, taskData,taskData.getTaskID());
+			List<Object> workflowNodeDetailList = experimentCatalog.get(ExperimentCatalogModelType.WORKFLOW_NODE_DETAIL,
 							org.apache.airavata.registry.cpi.utils.Constants.FieldConstants.WorkflowNodeConstants.TASK_LIST, taskData);
 			if (workflowNodeDetailList != null
 					&& workflowNodeDetailList.size() > 0) {
-				List<Object> experimentList = registry.get(RegistryModelType.EXPERIMENT,
+				List<Object> experimentList = experimentCatalog.get(ExperimentCatalogModelType.EXPERIMENT,
 								org.apache.airavata.registry.cpi.utils.Constants.FieldConstants.ExperimentConstants.WORKFLOW_NODE_LIST,
 								(WorkflowNodeDetails) workflowNodeDetailList.get(0));
 				if (experimentList != null && experimentList.size() > 0) {
@@ -371,8 +371,8 @@ public class OrchestratorServerHandler implements OrchestratorService.Iface {
 
     private boolean validateStatesAndCancel(String experimentId, String tokenId)throws TException{
         try {
-            Experiment experiment = (Experiment) registry.get(
-                    RegistryModelType.EXPERIMENT, experimentId);
+            Experiment experiment = (Experiment) experimentCatalog.get(
+                    ExperimentCatalogModelType.EXPERIMENT, experimentId);
 			log.info("Waiting for zookeeper to connect to the server");
 			synchronized (mutex){
 				mutex.wait(5000);
@@ -388,15 +388,15 @@ public class OrchestratorServerHandler implements OrchestratorService.Iface {
                 status.setTimeOfStateChange(Calendar.getInstance()
                         .getTimeInMillis());
                 experiment.setExperimentStatus(status);
-                registry.update(RegistryModelType.EXPERIMENT, experiment,
+                experimentCatalog.update(ExperimentCatalogModelType.EXPERIMENT, experiment,
                         experimentId);
 
-                List<String> ids = registry.getIds(
-                        RegistryModelType.WORKFLOW_NODE_DETAIL,
+                List<String> ids = experimentCatalog.getIds(
+                        ExperimentCatalogModelType.WORKFLOW_NODE_DETAIL,
                         WorkflowNodeConstants.EXPERIMENT_ID, experimentId);
                 for (String workflowNodeId : ids) {
-                    WorkflowNodeDetails workflowNodeDetail = (WorkflowNodeDetails) registry
-                            .get(RegistryModelType.WORKFLOW_NODE_DETAIL,
+                    WorkflowNodeDetails workflowNodeDetail = (WorkflowNodeDetails) experimentCatalog
+                            .get(ExperimentCatalogModelType.WORKFLOW_NODE_DETAIL,
                                     workflowNodeId);
                     int value = workflowNodeDetail.getWorkflowNodeStatus().getWorkflowNodeState().getValue();
                     if ( value> 1 && value < 7) { // we skip the unknown state
@@ -409,11 +409,11 @@ public class OrchestratorServerHandler implements OrchestratorService.Iface {
                         workflowNodeStatus.setTimeOfStateChange(Calendar.getInstance()
                                 .getTimeInMillis());
                         workflowNodeDetail.setWorkflowNodeStatus(workflowNodeStatus);
-                        registry.update(RegistryModelType.WORKFLOW_NODE_DETAIL, workflowNodeDetail,
+                        experimentCatalog.update(ExperimentCatalogModelType.WORKFLOW_NODE_DETAIL, workflowNodeDetail,
                                 workflowNodeId);
                     }
-                    List<Object> taskDetailList = registry.get(
-                            RegistryModelType.TASK_DETAIL,
+                    List<Object> taskDetailList = experimentCatalog.get(
+                            ExperimentCatalogModelType.TASK_DETAIL,
                             TaskDetailConstants.NODE_ID, workflowNodeId);
                     for (Object o : taskDetailList) {
                         TaskDetails taskDetails = (TaskDetails) o;
@@ -427,7 +427,7 @@ public class OrchestratorServerHandler implements OrchestratorService.Iface {
                             taskStatus.setTimeOfStateChange(Calendar.getInstance()
                                     .getTimeInMillis());
                             taskDetails.setTaskStatus(taskStatus);
-                            registry.update(RegistryModelType.TASK_DETAIL, o,
+                            experimentCatalog.update(ExperimentCatalogModelType.TASK_DETAIL, o,
                                     taskDetails.getTaskID());
                         }
                         orchestrator.cancelExperiment(experiment,
@@ -444,24 +444,24 @@ public class OrchestratorServerHandler implements OrchestratorService.Iface {
                     status.setTimeOfStateChange(Calendar.getInstance()
                             .getTimeInMillis());
                     experiment.setExperimentStatus(status);
-                    registry.update(RegistryModelType.EXPERIMENT, experiment,
+                    experimentCatalog.update(ExperimentCatalogModelType.EXPERIMENT, experiment,
                             experimentId);
-                    List<String> ids = registry.getIds(
-                            RegistryModelType.WORKFLOW_NODE_DETAIL,
+                    List<String> ids = experimentCatalog.getIds(
+                            ExperimentCatalogModelType.WORKFLOW_NODE_DETAIL,
                             WorkflowNodeConstants.EXPERIMENT_ID, experimentId);
                     for (String workflowNodeId : ids) {
-                        WorkflowNodeDetails workflowNodeDetail = (WorkflowNodeDetails) registry
-                                .get(RegistryModelType.WORKFLOW_NODE_DETAIL,
+                        WorkflowNodeDetails workflowNodeDetail = (WorkflowNodeDetails) experimentCatalog
+                                .get(ExperimentCatalogModelType.WORKFLOW_NODE_DETAIL,
                                         workflowNodeId);
                         WorkflowNodeStatus workflowNodeStatus = new WorkflowNodeStatus();
                         workflowNodeStatus.setWorkflowNodeState(WorkflowNodeState.CANCELED);
                         workflowNodeStatus.setTimeOfStateChange(Calendar.getInstance()
                                 .getTimeInMillis());
                         workflowNodeDetail.setWorkflowNodeStatus(workflowNodeStatus);
-                        registry.update(RegistryModelType.WORKFLOW_NODE_DETAIL, workflowNodeDetail,
+                        experimentCatalog.update(ExperimentCatalogModelType.WORKFLOW_NODE_DETAIL, workflowNodeDetail,
                                 workflowNodeId);
-                        List<Object> taskDetailList = registry.get(
-                                RegistryModelType.TASK_DETAIL,
+                        List<Object> taskDetailList = experimentCatalog.get(
+                                ExperimentCatalogModelType.TASK_DETAIL,
                                 TaskDetailConstants.NODE_ID, workflowNodeId);
                         for (Object o : taskDetailList) {
                             TaskDetails taskDetails = (TaskDetails) o;
@@ -470,7 +470,7 @@ public class OrchestratorServerHandler implements OrchestratorService.Iface {
                             taskStatus.setTimeOfStateChange(Calendar.getInstance()
                                     .getTimeInMillis());
                             taskDetails.setTaskStatus(taskStatus);
-                            registry.update(RegistryModelType.TASK_DETAIL, o,
+                            experimentCatalog.update(ExperimentCatalogModelType.TASK_DETAIL, o,
                                     taskDetails);
                         }
                     }
@@ -547,14 +547,14 @@ public class OrchestratorServerHandler implements OrchestratorService.Iface {
         private boolean launchSingleAppExperiment() throws TException {
             Experiment experiment = null;
             try {
-                List<String> ids = registry.getIds(RegistryModelType.WORKFLOW_NODE_DETAIL, WorkflowNodeConstants.EXPERIMENT_ID, experimentId);
+                List<String> ids = experimentCatalog.getIds(ExperimentCatalogModelType.WORKFLOW_NODE_DETAIL, WorkflowNodeConstants.EXPERIMENT_ID, experimentId);
                 for (String workflowNodeId : ids) {
 //                WorkflowNodeDetails workflowNodeDetail = (WorkflowNodeDetails) registry.get(RegistryModelType.WORKFLOW_NODE_DETAIL, workflowNodeId);
-                    List<Object> taskDetailList = registry.get(RegistryModelType.TASK_DETAIL, TaskDetailConstants.NODE_ID, workflowNodeId);
+                    List<Object> taskDetailList = experimentCatalog.get(ExperimentCatalogModelType.TASK_DETAIL, TaskDetailConstants.NODE_ID, workflowNodeId);
                     for (Object o : taskDetailList) {
                         TaskDetails taskData = (TaskDetails) o;
                         //iterate through all the generated tasks and performs the job submisssion+monitoring
-                        experiment = (Experiment) registry.get(RegistryModelType.EXPERIMENT, experimentId);
+                        experiment = (Experiment) experimentCatalog.get(ExperimentCatalogModelType.EXPERIMENT, experimentId);
                         if (experiment == null) {
                             log.errorId(experimentId, "Error retrieving the Experiment by the given experimentID: {}", experimentId);
                             return false;
@@ -578,7 +578,7 @@ public class OrchestratorServerHandler implements OrchestratorService.Iface {
                         MessageContext messageContext = new MessageContext(event, MessageType.EXPERIMENT, messageId, gatewayId);
                         messageContext.setUpdatedTime(AiravataUtils.getCurrentTimestamp());
                         publisher.publish(messageContext);
-                        registry.update(RegistryModelType.TASK_DETAIL, taskData, taskData.getTaskID());
+                        experimentCatalog.update(ExperimentCatalogModelType.TASK_DETAIL, taskData, taskData.getTaskID());
                         //launching the experiment
                         launchTask(taskData.getTaskID(), airavataCredStoreToken);
                     }
@@ -594,7 +594,7 @@ public class OrchestratorServerHandler implements OrchestratorService.Iface {
                 status.setTimeOfStateChange(Calendar.getInstance().getTimeInMillis());
                 experiment.setExperimentStatus(status);
                 try {
-                    registry.update(RegistryModelType.EXPERIMENT_STATUS, status, experimentId);
+                    experimentCatalog.update(ExperimentCatalogModelType.EXPERIMENT_STATUS, status, experimentId);
                 } catch (RegistryException e1) {
                     log.errorId(experimentId, "Error while updating experiment status to " + status.toString(), e);
                     throw new TException(e);

http://git-wip-us.apache.org/repos/asf/airavata/blob/ec8c6202/modules/orchestrator/orchestrator-service/src/main/java/org/apache/airavata/orchestrator/util/DataModelUtils.java
----------------------------------------------------------------------
diff --git a/modules/orchestrator/orchestrator-service/src/main/java/org/apache/airavata/orchestrator/util/DataModelUtils.java b/modules/orchestrator/orchestrator-service/src/main/java/org/apache/airavata/orchestrator/util/DataModelUtils.java
index da11a59..86ec301 100644
--- a/modules/orchestrator/orchestrator-service/src/main/java/org/apache/airavata/orchestrator/util/DataModelUtils.java
+++ b/modules/orchestrator/orchestrator-service/src/main/java/org/apache/airavata/orchestrator/util/DataModelUtils.java
@@ -23,8 +23,8 @@ package org.apache.airavata.orchestrator.util;
 
 import java.util.List;
 
-import org.airavata.appcatalog.cpi.AppCatalogException;
-import org.airavata.appcatalog.cpi.ApplicationInterface;
+import org.apache.airavata.registry.cpi.AppCatalogException;
+import org.apache.airavata.registry.cpi.ApplicationInterface;
 import org.apache.aiaravata.application.catalog.data.impl.AppCatalogFactory;
 import org.apache.airavata.model.util.ExecutionType;
 import org.apache.airavata.model.workspace.experiment.Experiment;

http://git-wip-us.apache.org/repos/asf/airavata/blob/ec8c6202/modules/orchestrator/orchestrator-service/src/test/java/org/apache/airavata/orchestrator/client/util/Initialize.java
----------------------------------------------------------------------
diff --git a/modules/orchestrator/orchestrator-service/src/test/java/org/apache/airavata/orchestrator/client/util/Initialize.java b/modules/orchestrator/orchestrator-service/src/test/java/org/apache/airavata/orchestrator/client/util/Initialize.java
index 7fe8ff3..c5197a8 100644
--- a/modules/orchestrator/orchestrator-service/src/test/java/org/apache/airavata/orchestrator/client/util/Initialize.java
+++ b/modules/orchestrator/orchestrator-service/src/test/java/org/apache/airavata/orchestrator/client/util/Initialize.java
@@ -23,8 +23,8 @@ package org.apache.airavata.orchestrator.client.util;
 
 import org.apache.airavata.common.exception.ApplicationSettingsException;
 import org.apache.airavata.common.utils.ServerSettings;
-import org.apache.airavata.experiment.catalog.ResourceType;
-import org.apache.airavata.experiment.catalog.resources.*;
+import org.apache.airavata.registry.core.experiment.catalog.ResourceType;
+import org.apache.airavata.registry.core.experiment.catalog.resources.*;
 import org.apache.airavata.registry.cpi.RegistryException;
 import org.apache.derby.drda.NetworkServerControl;
 import org.slf4j.Logger;

http://git-wip-us.apache.org/repos/asf/airavata/blob/ec8c6202/modules/registry/experiment-catalog/pom.xml
----------------------------------------------------------------------
diff --git a/modules/registry/experiment-catalog/pom.xml b/modules/registry/experiment-catalog/pom.xml
deleted file mode 100644
index c624e2e..0000000
--- a/modules/registry/experiment-catalog/pom.xml
+++ /dev/null
@@ -1,151 +0,0 @@
-<?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.16-SNAPSHOT</version>
-        <relativePath>../pom.xml</relativePath>
-    </parent>
-
-    <modelVersion>4.0.0</modelVersion>
-    <artifactId>airavata-experiment-catalog</artifactId>
-    <packaging>jar</packaging>
-    <name>Airavata Experiment Catalog</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-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-credential-store</artifactId>
-            <version>${project.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>
-            <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>
-	    <dependency>
-            <groupId>org.apache.airavata</groupId>
-            <artifactId>airavata-server-configuration</artifactId>
-            <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>
-            <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>
-                    <!-- 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-->
-                    <excludes>
-                        <exclude>**/TaskDetailResourceTest.java</exclude>
-                        <exclude>**/WorkflowNodeDetailResourceTest.java</exclude>
-                    </excludes>
-                </configuration>
-            </plugin>
-        </plugins>
-    </build>
-
-</project>

http://git-wip-us.apache.org/repos/asf/airavata/blob/ec8c6202/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/JPAConstants.java
----------------------------------------------------------------------
diff --git a/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/JPAConstants.java b/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/JPAConstants.java
deleted file mode 100644
index b558d03..0000000
--- a/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/JPAConstants.java
+++ /dev/null
@@ -1,33 +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.experiment.catalog;
-
-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 JPA_CACHE_SIZE = "jpa.cache.size";
-    public static final String ENABLE_CACHING = "cache.enable";
-}

http://git-wip-us.apache.org/repos/asf/airavata/blob/ec8c6202/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/Resource.java
----------------------------------------------------------------------
diff --git a/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/Resource.java b/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/Resource.java
deleted file mode 100644
index bdfd948..0000000
--- a/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/Resource.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.experiment.catalog;
-
-import org.apache.airavata.registry.cpi.RegistryException;
-
-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) throws RegistryException, RegistryException;
-
-    /**
-     * 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) throws RegistryException;
-
-    /**
-     *  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) throws RegistryException;
-
-    /**
-     * 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) throws RegistryException;
-
-    /**
-     * This method will save the resource to the database.
-     */
-    void save() throws RegistryException;
-
-    /**
-     * 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) throws RegistryException;
-
-}