airavata-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From chath...@apache.org
Subject [4/4] git commit: adding resources to data models - AIRAVATA-1017
Date Tue, 18 Feb 2014 05:28:16 GMT
adding resources to data models - AIRAVATA-1017


Project: http://git-wip-us.apache.org/repos/asf/airavata/repo
Commit: http://git-wip-us.apache.org/repos/asf/airavata/commit/a584c2c7
Tree: http://git-wip-us.apache.org/repos/asf/airavata/tree/a584c2c7
Diff: http://git-wip-us.apache.org/repos/asf/airavata/diff/a584c2c7

Branch: refs/heads/master
Commit: a584c2c768a825f686f53e8982e05b7de5e79304
Parents: b46488d
Author: chathuri <chathuri@apache.org>
Authored: Tue Feb 18 00:27:28 2014 -0500
Committer: chathuri <chathuri@apache.org>
Committed: Tue Feb 18 00:27:28 2014 -0500

----------------------------------------------------------------------
 .../persistance/registry/jpa/ResourceType.java  |  27 +-
 .../registry/jpa/impl/AiravataJPARegistry.java  | 118 ++---
 .../registry/jpa/impl/ExperimentRegistry.java   |   8 +-
 .../jpa/resources/AbstractResource.java         | 262 ++++++----
 .../AdvanceInputDataHandlingResource.java       | 118 +++++
 .../AdvancedOutputDataHandlingResource.java     | 109 ++++
 .../jpa/resources/ApplicationInputResource.java | 100 ++++
 .../resources/ApplicationOutputResource.java    | 100 ++++
 .../ComputationSchedulingResource.java          | 164 ++++++
 .../jpa/resources/ConfigDataResource.java       |  92 ++++
 .../persistance/registry/jpa/resources/DBC.java |  66 ---
 .../resources/DataTransferDetailResource.java   |  92 ++++
 .../jpa/resources/ErrorDetailResource.java      | 155 ++++++
 .../jpa/resources/ExecutionErrorResource.java   | 217 --------
 .../resources/ExperimentConfigDataResource.java | 389 --------------
 .../jpa/resources/ExperimentDataResource.java   | 358 -------------
 .../jpa/resources/ExperimentInputResource.java  | 248 +++++----
 .../resources/ExperimentMetadataResource.java   | 482 -----------------
 .../jpa/resources/ExperimentOutputResource.java | 248 +++++----
 .../jpa/resources/ExperimentResource.java       | 512 ++++++++++---------
 .../resources/ExperimentSummaryResource.java    | 112 ----
 .../jpa/resources/GFacJobDataResource.java      | 257 ----------
 .../jpa/resources/GFacJobStatusResource.java    | 113 ----
 .../registry/jpa/resources/GatewayResource.java |  36 +-
 .../jpa/resources/GramDataResource.java         | 133 -----
 .../jpa/resources/JobDetailResource.java        |  92 ++++
 .../jpa/resources/NodeDataResource.java         | 274 ----------
 .../jpa/resources/NodeInputResource.java        | 100 ++++
 .../jpa/resources/NodeOutputResource.java       | 100 ++++
 .../jpa/resources/OrchestratorDataResource.java | 189 -------
 .../registry/jpa/resources/ProjectResource.java |  27 +-
 .../jpa/resources/QosParamResource.java         | 109 ++++
 .../registry/jpa/resources/StatusResource.java  | 139 +++++
 .../jpa/resources/TaskDetailResource.java       | 101 ++++
 .../registry/jpa/resources/Utils.java           |  70 ---
 .../registry/jpa/resources/WorkerResource.java  |  78 +--
 .../jpa/resources/WorkflowDataResource.java     | 369 -------------
 .../resources/WorkflowNodeDetailResource.java   |  92 ++++
 .../src/main/resources/registry-derby.sql       |   6 +-
 .../src/main/resources/registry-mysql.sql       |   6 +-
 40 files changed, 2482 insertions(+), 3786 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/airavata/blob/a584c2c7/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/ResourceType.java
----------------------------------------------------------------------
diff --git a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/ResourceType.java b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/ResourceType.java
index 3a11184..859caa0 100644
--- a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/ResourceType.java
+++ b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/ResourceType.java
@@ -31,17 +31,22 @@ public enum ResourceType {
     APPLICATION_DESCRIPTOR,
     CONFIGURATION,
     GATEWAY_WORKER,
-    EXPERIMENT_METADATA,
-    EXPERIMENT_CONFIG_DATA,
-    EXPERIMENT_SUMMARY,
+    EXPERIMENT,
     EXPERIMENT_INPUT,
     EXPERIMENT_OUTPUT,
-    WORKFLOW_DATA,
-    NODE_DATA,
-    GRAM_DATA,
-    EXECUTION_ERROR,
-    GFAC_JOB_DATA,
-    GFAC_JOB_STATUS,
-    ORCHESTRATOR
-
+    WORKFLOW_NODE_DETAIL,
+    TASK_DETAIL,
+    ERROR_DETAIL,
+    APPLICATION_INPUT,
+    APPLICATION_OUTPUT,
+    NODE_INPUT,
+    NODE_OUTPUT,
+    JOB_DETAIL,
+    DATA_TRANSFER_DETAIL,
+    STATUS,
+    CONFIG_DATA,
+    COMPUTATIONAL_RESOURCE_SCHEDULING,
+    ADVANCE_INPUT_DATA_HANDLING,
+    ADVANCE_OUTPUT_DATA_HANDLING,
+    QOS_PARAM
 }

http://git-wip-us.apache.org/repos/asf/airavata/blob/a584c2c7/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/impl/AiravataJPARegistry.java
----------------------------------------------------------------------
diff --git a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/impl/AiravataJPARegistry.java b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/impl/AiravataJPARegistry.java
index 411de5a..83fbff8 100644
--- a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/impl/AiravataJPARegistry.java
+++ b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/impl/AiravataJPARegistry.java
@@ -45,7 +45,6 @@ import org.apache.airavata.registry.api.ExecutionErrors.Source;
 import org.apache.airavata.registry.api.exception.*;
 import org.apache.airavata.registry.api.exception.gateway.*;
 import org.apache.airavata.registry.api.exception.worker.*;
-import org.apache.airavata.registry.api.impl.WorkflowExecutionDataImpl;
 import org.apache.airavata.registry.api.util.RegistryConstants;
 import org.apache.airavata.registry.api.util.RegistrySettings;
 import org.apache.airavata.registry.api.workflow.*;
@@ -1372,8 +1371,9 @@ public class AiravataJPARegistry extends AiravataRegistry2{
 		if (!isWorkflowInstanceExists(workflowInstanceId, true)){
 			throw new WorkflowInstanceDoesNotExistsException(workflowInstanceId);
 		}
-		WorkflowDataResource wi = jpa.getWorker().getWorkflowInstance(workflowInstanceId);
-		return wi.getTemplateName();
+//		WorkflowDataResource wi = jpa.getWorker().getWorkflowInstance(workflowInstanceId);
+//		return wi.getTemplateName();
+        return null;
 	}
 
 
@@ -1386,9 +1386,9 @@ public class AiravataJPARegistry extends AiravataRegistry2{
             if (!isWorkflowInstanceExists(workflowInstanceId, true)){
                 throw new WorkflowInstanceDoesNotExistsException(workflowInstanceId);
             }
-            WorkflowDataResource wi = jpa.getWorker().getWorkflowInstance(workflowInstanceId);
-            wi.setTemplateName(templateName);
-            wi.save();
+//            WorkflowDataResource wi = jpa.getWorker().getWorkflowInstance(workflowInstanceId);
+//            wi.setTemplateName(templateName);
+//            wi.save();
         }
 	}
 
@@ -1420,19 +1420,20 @@ public class AiravataJPARegistry extends AiravataRegistry2{
         if (provenanceRegistry != null){
             return provenanceRegistry.isWorkflowInstanceExists(instanceId, createIfNotPresent);
         }
-        if (jpa.getWorker().isWorkflowInstancePresent(instanceId)){
-			return true;
-		}else if (createIfNotPresent){
+//        if (jpa.getWorker().isWorkflowInstancePresent(instanceId)){
+//			return true;
+//		}else if (createIfNotPresent){
 			//we are using the same id for the experiment id for backward compatibility
 			//for up to airavata 0.5
-			if (!isExperimentExists(instanceId, true)){
-				throw new ExperimentDoesNotExistsException(instanceId);
-			}
-			addWorkflowInstance(instanceId, instanceId, null);
-			return isWorkflowInstanceExists(instanceId);
-		}else{
-			return false;
-		}
+//			if (!isExperimentExists(instanceId, true)){
+//				throw new ExperimentDoesNotExistsException(instanceId);
+//			}
+//			addWorkflowInstance(instanceId, instanceId, null);
+//			return isWorkflowInstanceExists(instanceId);
+//		}else{
+//			return false;
+//		}
+        return false;
 	}
 
 	@Override
@@ -1454,14 +1455,14 @@ public class AiravataJPARegistry extends AiravataRegistry2{
             if (!isWorkflowInstanceExists(instanceId, true)){
                 throw new WorkflowInstanceDoesNotExistsException(instanceId);
             }
-            WorkflowDataResource wi = jpa.getWorker().getWorkflowInstance(instanceId);
-            Timestamp currentTime = new Timestamp(Calendar.getInstance().getTime().getTime());
-            wi.setStatus(status.toString());
-            if (status==State.STARTED){
-                wi.setStartTime(currentTime);
-            }
-            wi.setLastUpdatedTime(currentTime);
-            wi.save();
+//            WorkflowDataResource wi = jpa.getWorker().getWorkflowInstance(instanceId);
+//            Timestamp currentTime = new Timestamp(Calendar.getInstance().getTime().getTime());
+//            wi.setStatus(status.toString());
+//            if (status==State.STARTED){
+//                wi.setStartTime(currentTime);
+//            }
+//            wi.setLastUpdatedTime(currentTime);
+//            wi.save();
         }
 	}
 
@@ -1475,17 +1476,17 @@ public class AiravataJPARegistry extends AiravataRegistry2{
             if (!isWorkflowInstanceExists(status.getWorkflowInstance().getWorkflowExecutionId(), true)){
                 throw new WorkflowInstanceDoesNotExistsException(status.getWorkflowInstance().getWorkflowExecutionId());
             }
-            WorkflowDataResource wi = jpa.getWorker().getWorkflowInstance(status.getWorkflowInstance().getWorkflowExecutionId());
-            Timestamp currentTime = new Timestamp(status.getStatusUpdateTime().getTime());
-            if(status.getExecutionStatus() != null){
-                wi.setStatus(status.getExecutionStatus().toString());
-            }
-
-            if (status.getExecutionStatus()==State.STARTED){
-                wi.setStartTime(currentTime);
-            }
-            wi.setLastUpdatedTime(currentTime);
-            wi.save();
+//            WorkflowDataResource wi = jpa.getWorker().getWorkflowInstance(status.getWorkflowInstance().getWorkflowExecutionId());
+//            Timestamp currentTime = new Timestamp(status.getStatusUpdateTime().getTime());
+//            if(status.getExecutionStatus() != null){
+//                wi.setStatus(status.getExecutionStatus().toString());
+//            }
+//
+//            if (status.getExecutionStatus()==State.STARTED){
+//                wi.setStartTime(currentTime);
+//            }
+//            wi.setLastUpdatedTime(currentTime);
+//            wi.save();
         }
 	}
 
@@ -1499,9 +1500,10 @@ public class AiravataJPARegistry extends AiravataRegistry2{
         if (!isWorkflowInstanceExists(instanceId, true)){
 			throw new WorkflowInstanceDoesNotExistsException(instanceId);
 		}
-		WorkflowDataResource wi = jpa.getWorker().getWorkflowInstance(instanceId);
-		return new WorkflowExecutionStatus(new WorkflowExecution(wi.getExperimentID(),wi.getWorkflowInstanceID()),wi.getStatus()==null?null:State.valueOf(wi.getStatus()),wi.getLastUpdatedTime());
-	}
+//		WorkflowDataResource wi = jpa.getWorker().getWorkflowInstance(instanceId);
+//		return new WorkflowExecutionStatus(new WorkflowExecution(wi.getExperimentID(),wi.getWorkflowInstanceID()),wi.getStatus()==null?null:State.valueOf(wi.getStatus()),wi.getLastUpdatedTime());
+	    return null;
+    }
 
 
 	@Override
@@ -1760,7 +1762,7 @@ public class AiravataJPARegistry extends AiravataRegistry2{
 		if (!isWorkflowInstanceNodePresent(id, nodeId)){
 			throw new WorkflowInstanceNodeDoesNotExistsException(id, nodeId);
 		}
-		WorkflowDataResource workflowInstance = jpa.getWorker().getWorkflowInstance(id);
+//		WorkflowDataResource workflowInstance = jpa.getWorker().getWorkflowInstance(id);
 //		NodeDataResource nodeData = workflowInstance.getNodeData(nodeId);
 //		return new NodeExecutionStatus(new WorkflowInstanceNode(new WorkflowExecution(workflowInstance.getExperimentID(), workflowInstance.getWorkflowInstanceID()), nodeData.getNodeID()), nodeData.getStatus()==null?null:State.valueOf(nodeData.getStatus()),nodeData.getLastUpdateTime());
 	    return null;
@@ -1778,7 +1780,7 @@ public class AiravataJPARegistry extends AiravataRegistry2{
 		if (!isWorkflowInstanceNodePresent(id, nodeId)){
 			throw new WorkflowInstanceNodeDoesNotExistsException(id, nodeId);
 		}
-		WorkflowDataResource workflowInstance = jpa.getWorker().getWorkflowInstance(id);
+//		WorkflowDataResource workflowInstance = jpa.getWorker().getWorkflowInstance(id);
 //		NodeDataResource nodeData = workflowInstance.getNodeData(nodeId);
 //		return nodeData.getStartTime();
         return null;
@@ -1794,8 +1796,9 @@ public class AiravataJPARegistry extends AiravataRegistry2{
         if (!isWorkflowInstanceExists(workflowInstance.getWorkflowExecutionId(),true)){
 			throw new WorkflowInstanceDoesNotExistsException(workflowInstance.getWorkflowExecutionId());
 		}
-		WorkflowDataResource wi = jpa.getWorker().getWorkflowInstance(workflowInstance.getWorkflowExecutionId());
-		return wi.getStartTime();
+//		WorkflowDataResource wi = jpa.getWorker().getWorkflowInstance(workflowInstance.getWorkflowExecutionId());
+//		return wi.getStartTime();
+        return null;
 	}
 
 
@@ -1831,20 +1834,20 @@ public class AiravataJPARegistry extends AiravataRegistry2{
 			throw new WorkflowInstanceDoesNotExistsException(workflowInstanceId);
 		}
 		try{
-            WorkflowDataResource resource = jpa.getWorker().getWorkflowInstance(workflowInstanceId);
-            WorkflowExecution workflowInstance = new WorkflowExecution(resource.getExperimentID(), resource.getWorkflowInstanceID());
-            workflowInstance.setTemplateName(resource.getTemplateName());
-            WorkflowExecutionData workflowInstanceData = new WorkflowExecutionDataImpl(null, workflowInstance, new WorkflowExecutionStatus(workflowInstance, resource.getStatus()==null? null:State.valueOf(resource.getStatus()),resource.getLastUpdatedTime()), null);
+//            WorkflowDataResource resource = jpa.getWorker().getWorkflowInstance(workflowInstanceId);
+//            WorkflowExecution workflowInstance = new WorkflowExecution(resource.getExperimentID(), resource.getWorkflowInstanceID());
+//            workflowInstance.setTemplateName(resource.getTemplateName());
+//            WorkflowExecutionData workflowInstanceData = new WorkflowExecutionDataImpl(null, workflowInstance, new WorkflowExecutionStatus(workflowInstance, resource.getStatus()==null? null:State.valueOf(resource.getStatus()),resource.getLastUpdatedTime()), null);
 //            List<NodeDataResource> nodeData = resource.getNodeData();
 //            for (NodeDataResource nodeDataResource : nodeData) {
 //                workflowInstanceData.getNodeDataList().add(getWorkflowInstanceNodeData(workflowInstanceId, nodeDataResource.getNodeID()));
 //            }
-            return workflowInstanceData;
+//            return workflowInstanceData;
 //        } catch (ExperimentLazyLoadedException e) {
         } catch (Exception e) {
             throw new RegistryException(e);
         }
-
+        return null;
     }
 
 
@@ -1887,14 +1890,14 @@ public class AiravataJPARegistry extends AiravataRegistry2{
 		if (!isWorkflowInstanceExists(workflowInstanceId, true)){
 			throw new WorkflowInstanceDoesNotExistsException(workflowInstanceId);
 		}
-		if (jpa.getWorker().getWorkflowInstance(workflowInstanceId).isNodeExists(nodeId)){
-			return true;
-		}else if (createIfNotPresent){
-			addWorkflowInstanceNode(workflowInstanceId, nodeId);
-			return isWorkflowInstanceNodePresent(workflowInstanceId, nodeId);
-		}else{
+//		if (jpa.getWorker().getWorkflowInstance(workflowInstanceId).isNodeExists(nodeId)){
+//			return true;
+//		}else if (createIfNotPresent){
+//			addWorkflowInstanceNode(workflowInstanceId, nodeId);
+//			return isWorkflowInstanceNodePresent(workflowInstanceId, nodeId);
+//		}else{
 			return false;
-		}
+//		}
 	}
 
 
@@ -2401,7 +2404,8 @@ public class AiravataJPARegistry extends AiravataRegistry2{
 
 	@Override
 	public boolean isApplicationJobExists(String gfacJobId) throws RegistryException {
-		return jpa.getWorker().isGFacJobExists(gfacJobId);
+//		return jpa.getWorker().isGFacJobExists(gfacJobId);
+        return false;
 	}
 
 	@Override

http://git-wip-us.apache.org/repos/asf/airavata/blob/a584c2c7/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/impl/ExperimentRegistry.java
----------------------------------------------------------------------
diff --git a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/impl/ExperimentRegistry.java b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/impl/ExperimentRegistry.java
index 11c215e..894fd46 100644
--- a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/impl/ExperimentRegistry.java
+++ b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/impl/ExperimentRegistry.java
@@ -352,7 +352,7 @@ public class ExperimentRegistry {
             if (fieldName.equals(Constants.FieldConstants.BasicMetadataConstants.USER_NAME)){
                 UserReg userRegistry = new UserReg();
                 WorkerResource worker = userRegistry.getExistingUser(ServerSettings.getSystemUserGateway(), (String)value);
-                List<Resource> resources = worker.get(ResourceType.EXPERIMENT_METADATA);
+                List<Resource> resources = worker.get(ResourceType.EXPERIMENT);
                 for (Resource resource : resources){
 //                    ExperimentMetadataResource ex =  (ExperimentMetadataResource)resource;
 //                    BasicMetadata basicMetadata = ThriftDataModelConversion.getBasicMetadata(ex);
@@ -471,7 +471,7 @@ public class ExperimentRegistry {
                 }
             } else if (fieldName.equals(Constants.FieldConstants.BasicMetadataConstants.USER_NAME)) {
                 WorkerResource workerResource = userReg.getExistingUser(ServerSettings.getSystemUserGateway(), (String)value);
-                List<Resource> resources = workerResource.get(ResourceType.EXPERIMENT_METADATA);
+                List<Resource> resources = workerResource.get(ResourceType.EXPERIMENT);
                 for (Resource resource : resources) {
 //                    String expID = ((ExperimentMetadataResource) resource).getExpID();
 //                    expIDs.add(expID);
@@ -487,7 +487,7 @@ public class ExperimentRegistry {
     public void removeExperiment(String experimentId) {
         try {
             GatewayResource defaultGateway = gatewayRegistry.getDefaultGateway();
-            defaultGateway.remove(ResourceType.EXPERIMENT_METADATA, experimentId);
+            defaultGateway.remove(ResourceType.EXPERIMENT, experimentId);
         } catch (ApplicationSettingsException e) {
             logger.error("Unable to read airavata-server properties..", e.getMessage());
         }
@@ -506,7 +506,7 @@ public class ExperimentRegistry {
     public boolean isExperimentBasicDataExist(String expID) {
         try{
             GatewayResource defaultGateway = gatewayRegistry.getDefaultGateway();
-            defaultGateway.isExists(ResourceType.EXPERIMENT_METADATA, expID);
+            defaultGateway.isExists(ResourceType.EXPERIMENT, expID);
             return true;
         } catch (ApplicationSettingsException e) {
             logger.error("Unable to read airavata-server properties..", e.getMessage());

http://git-wip-us.apache.org/repos/asf/airavata/blob/a584c2c7/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/AbstractResource.java
----------------------------------------------------------------------
diff --git a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/AbstractResource.java b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/AbstractResource.java
index b1f6767..c824c46 100644
--- a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/AbstractResource.java
+++ b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/AbstractResource.java
@@ -38,16 +38,26 @@ public abstract class AbstractResource implements Resource {
 	public static final String HOST_DESCRIPTOR = "Host_Descriptor";
 	public static final String SERVICE_DESCRIPTOR = "Service_Descriptor";
 	public static final String APPLICATION_DESCRIPTOR = "Application_Descriptor";
-	public static final String EXPERIMENT_METADATA = "Experiment_Metadata";
-	public static final String EXPERIMENT_CONFIG_DATA = "Experiment_Configuration_Data";
-	public static final String EXPERIMENT_SUMMARY = "Experiment_Summary";
+	public static final String EXPERIMENT = "Experiment";
+	public static final String EXPERIMENT_CONFIG_DATA = "Configuration_Data";
 	public static final String EXPERIMENT_INPUT = "Experiment_Input";
 	public static final String EXPERIMENT_OUTPUT = "Experiment_Output";
-	public static final String WORKFLOW_DATA = "Workflow_Data";
-	public static final String EXECUTION_ERROR = "Execution_Error";
-	public static final String GFAC_JOB_DATA = "GFac_Job_Data";
-	public static final String GFAC_JOB_STATUS = "GFac_Job_Status";
-	public static final String ORCHESTRATOR = "Orchestrator";
+	public static final String WORKFLOW_NODE_DETAIL = "Workflow_Node_Details";
+	public static final String TASK_DETAIL = "Task_Detail";
+	public static final String ERROR_DETAIL = "Error_Detail";
+	public static final String APPLICATION_INPUT = "Application_Input";
+	public static final String APPLICATION_OUTPUT = "Application_Output";
+	public static final String NODE_INPUT = "Node_Input";
+	public static final String NODE_OUTPUT = "Node_Output";
+	public static final String JOB_DETAIL = "Job_Detail";
+	public static final String DATA_TRANSFER_DETAIL = "Data_Transfer_Detail";
+	public static final String STATUS = "Status";
+	public static final String CONFIG_DATA = "Config_Data";
+	public static final String COMPUTATIONAL_RESOURCE_SCHEDULING = "Computation_Resource_Scheduling";
+	public static final String ADVANCE_INPUT_DATA_HANDLING = "Advance_Input_Data_Handling";
+	public static final String ADVANCE_OUTPUT_DATA_HANDLING = "Advance_Output_Data_Handling";
+	public static final String QOS_PARAMS = "Qos_Params";
+
 
 	// Gateway Table
 	public final class GatewayConstants {
@@ -131,138 +141,188 @@ public abstract class AbstractResource implements Resource {
 		public static final String APPLICATION_DESC_XML = "application_descriptor_xml";
 	}
 
-	// Experiment Metadata table
-	public final class ExperimentMetadataConstants {
+	// Experiment table
+	public final class ExperimentConstants {
 		public static final String PROJECT_NAME = "project_name";
 		public static final String EXECUTION_USER = "execution_user";
 		public static final String GATEWAY_NAME = "gateway_name";
 		public static final String EXPERIMENT_ID = "experiment_id";
 		public static final String EXPERIMENT_NAME = "experiment_name";
-		public static final String DESCRIPTION = "description";
-		public static final String SUBMITTED_DATE = "submitted_date";
-		public static final String SHARE_EXPERIMENT = "share_experiment";
-
+		public static final String DESCRIPTION = "experiment_description";
+		public static final String CREATION_TIME = "creation_time";
+		public static final String APPLICATION_ID = "application_id";
+		public static final String APPLICATION_VERSION = "application_version";
+		public static final String WORKFLOW_TEMPLATE_ID = "workflow_template_id";
+		public static final String WORKFLOW_TEMPLATE_VERSION = "workflow_template_version";
+		public static final String WORKFLOW_EXECUTION_ID = "workflow_execution_id";
 	}
 
     // Experiment Configuration Data table
     public final class ExperimentConfigurationDataConstants {
         public static final String EXPERIMENT_ID = "experiment_id";
-        public static final String RESOURCE_HOST_ID = "resource_host_id";
-        public static final String TOTAL_CPU_COUNT = "total_cpu_count";
-        public static final String NODE_COUNT = "node_count";
-        public static final String NUMBER_OF_THREADS = "number_of_threads";
-        public static final String QUEUE_NAME = "queue_name";
-        public static final String WALLTIME_LIMIT = "walltime_limit";
-        public static final String JOB_START_TIME = "job_start_time";
-        public static final String TOTAL_PHYSICAL_MEMORY = "total_physical_memory";
-        public static final String COMP_PROJECT_ACCOUNT = "computational_project_account";
         public static final String AIRAVATA_AUTO_SCHEDULE = "airavata_auto_schedule";
         public static final String OVERRIDE_MANUAL_SCHEDULE = "override_manual_schedule";
-        public static final String WORKING_DIR = "working_dir";
-        public static final String STAGE_INPUT_FILES_TO_WORKING_DIR = "stage_input_files_to_working_dir";
-        public static final String OUTPUT_DATA_DIR = "output_data_dir";
-        public static final String DATA_REG_URL = "data_reg_url";
-        public static final String PERSIST_OUTPUT_DATA = "persist_output_data";
-        public static final String CLEAN_AFTER_JOB = "clean_after_job";
-    }
-
-    //Experiment Summary table
-    public final class ExperimentSummaryConstants {
-        public static final String EXPERIMENT_ID = "experiment_id";
-        public static final String STATUS = "status";
-        public static final String LAST_UPDATE_TIME = "last_update_time";
-
+        public static final String SHARE_EXPERIMENT = "share_experiment";
     }
 
     //Experiment Input table
     public final class ExperimentInputConstants {
         public static final String EXPERIMENT_ID = "experiment_id";
-        public static final String EXPERIMENT_INPUT_KEY = "ex_key";
+        public static final String EXPERIMENT_INPUT_KEY = "input_key";
         public static final String EXPERIMENT_INPUT_VAL = "value";
+        public static final String INPUT_TYPE = "input_type";
+        public static final String METADATA = "metadata";
     }
 
     //Experiment Output table
     public final class ExperimentOutputConstants {
         public static final String EXPERIMENT_ID = "experiment_id";
-        public static final String EXPERIMENT_OUTPUT_KEY = "ex_key";
+        public static final String EXPERIMENT_OUTPUT_KEY = "output_key";
         public static final String EXPERIMENT_OUTPUT_VAL = "value";
+        public static final String OUTPUT_TYPE = "output_type";
+        public static final String METADATA = "metadata";
     }
 
 	// Workflow_Data table
-	public final class WorkflowDataConstants {
+	public final class WorkflowNodeDetailsConstants {
 		public static final String EXPERIMENT_ID = "experiment_ID";
-		public static final String WORKFLOW_INSTANCE_ID = "workflow_instanceID";
-		public static final String TEMPLATE_NAME = "template_name";
-		public static final String STATUS = "status";
-		public static final String START_TIME = "start_time";
-		public static final String LAST_UPDATE_TIME = "last_update_time";
-	}
-
-	// Node_Data table
-	public final class NodeDataConstants {
-		public static final String WORKFLOW_INSTANCE_ID = "workflow_instanceID";
-		public static final String NODE_ID = "node_id";
-		public static final String NODE_TYPE = "node_type";
-		public static final String INPUTS = "inputs";
-		public static final String OUTPUTS = "outputs";
-		public static final String STATUS = "status";
-		public static final String START_TIME = "start_time";
-		public static final String LAST_UPDATE_TIME = "last_update_time";
+		public static final String NODE_INSTANCE_ID = "node_instance_id";
+		public static final String CREATION_TIME = "creation_time";
+		public static final String NODE_NAME = "node_name";
 	}
 
-	// Gram_Data table
-	public final class GramDataConstants {
-		public static final String WORKFLOW_INSTANCE_ID = "workflow_instanceID";
-		public static final String NODE_ID = "node_id";
-		public static final String RSL = "rsl";
-		public static final String INVOKED_HOST = "invoked_host";
-		public static final String LOCAL_JOB_ID = "local_Job_ID";
+	// TaskDetail table
+	public final class TaskDetailConstants {
+		public static final String TASK_ID = "task_id";
+		public static final String NODE_INSTANCE_ID = "node_instance_id";
+		public static final String CREATION_TIME = "creation_type";
+		public static final String APPLICATION_ID = "application_id";
+		public static final String APPLICATION_VERSION = "application_version";
 	}
 
-	public final class ExecutionErrorConstants {
+	// ErrorDetails table
+	public final class ErrorDetailConstants {
 		public static final String ERROR_ID = "error_id";
-		public static final String EXPERIMENT_ID = "experiment_ID";
-		public static final String WORKFLOW_ID = "workflow_instanceID";
-		public static final String NODE_ID = "node_id";
-		public static final String GFAC_JOB_ID = "gfacJobID";
-		public static final String SOURCE_TYPE = "source_type";
-		public static final String ERROR_DATE = "error_date";
-		public static final String ERROR_MSG = "error_msg";
-		public static final String ERROR_DES = "error_des";
-		public static final String ERROR_CODE = "error_code";
+		public static final String EXPERIMENT_ID = "experiment_id";
+		public static final String TASK_ID = "task_id";
+		public static final String NODE_INSTANCE_ID = "node_instance_id";
+		public static final String CREATION_TIME = "creation_time";
+		public static final String ACTUAL_ERROR_MESSAGE = "actual_error_message";
+		public static final String USER_FRIEDNLY_ERROR_MSG = "user_friendly_error_msg";
+		public static final String TRANSIENT_OR_PERSISTENT = "transient_or_persistent";
+		public static final String ERROR_CATEGORY = "error_category";
+		public static final String CORRECTIVE_ACTION = "corrective_action";
+		public static final String ACTIONABLE_GROUP = "actionable_group";
 	}
 
-	public final class GFacJobDataConstants {
-		public static final String EXPERIMENT_ID = "experiment_ID";
-		public static final String WORKFLOW_INSTANCE_ID = "workflow_instanceID";
-		public static final String NODE_ID = "node_id";
-		public static final String APP_DESC_ID = "application_descriptor_ID";
-		public static final String HOST_DESC_ID = "host_descriptor_ID";
-		public static final String SERVICE_DESC_ID = "service_descriptor_ID";
-		public static final String JOB_DATA = "job_data";
-		public static final String LOCAL_JOB_ID = "local_Job_ID";
-		public static final String SUBMITTED_TIME = "submitted_time";
-		public static final String STATUS_UPDATE_TIME = "status_update_time";
-		public static final String STATUS = "status";
+    // ApplicationInput table
+	public final class ApplicationInputConstants {
+		public static final String TASK_ID = "task_id";
+		public static final String INPUT_KEY = "input_key";
+		public static final String INPUT_KEY_TYPE = "input_key_type";
 		public static final String METADATA = "metadata";
+		public static final String VALUE = "value";
 	}
 
-	public final class GFacJobStatusConstants {
-		public static final String LOCAL_JOB_ID = "local_Job_ID";
-		public static final String STATUS = "status";
-		public static final String STATUS_UPDATE_TIME = "status_update_time";
-	}
+    // ApplicationOutput table
+    public final class ApplicationOutputConstants {
+        public static final String TASK_ID = "task_id";
+        public static final String OUTPUT_KEY = "output_key";
+        public static final String OUTPUT_KEY_TYPE = "output_key_type";
+        public static final String METADATA = "metadata";
+        public static final String VALUE = "value";
+    }
+
+    // NodeInput table
+    public final class NodeInputConstants {
+        public static final String NODE_INSTANCE_ID = "node_instance_id";
+        public static final String INPUT_KEY = "input_key";
+        public static final String INPUT_KEY_TYPE = "input_key_type";
+        public static final String METADATA = "metadata";
+        public static final String VALUE = "value";
+    }
+
+    // NodeOutput table
+    public final class NodeOutputConstants {
+        public static final String NODE_INSTANCE_ID = "node_instance_id";
+        public static final String OUTPUT_KEY = "output_key";
+        public static final String OUTPUT_KEY_TYPE = "output_key_type";
+        public static final String METADATA = "metadata";
+        public static final String VALUE = "value";
+    }
+
+    // Job Details table constants
+    public final class JobDetailConstants{
+        public static final String JOB_ID = "job_id";
+        public static final String TASK_ID = "task_id";
+        public static final String JOB_DESCRIPTION = "job_description";
+        public static final String CREATION_TIME = "creation_time";
+    }
+
+    // Data transfer Details table constants
+    public final class DataTransferDetailConstants{
+        public static final String TRANSFER_ID = "transfer_id";
+        public static final String TASK_ID = "task_id";
+        public static final String TRANSFER_DESC = "transfer_description";
+        public static final String CREATION_TIME = "creation_time";
+    }
+
+    // Status table constants
+    public final class StatusConstants {
+        public static final String STATUS_ID = "status_id";
+        public static final String EXPERIMENT_ID = "experiment_id";
+        public static final String NODE_INSTANCE_ID = "node_instance_id";
+        public static final String TRANSFER_ID = "transfer_id";
+        public static final String TASK_ID = "task_id";
+        public static final String JOB_ID = "job_id";
+        public static final String STATE = "state";
+        public static final String STATUS_UPDATE_TIME = "status_update_time";
+        public static final String STATUS_TYPE = "status_type";
+    }
+
+    public static final class ComputationalResourceSchedulingConstants{
+        public static final String RESOURCE_SCHEDULING_ID = "resource_scheduling_id";
+        public static final String EXPERIMENT_ID = "experiment_id";
+        public static final String TASK_ID = "task_id";
+        public static final String RESOURCE_HOST_ID = "resource_host_id";
+        public static final String CPU_COUNT = "cpu_count";
+        public static final String NODE_COUNT = "node_count";
+        public static final String NO_OF_THREADS = "no_of_threads";
+        public static final String QUEUE_NAME = "queue_name";
+        public static final String WALLTIME_LIMIT = "walltime_limit";
+        public static final String JOB_START_TIME = "job_start_time";
+        public static final String TOTAL_PHYSICAL_MEMORY = "total_physical_memory";
+        public static final String COMPUTATIONAL_PROJECT_ACCOUNT = "computational_project_accont";
+    }
+
+    public static final class AdvancedInputDataHandlingConstants {
+        public static final String INPUT_DATA_HANDLING_ID = "input_data_handling_id";
+        public static final String EXPERIMENT_ID = "experiment_id";
+        public static final String TASK_ID = "task_id";
+        public static final String WORKING_DIR_PARENT = "working_dir_parent";
+        public static final String UNIQUE_WORKING_DIR = "unique_working_dir";
+        public static final String STAGE_INPUT_FILES_TO_WORKING_DIR = "stage_input_files_to_working_dir";
+        public static final String CLEAN_AFTER_JOB = "clean_after_job";
+    }
+
+    public static final class AdvancedOutputDataHandlingConstants {
+        public static final String OUTPUT_DATA_HANDLING_ID = "output_data_handling_id";
+        public static final String EXPERIMENT_ID = "experiment_id";
+        public static final String TASK_ID = "task_id";
+        public static final String OUTPUT_DATA_DIR = "output_data_dir";
+        public static final String DATA_REG_URL = "data_reg_url";
+        public static final String PERSIST_OUTPUT_DATA = "persist_output_data";
+    }
+
+    public static final class QosParamsConstants {
+        public static final String QOS_ID = "qos_id";
+        public static final String EXPERIMENT_ID = "experiment_id";
+        public static final String TASK_ID = "task_id";
+        public static final String START_EXECUTION_AT = "start_execution_at";
+        public static final String EXECUTE_BEFORE = "execute_before";
+        public static final String NO_OF_RETRIES = "no_of_retries";
+    }
 
-	// Orchestrator_Data table
-	public final class OrchestratorDataConstants {
-		public static final String EXPERIMENT_ID = "experiment_ID";
-		public static final String USERNAME = "username";
-		public static final String STATUS = "status";
-		public static final String STATE = "state";
-		public static final String APPLICATION_NAME = "applicationName";
-		public static final String JOB_REQUEST = "jobRequest";
-		
-	}
 
 	protected AbstractResource() {
 	}

http://git-wip-us.apache.org/repos/asf/airavata/blob/a584c2c7/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/AdvanceInputDataHandlingResource.java
----------------------------------------------------------------------
diff --git a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/AdvanceInputDataHandlingResource.java b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/AdvanceInputDataHandlingResource.java
new file mode 100644
index 0000000..dda8d05
--- /dev/null
+++ b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/AdvanceInputDataHandlingResource.java
@@ -0,0 +1,118 @@
+/*
+ *
+ * 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.resources;
+
+import org.apache.airavata.persistance.registry.jpa.Resource;
+import org.apache.airavata.persistance.registry.jpa.ResourceType;
+
+import java.util.List;
+
+public class AdvanceInputDataHandlingResource extends AbstractResource {
+    private int dataHandlingId;
+    private ExperimentResource experimentResource;
+    private TaskDetailResource taskDetailResource;
+    private String workingDirParent;
+    private String workingDir;
+    private boolean stageInputFiles;
+    private boolean cleanAfterJob;
+
+    public int getDataHandlingId() {
+        return dataHandlingId;
+    }
+
+    public void setDataHandlingId(int dataHandlingId) {
+        this.dataHandlingId = dataHandlingId;
+    }
+
+    public ExperimentResource getExperimentResource() {
+        return experimentResource;
+    }
+
+    public void setExperimentResource(ExperimentResource experimentResource) {
+        this.experimentResource = experimentResource;
+    }
+
+    public TaskDetailResource getTaskDetailResource() {
+        return taskDetailResource;
+    }
+
+    public void setTaskDetailResource(TaskDetailResource taskDetailResource) {
+        this.taskDetailResource = taskDetailResource;
+    }
+
+    public String getWorkingDirParent() {
+        return workingDirParent;
+    }
+
+    public void setWorkingDirParent(String workingDirParent) {
+        this.workingDirParent = workingDirParent;
+    }
+
+    public String getWorkingDir() {
+        return workingDir;
+    }
+
+    public void setWorkingDir(String workingDir) {
+        this.workingDir = workingDir;
+    }
+
+    public boolean isStageInputFiles() {
+        return stageInputFiles;
+    }
+
+    public void setStageInputFiles(boolean stageInputFiles) {
+        this.stageInputFiles = stageInputFiles;
+    }
+
+    public boolean isCleanAfterJob() {
+        return cleanAfterJob;
+    }
+
+    public void setCleanAfterJob(boolean cleanAfterJob) {
+        this.cleanAfterJob = cleanAfterJob;
+    }
+
+    @Override
+    public Resource create(ResourceType type) {
+        return null;
+    }
+
+    @Override
+    public void remove(ResourceType type, Object name) {
+
+    }
+
+    @Override
+    public Resource get(ResourceType type, Object name) {
+        return null;
+    }
+
+    @Override
+    public List<Resource> get(ResourceType type) {
+        return null;
+    }
+
+    @Override
+    public void save() {
+
+    }
+}

http://git-wip-us.apache.org/repos/asf/airavata/blob/a584c2c7/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/AdvancedOutputDataHandlingResource.java
----------------------------------------------------------------------
diff --git a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/AdvancedOutputDataHandlingResource.java b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/AdvancedOutputDataHandlingResource.java
new file mode 100644
index 0000000..7e40913
--- /dev/null
+++ b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/AdvancedOutputDataHandlingResource.java
@@ -0,0 +1,109 @@
+/*
+ *
+ * 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.resources;
+
+import org.apache.airavata.persistance.registry.jpa.Resource;
+import org.apache.airavata.persistance.registry.jpa.ResourceType;
+
+import java.util.List;
+
+public class AdvancedOutputDataHandlingResource extends AbstractResource {
+    private int outputDataHandlingId;
+    private ExperimentResource experimentResource;
+    private TaskDetailResource taskDetailResource;
+    private  String outputDataDir;
+    private String dataRegUrl;
+    private boolean persistOutputData;
+
+    public int getOutputDataHandlingId() {
+        return outputDataHandlingId;
+    }
+
+    public void setOutputDataHandlingId(int outputDataHandlingId) {
+        this.outputDataHandlingId = outputDataHandlingId;
+    }
+
+    public ExperimentResource getExperimentResource() {
+        return experimentResource;
+    }
+
+    public void setExperimentResource(ExperimentResource experimentResource) {
+        this.experimentResource = experimentResource;
+    }
+
+    public TaskDetailResource getTaskDetailResource() {
+        return taskDetailResource;
+    }
+
+    public void setTaskDetailResource(TaskDetailResource taskDetailResource) {
+        this.taskDetailResource = taskDetailResource;
+    }
+
+    public String getOutputDataDir() {
+        return outputDataDir;
+    }
+
+    public void setOutputDataDir(String outputDataDir) {
+        this.outputDataDir = outputDataDir;
+    }
+
+    public String getDataRegUrl() {
+        return dataRegUrl;
+    }
+
+    public void setDataRegUrl(String dataRegUrl) {
+        this.dataRegUrl = dataRegUrl;
+    }
+
+    public boolean isPersistOutputData() {
+        return persistOutputData;
+    }
+
+    public void setPersistOutputData(boolean persistOutputData) {
+        this.persistOutputData = persistOutputData;
+    }
+
+    @Override
+    public Resource create(ResourceType type) {
+        return null;
+    }
+
+    @Override
+    public void remove(ResourceType type, Object name) {
+
+    }
+
+    @Override
+    public Resource get(ResourceType type, Object name) {
+        return null;
+    }
+
+    @Override
+    public List<Resource> get(ResourceType type) {
+        return null;
+    }
+
+    @Override
+    public void save() {
+
+    }
+}

http://git-wip-us.apache.org/repos/asf/airavata/blob/a584c2c7/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ApplicationInputResource.java
----------------------------------------------------------------------
diff --git a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ApplicationInputResource.java b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ApplicationInputResource.java
new file mode 100644
index 0000000..833ba91
--- /dev/null
+++ b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ApplicationInputResource.java
@@ -0,0 +1,100 @@
+/*
+ *
+ * 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.resources;
+
+import org.apache.airavata.persistance.registry.jpa.Resource;
+import org.apache.airavata.persistance.registry.jpa.ResourceType;
+
+import java.util.List;
+
+public class ApplicationInputResource extends AbstractResource {
+    private String taskId;
+    private String inputKey;
+    private String inputType;
+    private String metadata;
+    private String value;
+
+    public String getTaskId() {
+        return taskId;
+    }
+
+    public void setTaskId(String taskId) {
+        this.taskId = taskId;
+    }
+
+    public String getInputKey() {
+        return inputKey;
+    }
+
+    public void setInputKey(String inputKey) {
+        this.inputKey = inputKey;
+    }
+
+    public String getInputType() {
+        return inputType;
+    }
+
+    public void setInputType(String inputType) {
+        this.inputType = inputType;
+    }
+
+    public String getMetadata() {
+        return metadata;
+    }
+
+    public void setMetadata(String metadata) {
+        this.metadata = metadata;
+    }
+
+    public String getValue() {
+        return value;
+    }
+
+    public void setValue(String value) {
+        this.value = value;
+    }
+
+    @Override
+    public Resource create(ResourceType type) {
+        return null;
+    }
+
+    @Override
+    public void remove(ResourceType type, Object name) {
+
+    }
+
+    @Override
+    public Resource get(ResourceType type, Object name) {
+        return null;
+    }
+
+    @Override
+    public List<Resource> get(ResourceType type) {
+        return null;
+    }
+
+    @Override
+    public void save() {
+
+    }
+}

http://git-wip-us.apache.org/repos/asf/airavata/blob/a584c2c7/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ApplicationOutputResource.java
----------------------------------------------------------------------
diff --git a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ApplicationOutputResource.java b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ApplicationOutputResource.java
new file mode 100644
index 0000000..9a7bf2f
--- /dev/null
+++ b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ApplicationOutputResource.java
@@ -0,0 +1,100 @@
+/*
+ *
+ * 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.resources;
+
+import org.apache.airavata.persistance.registry.jpa.Resource;
+import org.apache.airavata.persistance.registry.jpa.ResourceType;
+
+import java.util.List;
+
+public class ApplicationOutputResource extends AbstractResource {
+    private String taskId;
+    private String outputKey;
+    private String outputType;
+    private String metadata;
+    private String value;
+
+    public String getTaskId() {
+        return taskId;
+    }
+
+    public void setTaskId(String taskId) {
+        this.taskId = taskId;
+    }
+
+    public String getOutputKey() {
+        return outputKey;
+    }
+
+    public void setOutputKey(String outputKey) {
+        this.outputKey = outputKey;
+    }
+
+    public String getOutputType() {
+        return outputType;
+    }
+
+    public void setOutputType(String outputType) {
+        this.outputType = outputType;
+    }
+
+    public String getMetadata() {
+        return metadata;
+    }
+
+    public void setMetadata(String metadata) {
+        this.metadata = metadata;
+    }
+
+    public String getValue() {
+        return value;
+    }
+
+    public void setValue(String value) {
+        this.value = value;
+    }
+
+    @Override
+    public Resource create(ResourceType type) {
+        return null;
+    }
+
+    @Override
+    public void remove(ResourceType type, Object name) {
+
+    }
+
+    @Override
+    public Resource get(ResourceType type, Object name) {
+        return null;
+    }
+
+    @Override
+    public List<Resource> get(ResourceType type) {
+        return null;
+    }
+
+    @Override
+    public void save() {
+
+    }
+}

http://git-wip-us.apache.org/repos/asf/airavata/blob/a584c2c7/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ComputationSchedulingResource.java
----------------------------------------------------------------------
diff --git a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ComputationSchedulingResource.java b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ComputationSchedulingResource.java
new file mode 100644
index 0000000..76ce5eb
--- /dev/null
+++ b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ComputationSchedulingResource.java
@@ -0,0 +1,164 @@
+/*
+ *
+ * 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.resources;
+
+import org.apache.airavata.persistance.registry.jpa.Resource;
+import org.apache.airavata.persistance.registry.jpa.ResourceType;
+
+import java.sql.Timestamp;
+import java.util.List;
+
+public class ComputationSchedulingResource extends AbstractResource {
+    private int schedulingId;
+    private ExperimentResource experimentResource;
+    private TaskDetailResource taskDetailResource;
+    private String resourceHostId;
+    private int cpuCount;
+    private int nodeCount;
+    private int numberOfThreads;
+    private String queueName;
+    private int walltimeLimit;
+    private Timestamp jobStartTime;
+    private int physicalMemory;
+    private String projectName;
+
+    public int getSchedulingId() {
+        return schedulingId;
+    }
+
+    public void setSchedulingId(int schedulingId) {
+        this.schedulingId = schedulingId;
+    }
+
+    public ExperimentResource getExperimentResource() {
+        return experimentResource;
+    }
+
+    public void setExperimentResource(ExperimentResource experimentResource) {
+        this.experimentResource = experimentResource;
+    }
+
+    public TaskDetailResource getTaskDetailResource() {
+        return taskDetailResource;
+    }
+
+    public void setTaskDetailResource(TaskDetailResource taskDetailResource) {
+        this.taskDetailResource = taskDetailResource;
+    }
+
+    public String getResourceHostId() {
+        return resourceHostId;
+    }
+
+    public void setResourceHostId(String resourceHostId) {
+        this.resourceHostId = resourceHostId;
+    }
+
+    public int getCpuCount() {
+        return cpuCount;
+    }
+
+    public void setCpuCount(int cpuCount) {
+        this.cpuCount = cpuCount;
+    }
+
+    public int getNodeCount() {
+        return nodeCount;
+    }
+
+    public void setNodeCount(int nodeCount) {
+        this.nodeCount = nodeCount;
+    }
+
+    public int getNumberOfThreads() {
+        return numberOfThreads;
+    }
+
+    public void setNumberOfThreads(int numberOfThreads) {
+        this.numberOfThreads = numberOfThreads;
+    }
+
+    public String getQueueName() {
+        return queueName;
+    }
+
+    public void setQueueName(String queueName) {
+        this.queueName = queueName;
+    }
+
+    public int getWalltimeLimit() {
+        return walltimeLimit;
+    }
+
+    public void setWalltimeLimit(int walltimeLimit) {
+        this.walltimeLimit = walltimeLimit;
+    }
+
+    public Timestamp getJobStartTime() {
+        return jobStartTime;
+    }
+
+    public void setJobStartTime(Timestamp jobStartTime) {
+        this.jobStartTime = jobStartTime;
+    }
+
+    public int getPhysicalMemory() {
+        return physicalMemory;
+    }
+
+    public void setPhysicalMemory(int physicalMemory) {
+        this.physicalMemory = physicalMemory;
+    }
+
+    public String getProjectName() {
+        return projectName;
+    }
+
+    public void setProjectName(String projectName) {
+        this.projectName = projectName;
+    }
+
+    @Override
+    public Resource create(ResourceType type) {
+        return null;
+    }
+
+    @Override
+    public void remove(ResourceType type, Object name) {
+
+    }
+
+    @Override
+    public Resource get(ResourceType type, Object name) {
+        return null;
+    }
+
+    @Override
+    public List<Resource> get(ResourceType type) {
+        return null;
+    }
+
+    @Override
+    public void save() {
+
+    }
+}

http://git-wip-us.apache.org/repos/asf/airavata/blob/a584c2c7/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ConfigDataResource.java
----------------------------------------------------------------------
diff --git a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ConfigDataResource.java b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ConfigDataResource.java
new file mode 100644
index 0000000..8873094
--- /dev/null
+++ b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ConfigDataResource.java
@@ -0,0 +1,92 @@
+/*
+ *
+ * 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.resources;
+
+import org.apache.airavata.persistance.registry.jpa.Resource;
+import org.apache.airavata.persistance.registry.jpa.ResourceType;
+import org.apache.airavata.schemas.gfac.BooleanParameterType;
+
+import java.util.List;
+
+public class ConfigDataResource extends AbstractResource {
+    private ExperimentResource experimentResource;
+    private boolean airavataAutoSchedule;
+    private boolean overrideManualParams;
+    private boolean shareExp;
+
+    public ExperimentResource getExperimentResource() {
+        return experimentResource;
+    }
+
+    public void setExperimentResource(ExperimentResource experimentResource) {
+        this.experimentResource = experimentResource;
+    }
+
+    public boolean isAiravataAutoSchedule() {
+        return airavataAutoSchedule;
+    }
+
+    public void setAiravataAutoSchedule(boolean airavataAutoSchedule) {
+        this.airavataAutoSchedule = airavataAutoSchedule;
+    }
+
+    public boolean isOverrideManualParams() {
+        return overrideManualParams;
+    }
+
+    public void setOverrideManualParams(boolean overrideManualParams) {
+        this.overrideManualParams = overrideManualParams;
+    }
+
+    public boolean isShareExp() {
+        return shareExp;
+    }
+
+    public void setShareExp(boolean shareExp) {
+        this.shareExp = shareExp;
+    }
+
+    @Override
+    public Resource create(ResourceType type) {
+        return null;
+    }
+
+    @Override
+    public void remove(ResourceType type, Object name) {
+
+    }
+
+    @Override
+    public Resource get(ResourceType type, Object name) {
+        return null;
+    }
+
+    @Override
+    public List<Resource> get(ResourceType type) {
+        return null;
+    }
+
+    @Override
+    public void save() {
+
+    }
+}

http://git-wip-us.apache.org/repos/asf/airavata/blob/a584c2c7/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/DBC.java
----------------------------------------------------------------------
diff --git a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/DBC.java b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/DBC.java
deleted file mode 100644
index 7c60e22..0000000
--- a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/DBC.java
+++ /dev/null
@@ -1,66 +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.persistance.registry.jpa.resources;
-
-public class DBC {
-    public static final class ExperimentData{
-    	public static final String TABLE="Experiment_Data";
-        public static final String EXPERIMENT_ID = "experiment_ID";
-        public static final String EXPERIMENT_NAME = "name";
-        public static final String USER_NAME = "username";
-    }
-    
-    public static final class ExperimentMetadata{
-    	public static final String TABLE="Experiment_Metadata";
-        public static final String EXPERIMENT_ID = "experiment_ID";
-        public static final String METADATA = "metadata";
-    }
-    
-    public static final class WorkflowData {
-    	public static final String TABLE="Workflow_Data";
-        public static final String EXPERIMENT_ID = "experiment_ID";
-        public static final String INSTANCE_ID = "workflow_instanceID";
-        public static final String TEMPLATE_NAME = "template_name";
-        public static final String STATUS = "status";
-        public static final String START_TIME = "start_time";
-        public static final String LAST_UPDATED = "last_update_time";
-    }
-    public static final class NodeData {
-    	public static final String TABLE="Node_Data";
-        public static final String WORKFLOW_INSTANCE_ID = "workflow_instanceID";
-        public static final String NODE_ID = "node_id";
-        public static final String TYPE = "node_type";
-        public static final String INPUTS = "inputs";
-        public static final String OUTPUTS = "outputs";
-        public static final String STATUS = "status";
-        public static final String START_TIME = "start_time";
-        public static final String LAST_UPDATED = "last_update_time";
-    }
-    public static final class GramData {
-    	public static final String TABLE="Gram_Data";
-        public static final String WORKFLOW_INSTANCE_ID = "workflow_instanceID";
-        public static final String NODE_ID = "node_id";
-        public static final String RSL = "rsl";
-        public static final String INVOKED_HOST = "invoked_host";
-    }
-    
-}

http://git-wip-us.apache.org/repos/asf/airavata/blob/a584c2c7/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/DataTransferDetailResource.java
----------------------------------------------------------------------
diff --git a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/DataTransferDetailResource.java b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/DataTransferDetailResource.java
new file mode 100644
index 0000000..1bc87b5
--- /dev/null
+++ b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/DataTransferDetailResource.java
@@ -0,0 +1,92 @@
+/*
+ *
+ * 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.resources;
+
+import org.apache.airavata.persistance.registry.jpa.Resource;
+import org.apache.airavata.persistance.registry.jpa.ResourceType;
+
+import java.sql.Timestamp;
+import java.util.List;
+
+public class DataTransferDetailResource extends AbstractResource {
+    private String transferId;
+    private TaskDetailResource taskDetailResource;
+    private Timestamp creationTime;
+    private String transferDescription;
+
+    public String getTransferId() {
+        return transferId;
+    }
+
+    public void setTransferId(String transferId) {
+        this.transferId = transferId;
+    }
+
+    public TaskDetailResource getTaskDetailResource() {
+        return taskDetailResource;
+    }
+
+    public void setTaskDetailResource(TaskDetailResource taskDetailResource) {
+        this.taskDetailResource = taskDetailResource;
+    }
+
+    public Timestamp getCreationTime() {
+        return creationTime;
+    }
+
+    public void setCreationTime(Timestamp creationTime) {
+        this.creationTime = creationTime;
+    }
+
+    public String getTransferDescription() {
+        return transferDescription;
+    }
+
+    public void setTransferDescription(String transferDescription) {
+        this.transferDescription = transferDescription;
+    }
+
+    @Override
+    public Resource create(ResourceType type) {
+        return null;
+    }
+
+    @Override
+    public void remove(ResourceType type, Object name) {
+
+    }
+
+    @Override
+    public Resource get(ResourceType type, Object name) {
+        return null;
+    }
+
+    @Override
+    public List<Resource> get(ResourceType type) {
+        return null;
+    }
+
+    @Override
+    public void save() {
+
+    }
+}

http://git-wip-us.apache.org/repos/asf/airavata/blob/a584c2c7/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ErrorDetailResource.java
----------------------------------------------------------------------
diff --git a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ErrorDetailResource.java b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ErrorDetailResource.java
new file mode 100644
index 0000000..6bf7541
--- /dev/null
+++ b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ErrorDetailResource.java
@@ -0,0 +1,155 @@
+/*
+ *
+ * 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.resources;
+
+import org.apache.airavata.persistance.registry.jpa.Resource;
+import org.apache.airavata.persistance.registry.jpa.ResourceType;
+
+import java.sql.Timestamp;
+import java.util.List;
+
+public class ErrorDetailResource extends AbstractResource {
+    private int errorId;
+    private String expId;
+    private String taskId;
+    private String nodeInstanceId;
+    private Timestamp creationTime;
+    private String actualErrorMsg;
+    private String userFriendlyErrorMsg;
+    private boolean transientPersistent;
+    private String errorCategory;
+    private String correctiveAction;
+    private String actionableGroup;
+
+    public int getErrorId() {
+        return errorId;
+    }
+
+    public void setErrorId(int errorId) {
+        this.errorId = errorId;
+    }
+
+    public String getExpId() {
+        return expId;
+    }
+
+    public void setExpId(String expId) {
+        this.expId = expId;
+    }
+
+    public String getTaskId() {
+        return taskId;
+    }
+
+    public void setTaskId(String taskId) {
+        this.taskId = taskId;
+    }
+
+    public String getNodeInstanceId() {
+        return nodeInstanceId;
+    }
+
+    public void setNodeInstanceId(String nodeInstanceId) {
+        this.nodeInstanceId = nodeInstanceId;
+    }
+
+    public Timestamp getCreationTime() {
+        return creationTime;
+    }
+
+    public void setCreationTime(Timestamp creationTime) {
+        this.creationTime = creationTime;
+    }
+
+    public String getActualErrorMsg() {
+        return actualErrorMsg;
+    }
+
+    public void setActualErrorMsg(String actualErrorMsg) {
+        this.actualErrorMsg = actualErrorMsg;
+    }
+
+    public String getUserFriendlyErrorMsg() {
+        return userFriendlyErrorMsg;
+    }
+
+    public void setUserFriendlyErrorMsg(String userFriendlyErrorMsg) {
+        this.userFriendlyErrorMsg = userFriendlyErrorMsg;
+    }
+
+    public boolean isTransientPersistent() {
+        return transientPersistent;
+    }
+
+    public void setTransientPersistent(boolean transientPersistent) {
+        this.transientPersistent = transientPersistent;
+    }
+
+    public String getErrorCategory() {
+        return errorCategory;
+    }
+
+    public void setErrorCategory(String errorCategory) {
+        this.errorCategory = errorCategory;
+    }
+
+    public String getCorrectiveAction() {
+        return correctiveAction;
+    }
+
+    public void setCorrectiveAction(String correctiveAction) {
+        this.correctiveAction = correctiveAction;
+    }
+
+    public String getActionableGroup() {
+        return actionableGroup;
+    }
+
+    public void setActionableGroup(String actionableGroup) {
+        this.actionableGroup = actionableGroup;
+    }
+
+    @Override
+    public Resource create(ResourceType type) {
+        return null;
+    }
+
+    @Override
+    public void remove(ResourceType type, Object name) {
+
+    }
+
+    @Override
+    public Resource get(ResourceType type, Object name) {
+        return null;
+    }
+
+    @Override
+    public List<Resource> get(ResourceType type) {
+        return null;
+    }
+
+    @Override
+    public void save() {
+
+    }
+}

http://git-wip-us.apache.org/repos/asf/airavata/blob/a584c2c7/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ExecutionErrorResource.java
----------------------------------------------------------------------
diff --git a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ExecutionErrorResource.java b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ExecutionErrorResource.java
deleted file mode 100644
index 35c0738..0000000
--- a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ExecutionErrorResource.java
+++ /dev/null
@@ -1,217 +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.persistance.registry.jpa.resources;
-//
-//import java.sql.Timestamp;
-//import java.util.List;
-//
-//import javax.persistence.EntityManager;
-//
-//import org.apache.airavata.persistance.registry.jpa.Resource;
-//import org.apache.airavata.persistance.registry.jpa.ResourceType;
-//import org.apache.airavata.persistance.registry.jpa.ResourceUtils;
-//import org.apache.airavata.persistance.registry.jpa.model.Execution_Error;
-//import org.apache.airavata.persistance.registry.jpa.model.Experiment_Metadata;
-//import org.apache.airavata.persistance.registry.jpa.model.Workflow_Data;
-//import org.slf4j.Logger;
-//import org.slf4j.LoggerFactory;
-//
-//public class ExecutionErrorResource extends AbstractResource {
-//    private final static Logger logger = LoggerFactory.getLogger(ExecutionErrorResource.class);
-//    private ExperimentMetadataResource metadataResource;
-//    private WorkflowDataResource workflowDataResource;
-//    private String nodeID;
-//    private String gfacJobID;
-//    private String sourceType;
-//    private Timestamp errorTime;
-//    private String errorMsg;
-//    private String errorDes;
-//    private String errorCode;
-//    private int errorID;
-//    private String errorReporter;
-//    private String errorLocation;
-//    private String actionTaken;
-//    private int errorReference;
-//
-//    @Override
-//    public Resource create(ResourceType type) {
-//        logger.error("Unsupported resource type for node error resource.", new UnsupportedOperationException());
-//        throw new UnsupportedOperationException();
-//    }
-//
-//    @Override
-//    public void remove(ResourceType type, Object name) {
-//        logger.error("Unsupported resource type for node error resource.", new UnsupportedOperationException());
-//        throw new UnsupportedOperationException();
-//    }
-//
-//    @Override
-//    public Resource get(ResourceType type, Object name) {
-//        logger.error("Unsupported resource type for node error resource.", new UnsupportedOperationException());
-//        throw new UnsupportedOperationException();
-//    }
-//
-//    @Override
-//    public List<Resource> get(ResourceType type) {
-//        logger.error("Unsupported resource type for node error resource.", new UnsupportedOperationException());
-//        throw new UnsupportedOperationException();
-//    }
-//
-//    @Override
-//    public void save() {
-//        EntityManager em = ResourceUtils.getEntityManager();
-//        em.getTransaction().begin();
-//
-//        Execution_Error execution_error = new Execution_Error();
-//        execution_error.setNode_id(nodeID);
-//        Experiment_Metadata experiment_data = em.find(Experiment_Metadata.class, metadataResource.getExpID());
-//        execution_error.setExperiment_Metadata(experiment_data);
-//        Workflow_Data workflow_data = em.find(Workflow_Data.class, workflowDataResource.getWorkflowInstanceID());
-//        execution_error.setExperiment_ID(experiment_data.getExperiment_id());
-//        execution_error.setWorkflow_Data(workflow_data);
-//        execution_error.setWorkflow_instanceID(workflow_data.getWorkflow_instanceID());
-//        execution_error.setError_code(errorCode);
-//        execution_error.setError_date(errorTime);
-//        execution_error.setError_des(errorDes);
-//        execution_error.setError_msg(errorMsg);
-//        execution_error.setSource_type(sourceType);
-//        execution_error.setGfacJobID(gfacJobID);
-//        em.persist(execution_error);
-//        errorID = execution_error.getError_id();
-//        // System.out.println("Error ID : " + errorID);
-//        em.getTransaction().commit();
-//        em.close();
-//
-//    }
-//
-//    public ExperimentMetadataResource getMetadataResource() {
-//        return metadataResource;
-//    }
-//
-//    public WorkflowDataResource getWorkflowDataResource() {
-//        return workflowDataResource;
-//    }
-//
-//    public String getNodeID() {
-//        return nodeID;
-//    }
-//
-//    public String getGfacJobID() {
-//        return gfacJobID;
-//    }
-//
-//    public String getSourceType() {
-//        return sourceType;
-//    }
-//
-//    public Timestamp getErrorTime() {
-//        return errorTime;
-//    }
-//
-//    public String getErrorMsg() {
-//        return errorMsg;
-//    }
-//
-//    public String getErrorDes() {
-//        return errorDes;
-//    }
-//
-//    public String getErrorCode() {
-//        return errorCode;
-//    }
-//
-//    public void setMetadataResource(ExperimentMetadataResource metadataResource) {
-//        this.metadataResource = metadataResource;
-//    }
-//
-//    public void setWorkflowDataResource(WorkflowDataResource workflowDataResource) {
-//        this.workflowDataResource = workflowDataResource;
-//    }
-//
-//    public void setNodeID(String nodeID) {
-//        this.nodeID = nodeID;
-//    }
-//
-//    public void setGfacJobID(String gfacJobID) {
-//        this.gfacJobID = gfacJobID;
-//    }
-//
-//    public void setSourceType(String sourceType) {
-//        this.sourceType = sourceType;
-//    }
-//
-//    public void setErrorTime(Timestamp errorTime) {
-//        this.errorTime = errorTime;
-//    }
-//
-//    public void setErrorMsg(String errorMsg) {
-//        this.errorMsg = errorMsg;
-//    }
-//
-//    public void setErrorDes(String errorDes) {
-//        this.errorDes = errorDes;
-//    }
-//
-//    public void setErrorCode(String errorCode) {
-//        this.errorCode = errorCode;
-//    }
-//
-//    public int getErrorID() {
-//        return errorID;
-//    }
-//
-//    public void setErrorID(int errorID) {
-//        this.errorID = errorID;
-//    }
-//
-//    public String getErrorReporter() {
-//        return errorReporter;
-//    }
-//
-//    public String getErrorLocation() {
-//        return errorLocation;
-//    }
-//
-//    public String getActionTaken() {
-//        return actionTaken;
-//    }
-//
-//    public void setErrorReporter(String errorReporter) {
-//        this.errorReporter = errorReporter;
-//    }
-//
-//    public void setErrorLocation(String errorLocation) {
-//        this.errorLocation = errorLocation;
-//    }
-//
-//    public void setActionTaken(String actionTaken) {
-//        this.actionTaken = actionTaken;
-//    }
-//
-//    public int getErrorReference() {
-//        return errorReference;
-//    }
-//
-//    public void setErrorReference(int errorReference) {
-//        this.errorReference = errorReference;
-//    }
-//}


Mime
View raw message