airavata-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From chath...@apache.org
Subject [5/6] Adding data models for execution - AIRAVATA-994 - Integration test failures can occur
Date Tue, 04 Feb 2014 19:52:20 GMT
http://git-wip-us.apache.org/repos/asf/airavata/blob/10b41d86/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Experiment_Input.java
----------------------------------------------------------------------
diff --git a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Experiment_Input.java b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Experiment_Input.java
new file mode 100644
index 0000000..f369523
--- /dev/null
+++ b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Experiment_Input.java
@@ -0,0 +1,76 @@
+/*
+ *
+ * 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.model;
+
+import javax.persistence.*;
+
+@Entity
+@Table(name ="EXPERIMENT_INPUT")
+@IdClass(Experiment_Input_PK.class)
+public class Experiment_Input {
+    @Id
+    @Column(name = "EXPERIMENT_ID")
+    private String experiment_id;
+
+    @Id
+    @Column(name = "EX_KEY")
+    private String ex_key;
+
+    @Column(name = "VALUE")
+    private String value;
+
+    @ManyToOne(cascade= CascadeType.MERGE)
+    @JoinColumn(name = "EXPERIMENT_ID")
+    private Experiment_Metadata experiment_metadata;
+
+    public String getExperiment_id() {
+        return experiment_id;
+    }
+
+    public void setExperiment_id(String experiment_id) {
+        this.experiment_id = experiment_id;
+    }
+
+    public Experiment_Metadata getExperiment_metadata() {
+        return experiment_metadata;
+    }
+
+    public void setExperiment_metadata(Experiment_Metadata experiment_metadata) {
+        this.experiment_metadata = experiment_metadata;
+    }
+
+    public String getEx_key() {
+        return ex_key;
+    }
+
+    public void setEx_key(String ex_key) {
+        this.ex_key = ex_key;
+    }
+
+    public String getValue() {
+        return value;
+    }
+
+    public void setValue(String value) {
+        this.value = value;
+    }
+}

http://git-wip-us.apache.org/repos/asf/airavata/blob/10b41d86/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Experiment_Input_PK.java
----------------------------------------------------------------------
diff --git a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Experiment_Input_PK.java b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Experiment_Input_PK.java
new file mode 100644
index 0000000..355fc80
--- /dev/null
+++ b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Experiment_Input_PK.java
@@ -0,0 +1,61 @@
+/*
+ *
+ * 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.model;
+
+public class Experiment_Input_PK {
+    private String experiment_id;
+    private String ex_key;
+
+    public Experiment_Input_PK(String experiment_id, String ex_key) {
+        this.experiment_id = experiment_id;
+        this.ex_key = ex_key;
+    }
+
+    public Experiment_Input_PK() {
+    }
+
+    @Override
+    public boolean equals(Object o) {
+        return false;
+    }
+
+    @Override
+    public int hashCode() {
+        return 1;
+    }
+
+    public String getExperiment_id() {
+        return experiment_id;
+    }
+
+    public void setExperiment_id(String experiment_id) {
+        this.experiment_id = experiment_id;
+    }
+
+    public String getEx_key() {
+        return ex_key;
+    }
+
+    public void setEx_key(String ex_key) {
+        this.ex_key = ex_key;
+    }
+}

http://git-wip-us.apache.org/repos/asf/airavata/blob/10b41d86/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Experiment_Metadata.java
----------------------------------------------------------------------
diff --git a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Experiment_Metadata.java b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Experiment_Metadata.java
index dbf1b41..0732caf 100644
--- a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Experiment_Metadata.java
+++ b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Experiment_Metadata.java
@@ -21,30 +21,129 @@
 
 package org.apache.airavata.persistance.registry.jpa.model;
 
-import javax.persistence.Entity;
-import javax.persistence.Id;
-import javax.persistence.Lob;
+import javax.persistence.*;
+import java.sql.Timestamp;
 
 @Entity
+@Table(name ="EXPERIMENT_METADATA")
 public class Experiment_Metadata {
     @Id
-    private String experiment_ID;
-    @Lob
-    private byte[] metadata;
+    @Column(name = "EXPERIMENT_ID")
+    private String experiment_id;
+    @Column(name = "EXPERIMENT_NAME")
+    private String experiment_name;
+    @Column(name = "DESCRIPTION")
+    private String description;
+    @Column(name = "SUBMITTED_DATE")
+    private Timestamp submitted_date;
+    @Column(name = "EXECUTION_USER" )
+    private String execution_user;
+    @Column(name = "GATEWAY_NAME")
+    private String gateway_name;
+    @Column(name = "PROJECT_NAME")
+    private String project_name;
 
-    public String getExperiment_ID() {
-        return experiment_ID;
+
+//    @ManyToOne(cascade= CascadeType.MERGE)
+//    @JoinColumn(name = "EXECUTION_USER", referencedColumnName = "USER_NAME" )
+//    private Users user;
+
+    @ManyToOne(cascade=CascadeType.MERGE)
+    @JoinColumn(name = "GATEWAY_NAME")
+    private Gateway gateway;
+
+    @ManyToOne(cascade=CascadeType.MERGE)
+    @JoinColumn(name = "PROJECT_NAME")
+    private Project project;
+
+    private boolean share_experiment;
+
+    public String getExecution_user() {
+        return execution_user;
+    }
+
+    public void setExecution_user(String execution_user) {
+        this.execution_user = execution_user;
+    }
+
+    public String getGateway_name() {
+        return gateway_name;
+    }
+
+    public void setGateway_name(String gateway_name) {
+        this.gateway_name = gateway_name;
+    }
+
+    public String getProject_name() {
+        return project_name;
+    }
+
+    public void setProject_name(String project_name) {
+        this.project_name = project_name;
     }
 
-    public byte[] getMetadata() {
-        return metadata;
+    public String getExperiment_id() {
+        return experiment_id;
     }
 
-    public void setMetadata(byte[] metadata) {
-        this.metadata = metadata;
+    public void setExperiment_id(String experiment_id) {
+        this.experiment_id = experiment_id;
     }
 
-    public void setExperiment_ID(String experiment_ID) {
-        this.experiment_ID = experiment_ID;
+    public String getExperiment_name() {
+        return experiment_name;
     }
+
+    public void setExperiment_name(String experiment_name) {
+        this.experiment_name = experiment_name;
+    }
+
+    public String getDescription() {
+        return description;
+    }
+
+    public void setDescription(String description) {
+        this.description = description;
+    }
+
+    public Timestamp getSubmitted_date() {
+        return submitted_date;
+    }
+
+    public void setSubmitted_date(Timestamp submitted_date) {
+        this.submitted_date = submitted_date;
+    }
+
+//    public Users getUser() {
+//        return user;
+//    }
+//
+//    public void setUser(Users user) {
+//        this.user = user;
+//    }
+
+    public Gateway getGateway() {
+        return gateway;
+    }
+
+    public void setGateway(Gateway gateway) {
+        this.gateway = gateway;
+    }
+
+    public Project getProject() {
+        return project;
+    }
+
+    public void setProject(Project project) {
+        this.project = project;
+    }
+
+    public boolean isShare_experiment() {
+        return share_experiment;
+    }
+
+    public void setShare_experiment(boolean share_experiment) {
+        this.share_experiment = share_experiment;
+    }
+
 }

http://git-wip-us.apache.org/repos/asf/airavata/blob/10b41d86/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Experiment_Output.java
----------------------------------------------------------------------
diff --git a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Experiment_Output.java b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Experiment_Output.java
new file mode 100644
index 0000000..0a48019
--- /dev/null
+++ b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Experiment_Output.java
@@ -0,0 +1,75 @@
+/*
+ *
+ * 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.model;
+
+import javax.persistence.*;
+
+@Entity
+@Table(name ="")
+@IdClass(Experiment_Output_PK.class)
+public class Experiment_Output {
+    @Id
+    @Column(name = "EXPERIMENT_ID")
+    private String experiment_id;
+
+    @Id
+    @Column(name = "EX_KEY")
+    private String ex_key;
+    @Column(name = "VALUE")
+    private String value;
+
+    @ManyToOne(cascade= CascadeType.MERGE)
+    @JoinColumn(name = "EXPERIMENT_ID")
+    private Experiment_Metadata experiment_metadata;
+
+    public String getExperiment_id() {
+        return experiment_id;
+    }
+
+    public void setExperiment_id(String experiment_id) {
+        this.experiment_id = experiment_id;
+    }
+
+    public Experiment_Metadata getExperiment_metadata() {
+        return experiment_metadata;
+    }
+
+    public void setExperiment_metadata(Experiment_Metadata experiment_metadata) {
+        this.experiment_metadata = experiment_metadata;
+    }
+
+    public String getEx_key() {
+        return ex_key;
+    }
+
+    public void setEx_key(String ex_key) {
+        this.ex_key = ex_key;
+    }
+
+    public String getValue() {
+        return value;
+    }
+
+    public void setValue(String value) {
+        this.value = value;
+    }
+}

http://git-wip-us.apache.org/repos/asf/airavata/blob/10b41d86/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Experiment_Output_PK.java
----------------------------------------------------------------------
diff --git a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Experiment_Output_PK.java b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Experiment_Output_PK.java
new file mode 100644
index 0000000..797cd90
--- /dev/null
+++ b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Experiment_Output_PK.java
@@ -0,0 +1,61 @@
+/*
+ *
+ * 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.model;
+
+public class Experiment_Output_PK {
+    private String experiment_id;
+    private String ex_key;
+
+    public Experiment_Output_PK(String experiment_id, String ex_key) {
+        this.experiment_id = experiment_id;
+        this.ex_key = ex_key;
+    }
+
+    public Experiment_Output_PK() {
+    }
+
+    @Override
+    public boolean equals(Object o) {
+        return false;
+    }
+
+    @Override
+    public int hashCode() {
+        return 1;
+    }
+
+    public String getExperiment_id() {
+        return experiment_id;
+    }
+
+    public void setExperiment_id(String experiment_id) {
+        this.experiment_id = experiment_id;
+    }
+
+    public String getEx_key() {
+        return ex_key;
+    }
+
+    public void setEx_key(String ex_key) {
+        this.ex_key = ex_key;
+    }
+}

http://git-wip-us.apache.org/repos/asf/airavata/blob/10b41d86/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Experiment_Summary.java
----------------------------------------------------------------------
diff --git a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Experiment_Summary.java b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Experiment_Summary.java
new file mode 100644
index 0000000..1a04a5e
--- /dev/null
+++ b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Experiment_Summary.java
@@ -0,0 +1,64 @@
+/*
+ *
+ * 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.model;
+
+
+import javax.persistence.*;
+import java.sql.Timestamp;
+
+@Entity
+@Table(name ="EXPERIMENT_SUMMARY")
+public class Experiment_Summary {
+
+    @Id
+    @ManyToOne(cascade= CascadeType.MERGE)
+    @JoinColumn(name = "EXPERIMENT_ID")
+    private Experiment_Metadata experiment_metadata;
+    @Column(name = "STATUS")
+    private String status;
+    @Column(name = "LAST_UPDATED_TIME")
+    private Timestamp last_update_time;
+
+    public Experiment_Metadata getExperiment_metadata() {
+        return experiment_metadata;
+    }
+
+    public void setExperiment_metadata(Experiment_Metadata experiment_metadata) {
+        this.experiment_metadata = experiment_metadata;
+    }
+
+    public String getStatus() {
+        return status;
+    }
+
+    public void setStatus(String status) {
+        this.status = status;
+    }
+
+    public Timestamp getLast_update_time() {
+        return last_update_time;
+    }
+
+    public void setLast_update_time(Timestamp last_update_time) {
+        this.last_update_time = last_update_time;
+    }
+}

http://git-wip-us.apache.org/repos/asf/airavata/blob/10b41d86/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/GFac_Job_Data.java
----------------------------------------------------------------------
diff --git a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/GFac_Job_Data.java b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/GFac_Job_Data.java
index 1801ed1..4e7fd5b 100644
--- a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/GFac_Job_Data.java
+++ b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/GFac_Job_Data.java
@@ -25,29 +25,42 @@ import javax.persistence.*;
 import java.sql.Timestamp;
 
 @Entity
+@Table(name ="GFAC_JOB_DATA")
 public class GFac_Job_Data {
+    @Column(name = "EXPERIMENT_ID")
     private String experiment_ID;
+    @Column(name = "WORKFLOW_INSTANCE_ID")
     private String workflow_instanceID;
+    @Column(name = "NODE_ID")
     private String  node_id;
+    @Column(name = "APPLICATION_DESC_ID")
     private String application_descriptor_ID;
+    @Column(name = "HOST_DESC_ID")
     private String host_descriptor_ID;
+    @Column(name = "SERVICE_DESC_ID")
     private String service_descriptor_ID;
     @Lob
+    @Column(name = "JOB_DATA")
     private String job_data;
     @Id
+    @Column(name = "LOCAL_JOB_ID")
     private String local_Job_ID;
+    @Column(name = "SUBMITTED_TIME")
     private Timestamp  submitted_time;
+    @Column(name = "STATUS_UPDATE_TIME")
     private Timestamp  status_update_time;
+    @Column(name = "STATUS")
     private String status;
     @Lob
+    @Column(name = "METADATA")
     private String metadata;
 
     @ManyToOne()
-    @JoinColumn(name = "experiment_ID")
-    private Experiment_Data experiment_data;
+    @JoinColumn(name = "EXPERIMENT_ID")
+    private Experiment_Metadata experiment_metadata;
 
     @ManyToOne()
-    @JoinColumn(name = "workflow_instanceID")
+    @JoinColumn(name = "WORKFLOW_INSTANCE_ID")
     private Workflow_Data workflow_Data;
 
     public String getExperiment_ID() {
@@ -98,8 +111,8 @@ public class GFac_Job_Data {
         return metadata;
     }
 
-    public Experiment_Data getExperiment_data() {
-        return experiment_data;
+    public Experiment_Metadata getExperiment_metadata() {
+        return experiment_metadata;
     }
 
     public Workflow_Data getWorkflow_Data() {
@@ -154,8 +167,8 @@ public class GFac_Job_Data {
         this.metadata = metadata;
     }
 
-    public void setExperiment_data(Experiment_Data experiment_data) {
-        this.experiment_data = experiment_data;
+    public void setExperiment_metadata(Experiment_Metadata experiment_metadata) {
+        this.experiment_metadata = experiment_metadata;
     }
 
     public void setWorkflow_Data(Workflow_Data workflow_Data) {

http://git-wip-us.apache.org/repos/asf/airavata/blob/10b41d86/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/GFac_Job_Status.java
----------------------------------------------------------------------
diff --git a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/GFac_Job_Status.java b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/GFac_Job_Status.java
index 70b3dd9..9d5d794 100644
--- a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/GFac_Job_Status.java
+++ b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/GFac_Job_Status.java
@@ -25,13 +25,17 @@ import javax.persistence.*;
 import java.sql.Timestamp;
 
 @Entity
+@Table(name ="GFAC_JOB_STATUS")
 public class GFac_Job_Status {
+    @Column(name = "LOCAL_JOB_ID")
     private String local_Job_ID;
+    @Column(name = "STATUS_UPDATE_TIME")
     private Timestamp status_update_time;
+    @Column(name = "STATUS")
     private String status;
 
     @ManyToOne()
-    @JoinColumn(name = "local_Job_ID")
+    @JoinColumn(name = "LOCAL_JOB_ID")
     private GFac_Job_Data gFac_job_data;
 
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/10b41d86/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Gateway.java
----------------------------------------------------------------------
diff --git a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Gateway.java b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Gateway.java
index a6efff7..a58b6b6 100644
--- a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Gateway.java
+++ b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Gateway.java
@@ -20,13 +20,18 @@
 */
 package org.apache.airavata.persistance.registry.jpa.model;
 
+import javax.persistence.Column;
 import javax.persistence.Entity;
 import javax.persistence.Id;
+import javax.persistence.Table;
 
 @Entity
+@Table(name ="GATEWAY")
 public class Gateway {
     @Id
+    @Column(name = "GATEWAY_NAME")
     private String gateway_name;
+    @Column(name = "OWNER")
     private String owner;
 
     public String getGateway_name() {

http://git-wip-us.apache.org/repos/asf/airavata/blob/10b41d86/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Gateway_Worker.java
----------------------------------------------------------------------
diff --git a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Gateway_Worker.java b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Gateway_Worker.java
index a84b301..e659181 100644
--- a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Gateway_Worker.java
+++ b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Gateway_Worker.java
@@ -23,21 +23,24 @@ package org.apache.airavata.persistance.registry.jpa.model;
 import javax.persistence.*;
 
 @Entity
+@Table(name ="GATEWAY_WORKER")
 @IdClass(Gateway_Worker_PK.class)
 public class Gateway_Worker {
     @Id
+    @Column(name = "GATEWAY_NAME")
     private String gateway_name;
 
     @Id
+    @Column(name = "USER_NAME")
     private String user_name;
 
     @ManyToOne(cascade=CascadeType.MERGE)
-    @JoinColumn(name = "gateway_name")
+    @JoinColumn(name = "GATEWAY_NAME")
     private Gateway gateway;
 
 
     @ManyToOne(cascade=CascadeType.MERGE)
-    @JoinColumn(name = "user_name")
+    @JoinColumn(name = "USER_NAME")
     private Users user;
 
     public String getUser_name() {

http://git-wip-us.apache.org/repos/asf/airavata/blob/10b41d86/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Gram_Data.java
----------------------------------------------------------------------
diff --git a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Gram_Data.java b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Gram_Data.java
index 62162fa..22e4864 100644
--- a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Gram_Data.java
+++ b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Gram_Data.java
@@ -23,21 +23,27 @@ package org.apache.airavata.persistance.registry.jpa.model;
 import javax.persistence.*;
 
 @Entity
+@Table(name ="GRAM_DATA")
 @IdClass(Gram_DataPK.class)
 public class Gram_Data {
 
 	@ManyToOne(cascade = CascadeType.PERSIST)
-	@JoinColumn(name = "workflow_instanceID")
+	@JoinColumn(name = "WORKFLOW_INSTANCE_ID")
 	private Workflow_Data workflow_Data;
 
     @Id
+    @Column(name = "WORKFLOW_INSTANCE_ID")
     private String workflow_instanceID;
 	@Id
+    @Column(name = "NODE_ID")
 	private String node_id;
 
     @Lob
+    @Column(name = "RSL")
 	private byte[] rsl;
-	private String invoked_host;
+    @Column(name = "INVOKED_HOST")
+    private String invoked_host;
+    @Column(name = "LOCAL_JOB_ID")
     private String local_Job_ID;
 
 	public Workflow_Data getWorkflow_Data() {

http://git-wip-us.apache.org/repos/asf/airavata/blob/10b41d86/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Host_Descriptor.java
----------------------------------------------------------------------
diff --git a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Host_Descriptor.java b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Host_Descriptor.java
index acb70b4..8fb8f6d 100644
--- a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Host_Descriptor.java
+++ b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Host_Descriptor.java
@@ -23,21 +23,25 @@ package org.apache.airavata.persistance.registry.jpa.model;
 import javax.persistence.*;
 
 @Entity
+@Table(name ="HOST_DESCRIPTOR")
 @IdClass(Host_Descriptor_PK.class)
 public class Host_Descriptor {
     @Id
+    @Column(name = "HOST_DESCRIPTOR_ID")
     private String host_descriptor_ID;
     @Id
+    @Column(name = "GATEWAY_NAME")
     private String gateway_name;
     @Lob
+    @Column(name = "HOST_DESCRIPTOR_XML")
     private byte[] host_descriptor_xml;
 
     @ManyToOne(cascade=CascadeType.MERGE)
-    @JoinColumn(name = "gateway_name")
+    @JoinColumn(name = "GATEWAY_NAME")
     private Gateway gateway;
 
     @ManyToOne (cascade=CascadeType.MERGE)
-    @JoinColumn(name = "updated_user", referencedColumnName = "user_name")
+    @JoinColumn(name = "UPDATED_USER", referencedColumnName = "USER_NAME")
     private Users user;
 
     public String getHost_descriptor_ID() {

http://git-wip-us.apache.org/repos/asf/airavata/blob/10b41d86/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Node_Data.java
----------------------------------------------------------------------
diff --git a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Node_Data.java b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Node_Data.java
index 0637624..1ccdbac 100644
--- a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Node_Data.java
+++ b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Node_Data.java
@@ -25,30 +25,40 @@ import java.sql.Timestamp;
 import javax.persistence.*;
 
 @Entity
+@Table(name ="NODE_DATA")
 @IdClass(Node_DataPK.class)
 public class Node_Data {
 
 	@Id
+    @Column(name = "WORKFLOW_INSTANCE_ID")
     private String workflow_instanceID;
 
 	@ManyToOne()
-	@JoinColumn(name = "workflow_instanceID")
+	@JoinColumn(name = "WORKFLOW_INSTANCE_ID")
 	private Workflow_Data workflow_Data;
 
 	@Id
+    @Column(name = "NODE_ID")
 	private String node_id;
 
     @Id
+    @Column(name = "EXECUTION_INDEX")
     private int execution_index;
 
+    @Column(name = "NODE_TYPE")
 	private String node_type;
 	@Lob
+    @Column(name = "INPUTS")
     private byte[] inputs;
 	@Lob
+    @Column(name = "OUTPUTS")
     private byte[] outputs;
-	private String status;
-	private Timestamp start_time;
-	private Timestamp last_update_time;
+    @Column(name = "STATUS")
+    private String status;
+    @Column(name = "START_TIME")
+    private Timestamp start_time;
+    @Column(name = "LAST_UPDATE_TIME")
+    private Timestamp last_update_time;
 
 	public Workflow_Data getWorkflow_Data() {
 		return workflow_Data;

http://git-wip-us.apache.org/repos/asf/airavata/blob/10b41d86/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Orchestrator.java
----------------------------------------------------------------------
diff --git a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Orchestrator.java b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Orchestrator.java
index 8f676ad..f0f07d8 100644
--- a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Orchestrator.java
+++ b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Orchestrator.java
@@ -22,26 +22,31 @@ package org.apache.airavata.persistance.registry.jpa.model;
 
 import java.sql.Timestamp;
 
-import javax.persistence.Entity;
-import javax.persistence.GeneratedValue;
-import javax.persistence.Id;
-import javax.persistence.Lob;
-import javax.persistence.Table;
+import javax.persistence.*;
 
 @Entity
-@Table(name = "Orchestrator")
+@Table(name = "ORCHESTRATOR")
 public class Orchestrator {
 	
 	@Id
+    @Column(name = "EXPERIMENT_ID")
     private String experiment_ID;
+    @Column(name = "USERNAME")
 	private String username;
-	private String status;
-	private String state;
-	private String gfacEPR;
-	private String applicationName;
+    @Column(name = "STATUS")
+    private String status;
+    @Column(name = "STATE")
+    private String state;
+    @Column(name = "GFAC_EPR")
+    private String gfacEPR;
+    @Column(name = "APPLICATION_NAME")
+    private String applicationName;
 	@Lob
+    @Column(name = "JOBREQUEST")
 	private String jobRequest;
+    @Column(name = "SUBMITTED_TIME")
     private Timestamp  submitted_time;
+    @Column(name = "STATUS_UPDATE_TIME")
     private Timestamp  status_update_time;
 	
 	public String getExperiment_ID() {

http://git-wip-us.apache.org/repos/asf/airavata/blob/10b41d86/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Project.java
----------------------------------------------------------------------
diff --git a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Project.java b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Project.java
index 12a05e7..a7c8a69 100644
--- a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Project.java
+++ b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Project.java
@@ -23,16 +23,18 @@ package org.apache.airavata.persistance.registry.jpa.model;
 import javax.persistence.*;
 
 @Entity
+@Table(name ="PROJECT")
 public class Project {
     @Id
+    @Column(name = "PROJECT_NAME")
     private String project_name;
 
     @ManyToOne(cascade=CascadeType.MERGE)
-    @JoinColumn(name = "gateway_name")
+    @JoinColumn(name = "GATEWAY_NAME")
     private Gateway gateway;
 
     @ManyToOne(cascade=CascadeType.MERGE)
-    @JoinColumn(name = "user_name")
+    @JoinColumn(name = "USER_NAME")
     private Users users;
 
     public String getProject_name() {

http://git-wip-us.apache.org/repos/asf/airavata/blob/10b41d86/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Published_Workflow.java
----------------------------------------------------------------------
diff --git a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Published_Workflow.java b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Published_Workflow.java
index 3b49191..0702545 100644
--- a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Published_Workflow.java
+++ b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Published_Workflow.java
@@ -24,28 +24,35 @@ import javax.persistence.*;
 import java.sql.Timestamp;
 
 @Entity
+@Table(name ="PUBLISHED_WORKFLOW")
 @IdClass(Published_Workflow_PK.class)
 public class Published_Workflow {
 
     @Id
+    @Column(name = "PUBLISH_WORKFLOW_NAME")
     private String publish_workflow_name;
 
     @Id
+    @Column(name = "GATEWAY_NAME")
     private String gateway_name;
 
     @ManyToOne(cascade= CascadeType.MERGE)
-    @JoinColumn(name = "gateway_name")
+    @JoinColumn(name = "GATEWAY_NAME")
     private Gateway gateway;
 
+    @Column(name = "VERSION")
     private String version;
+    @Column(name = "PUBLISHED_DATE")
     private Timestamp published_date;
 
     @Lob
+    @Column(name = "WORKFLOW_CONTENT")
     private byte[] workflow_content;
+    @Column(name = "PATH")
     private String path;
 
     @ManyToOne(cascade=CascadeType.MERGE)
-    @JoinColumn(name = "created_user", referencedColumnName = "user_name")
+    @JoinColumn(name = "CREATED_USER", referencedColumnName = "USER_NAME")
     private Users user;
 
     public String getPublish_workflow_name() {

http://git-wip-us.apache.org/repos/asf/airavata/blob/10b41d86/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Service_Descriptor.java
----------------------------------------------------------------------
diff --git a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Service_Descriptor.java b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Service_Descriptor.java
index 6af3b31..736614d 100644
--- a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Service_Descriptor.java
+++ b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Service_Descriptor.java
@@ -23,21 +23,25 @@ package org.apache.airavata.persistance.registry.jpa.model;
 import javax.persistence.*;
 
 @Entity
+@Table(name ="SERVICE_DESCRIPTOR")
 @IdClass(Service_Descriptor_PK.class)
 public class Service_Descriptor {
     @Id
+    @Column(name = "SERVICE_DESCRIPTOR_ID")
     private String service_descriptor_ID;
     @Id
+    @Column(name = "GATEWAY_NAME")
     private String gateway_name;
     @Lob
+    @Column(name = "SERVICE_DESCRIPTOR_XML")
     private byte[] service_descriptor_xml;
 
     @ManyToOne(cascade=CascadeType.MERGE)
-    @JoinColumn(name = "gateway_name")
+    @JoinColumn(name = "GATEWAY_NAME")
     private Gateway gateway;
 
     @ManyToOne(cascade=CascadeType.MERGE)
-    @JoinColumn(name = "updated_user", referencedColumnName = "user_name")
+    @JoinColumn(name = "UPDATED_USER", referencedColumnName = "USER_NAME")
     private Users user;
 
     public String getService_descriptor_ID() {

http://git-wip-us.apache.org/repos/asf/airavata/blob/10b41d86/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/User_Workflow.java
----------------------------------------------------------------------
diff --git a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/User_Workflow.java b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/User_Workflow.java
index 523c831..685689f 100644
--- a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/User_Workflow.java
+++ b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/User_Workflow.java
@@ -24,24 +24,30 @@ import javax.persistence.*;
 import java.sql.Timestamp;
 
 @Entity
+@Table(name ="USER_WORKFLOW")
 @IdClass(User_Workflow_PK.class)
 public class User_Workflow {
     @Id
+    @Column(name = "GATEWAY_NAME")
     private String gateway_name;
     @Id
+    @Column(name = "OWNER")
     private String owner;
     @Id
+    @Column(name = "TEMPLATE_NAME")
     private String template_name;
 
     @ManyToOne(cascade= CascadeType.MERGE)
-    @JoinColumn(name = "gateway_name")
+    @JoinColumn(name = "GATEWAY_NAME")
     private Gateway gateway;
 
     @ManyToOne(cascade=CascadeType.MERGE)
-    @JoinColumn(name = "owner", referencedColumnName = "user_name")
+    @JoinColumn(name = "OWNER", referencedColumnName = "USER_NAME")
     private Users user;
 
+    @Column(name = "PATH")
     private String path;
+    @Column(name = "LAST_UPDATED_TIME")
     private Timestamp last_updated_date;
 
     @Lob

http://git-wip-us.apache.org/repos/asf/airavata/blob/10b41d86/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Users.java
----------------------------------------------------------------------
diff --git a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Users.java b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Users.java
index 24534a7..781b2d5 100644
--- a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Users.java
+++ b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Users.java
@@ -20,18 +20,16 @@
 */
 package org.apache.airavata.persistance.registry.jpa.model;
 
-import javax.persistence.Entity;
-import javax.persistence.Id;
-import javax.persistence.JoinColumn;
-import javax.persistence.ManyToMany;
-import javax.persistence.ManyToOne;
-import javax.persistence.OneToMany;
+import javax.persistence.*;
 
 @Entity
+@Table(name ="USERS")
 public class Users {
 
     @Id
+    @Column(name = "USER_NAME")
     private String user_name;
+    @Column(name = "PASSWORD")
     private String password;
 
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/10b41d86/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Workflow_Data.java
----------------------------------------------------------------------
diff --git a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Workflow_Data.java b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Workflow_Data.java
index 59b5674..54af452 100644
--- a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Workflow_Data.java
+++ b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Workflow_Data.java
@@ -25,18 +25,24 @@ import java.sql.Timestamp;
 import javax.persistence.*;
 
 @Entity
+@Table(name ="WORKFLOW_DATA")
 public class Workflow_Data {
 
 	@ManyToOne(cascade = CascadeType.PERSIST)
-	@JoinColumn(name="experiment_ID")
-    private Experiment_Data experiment_data;
+	@JoinColumn(name="EXPERIMENT_ID")
+    private Experiment_Metadata experiment_metadata;
 
 	@Id
+    @Column(name = "WORKFLOW_INSTANCE_ID")
 	private String workflow_instanceID;
-	private String template_name;
-	private String status;
-	private Timestamp start_time;
-	private Timestamp last_update_time;
+    @Column(name = "TEMPLATE_NAME")
+    private String template_name;
+    @Column(name = "STATUS")
+    private String status;
+    @Column(name = "START_TIME")
+    private Timestamp start_time;
+    @Column(name = "LAST_UPDATE_TIME")
+    private Timestamp last_update_time;
 
 
 	public String getWorkflow_instanceID() {
@@ -79,11 +85,11 @@ public class Workflow_Data {
 		this.last_update_time = last_update_time;
 	}
 
-    public Experiment_Data getExperiment_data() {
-        return experiment_data;
+    public Experiment_Metadata getExperiment_data() {
+        return experiment_metadata;
     }
 
-    public void setExperiment_data(Experiment_Data experiment_data) {
-        this.experiment_data = experiment_data;
+    public void setExperiment_data(Experiment_Metadata experiment_data) {
+        this.experiment_metadata = experiment_data;
     }
 }

http://git-wip-us.apache.org/repos/asf/airavata/blob/10b41d86/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 3450b3b..b1f6767 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,10 +38,12 @@ 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 = "Experiment";
-	public static final String EXPERIMENT_DATA = "Experiment_Data";
-	public static final String WORKFLOW_DATA = "Workflow_Data";
 	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_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";
@@ -129,23 +131,62 @@ public abstract class AbstractResource implements Resource {
 		public static final String APPLICATION_DESC_XML = "application_descriptor_xml";
 	}
 
-	// Experiment table
-	public final class ExperimentConstants {
+	// Experiment Metadata table
+	public final class ExperimentMetadataConstants {
 		public static final String PROJECT_NAME = "project_name";
-		public static final String USERNAME = "user_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_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";
 
 	}
 
-	// Experiment_Data table
-	public final class ExperimentDataConstants {
-		public static final String EXPERIMENT_ID = "experiment_ID";
-		public static final String NAME = "name";
-		public static final String USERNAME = "username";
-		public static final String METADATA = "metadata";
-	}
+    // 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";
+
+    }
+
+    //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_VAL = "value";
+    }
+
+    //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_VAL = "value";
+    }
 
 	// Workflow_Data table
 	public final class WorkflowDataConstants {

http://git-wip-us.apache.org/repos/asf/airavata/blob/10b41d86/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ApplicationDescriptorResource.java
----------------------------------------------------------------------
diff --git a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ApplicationDescriptorResource.java b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ApplicationDescriptorResource.java
index 8b37fb2..8e8f994 100644
--- a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ApplicationDescriptorResource.java
+++ b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ApplicationDescriptorResource.java
@@ -171,7 +171,7 @@ public class ApplicationDescriptorResource extends AbstractResource {
 //    public void removeMe(Object[] keys) {
 //        EntityManager em = ResourceUtils.getEntityManager();
 //        em.getTransaction().begin();
-//        QueryGenerator queryGenerator = new QueryGenerator(APPLICATION_DESCRIPTOR);
+//        QueryGenerator queryGenerator = new QueryGenerator(Application_Descriptor);
 //        queryGenerator.setParameter(ApplicationDescriptorConstants.GATEWAY_NAME, keys[0]);
 //        queryGenerator.setParameter(ApplicationDescriptorConstants.APPLICATION_DESC_ID, keys[1]);
 //        queryGenerator.setParameter(ApplicationDescriptorConstants.HOST_DESC_ID, keys[2]);

http://git-wip-us.apache.org/repos/asf/airavata/blob/10b41d86/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
index 89bf9a8..8ffb241 100644
--- 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
@@ -30,14 +30,14 @@ 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_Data;
+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 ExperimentDataResource experimentDataResource;
+    private ExperimentMetadataResource metadataResource;
     private WorkflowDataResource workflowDataResource;
     private String nodeID;
     private String gfacJobID;
@@ -83,10 +83,10 @@ public class ExecutionErrorResource extends AbstractResource {
 
         Execution_Error execution_error = new Execution_Error();
         execution_error.setNode_id(nodeID);
-        Experiment_Data experiment_data = em.find(Experiment_Data.class, experimentDataResource.getExperimentID());
-        execution_error.setExperiment_data(experiment_data);
+        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.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);
@@ -103,8 +103,8 @@ public class ExecutionErrorResource extends AbstractResource {
 
     }
 
-    public ExperimentDataResource getExperimentDataResource() {
-        return experimentDataResource;
+    public ExperimentMetadataResource getMetadataResource() {
+        return metadataResource;
     }
 
     public WorkflowDataResource getWorkflowDataResource() {
@@ -139,8 +139,8 @@ public class ExecutionErrorResource extends AbstractResource {
         return errorCode;
     }
 
-    public void setExperimentDataResource(ExperimentDataResource experimentDataResource) {
-        this.experimentDataResource = experimentDataResource;
+    public void setMetadataResource(ExperimentMetadataResource metadataResource) {
+        this.metadataResource = metadataResource;
     }
 
     public void setWorkflowDataResource(WorkflowDataResource workflowDataResource) {

http://git-wip-us.apache.org/repos/asf/airavata/blob/10b41d86/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ExperimentConfigDataResource.java
----------------------------------------------------------------------
diff --git a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ExperimentConfigDataResource.java b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ExperimentConfigDataResource.java
new file mode 100644
index 0000000..09272cb
--- /dev/null
+++ b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ExperimentConfigDataResource.java
@@ -0,0 +1,284 @@
+/*
+ *
+ * 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.persistance.registry.jpa.ResourceUtils;
+import org.apache.airavata.persistance.registry.jpa.model.Experiment_Configuration_Data;
+import org.apache.airavata.persistance.registry.jpa.model.Experiment_Metadata;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import javax.persistence.EntityManager;
+import java.sql.Timestamp;
+import java.util.List;
+
+public class ExperimentConfigDataResource extends AbstractResource {
+    private static final Logger logger = LoggerFactory.getLogger(ExperimentConfigDataResource.class);
+    private ExperimentMetadataResource exMetadata;
+    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 projectAccount;
+    private boolean airavataAutoSchedule;
+    private boolean overrideManualSchedule;
+    private String workingDir;
+    private boolean stageInputsToWDir;
+    private String outputDataDir;
+    private String dataRegURL;
+    private boolean persistOutputData;
+    private boolean cleanAfterJob;
+    private byte[] request;
+
+    public ExperimentMetadataResource getExMetadata() {
+        return exMetadata;
+    }
+
+    public void setExMetadata(ExperimentMetadataResource exMetadata) {
+        this.exMetadata = exMetadata;
+    }
+
+    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 getProjectAccount() {
+        return projectAccount;
+    }
+
+    public void setProjectAccount(String projectAccount) {
+        this.projectAccount = projectAccount;
+    }
+
+    public boolean isAiravataAutoSchedule() {
+        return airavataAutoSchedule;
+    }
+
+    public void setAiravataAutoSchedule(boolean airavataAutoSchedule) {
+        this.airavataAutoSchedule = airavataAutoSchedule;
+    }
+
+    public boolean isOverrideManualSchedule() {
+        return overrideManualSchedule;
+    }
+
+    public void setOverrideManualSchedule(boolean overrideManualSchedule) {
+        this.overrideManualSchedule = overrideManualSchedule;
+    }
+
+    public String getWorkingDir() {
+        return workingDir;
+    }
+
+    public void setWorkingDir(String workingDir) {
+        this.workingDir = workingDir;
+    }
+
+    public boolean isStageInputsToWDir() {
+        return stageInputsToWDir;
+    }
+
+    public void setStageInputsToWDir(boolean stageInputsToWDir) {
+        this.stageInputsToWDir = stageInputsToWDir;
+    }
+
+    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;
+    }
+
+    public boolean isCleanAfterJob() {
+        return cleanAfterJob;
+    }
+
+    public void setCleanAfterJob(boolean cleanAfterJob) {
+        this.cleanAfterJob = cleanAfterJob;
+    }
+
+    public byte[] getRequest() {
+        return request;
+    }
+
+    public void setRequest(byte[] request) {
+        this.request = request;
+    }
+
+    public Resource create(ResourceType type) {
+        logger.error("Unsupported resource type for experiment config data resource.", new UnsupportedOperationException());
+        throw new UnsupportedOperationException();
+    }
+
+    public void remove(ResourceType type, Object name) {
+        logger.error("Unsupported resource type for experiment config data resource.", new UnsupportedOperationException());
+        throw new UnsupportedOperationException();    }
+
+    public Resource get(ResourceType type, Object name) {
+        logger.error("Unsupported resource type for experiment config data resource.", new UnsupportedOperationException());
+        throw new UnsupportedOperationException();    }
+
+    public List<Resource> get(ResourceType type) {
+        logger.error("Unsupported resource type for experiment config data resource.", new UnsupportedOperationException());
+        throw new UnsupportedOperationException();    }
+
+    public void save() {
+        EntityManager em = ResourceUtils.getEntityManager();
+        Experiment_Configuration_Data existingConfig = em.find(Experiment_Configuration_Data.class, exMetadata.getExpID());
+        em.close();
+
+        em = ResourceUtils.getEntityManager();
+        em.getTransaction().begin();
+        Experiment_Configuration_Data exconfig = new Experiment_Configuration_Data();
+        exconfig.setAiravata_auto_schedule(isAiravataAutoSchedule());
+        exconfig.setClean_after_job(cleanAfterJob);
+        exconfig.setComputational_project_account(projectAccount);
+        exconfig.setData_reg_url(dataRegURL);
+        exconfig.setExperiment_config_data(request);
+        Experiment_Metadata metadata = em.find(Experiment_Metadata.class, exMetadata.getExpID());
+        exconfig.setExperiment_metadata(metadata);
+        exconfig.setJob_start_time(jobStartTime);
+        exconfig.setNode_count(nodeCount);
+        exconfig.setNumber_of_threads(numberOfThreads);
+        exconfig.setOutput_data_dir(outputDataDir);
+        exconfig.setOverride_manual_schedule(overrideManualSchedule);
+        exconfig.setPersist_output_data(persistOutputData);
+        exconfig.setQueue_name(queueName);
+        exconfig.setResource_host_id(resourceHostID);
+        exconfig.setStage_input_files_to_working_dir(stageInputsToWDir);
+        exconfig.setTotal_cpu_count(cpuCount);
+        exconfig.setTotal_physical_memory(physicalMemory);
+        exconfig.setWalltime_limit(wallTimeLimit);
+        exconfig.setWorking_dir(workingDir);
+
+        if (existingConfig != null){
+            existingConfig.setAiravata_auto_schedule(isAiravataAutoSchedule());
+            existingConfig.setClean_after_job(cleanAfterJob);
+            existingConfig.setComputational_project_account(projectAccount);
+            existingConfig.setData_reg_url(dataRegURL);
+            existingConfig.setExperiment_config_data(request);
+            existingConfig.setExperiment_metadata(metadata);
+            existingConfig.setJob_start_time(jobStartTime);
+            existingConfig.setNode_count(nodeCount);
+            existingConfig.setNumber_of_threads(numberOfThreads);
+            existingConfig.setOutput_data_dir(outputDataDir);
+            existingConfig.setOverride_manual_schedule(overrideManualSchedule);
+            existingConfig.setPersist_output_data(persistOutputData);
+            existingConfig.setQueue_name(queueName);
+            existingConfig.setResource_host_id(resourceHostID);
+            existingConfig.setStage_input_files_to_working_dir(stageInputsToWDir);
+            existingConfig.setTotal_cpu_count(cpuCount);
+            existingConfig.setTotal_physical_memory(physicalMemory);
+            existingConfig.setWalltime_limit(wallTimeLimit);
+            existingConfig.setWorking_dir(workingDir);
+            exconfig = em.merge(existingConfig);
+        }
+        else {
+           em.persist(exconfig);
+        }
+        em.getTransaction().commit();
+        em.close();
+    }
+}


Mime
View raw message