You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airavata.apache.org by ch...@apache.org on 2015/06/02 22:41:05 UTC
[09/25] airavata git commit: rename airavata-jpa-registry module to
experiment-catalog
http://git-wip-us.apache.org/repos/asf/airavata/blob/22bcbb40/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/ApplicationOutput.java
----------------------------------------------------------------------
diff --git a/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/ApplicationOutput.java b/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/ApplicationOutput.java
new file mode 100644
index 0000000..d82ca87
--- /dev/null
+++ b/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/ApplicationOutput.java
@@ -0,0 +1,142 @@
+/*
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ */
+
+package org.apache.airavata.experiment.catalog.model;
+
+import org.apache.openjpa.persistence.DataCache;
+
+import javax.persistence.*;
+import java.io.Serializable;
+
+@DataCache
+@Entity
+@Table(name = "APPLICATION_OUTPUT")
+@IdClass(ApplicationOutput_PK.class)
+public class ApplicationOutput implements Serializable {
+ @Id
+ @Column(name = "TASK_ID")
+ private String taskId;
+ @Id
+ @Column(name = "OUTPUT_KEY")
+ private String outputKey;
+ @Column(name = "DATA_TYPE")
+ private String dataType;
+ @Lob
+ @Column(name = "VALUE")
+ private char[] value;
+
+ @Column(name = "IS_REQUIRED")
+ private boolean isRequired;
+ @Column(name="REQUIRED_TO_COMMANDLINE")
+ private boolean addedToCmd;
+ @Column(name = "DATA_MOVEMENT")
+ private boolean dataMovement;
+ @Column(name = "DATA_NAME_LOCATION")
+ private String dataNameLocation;
+ @Column(name = "SEARCH_QUERY")
+ private String searchQuery;
+ @Column(name = "APP_ARGUMENT")
+ private String applicationArgument;
+
+ @ManyToOne(cascade= CascadeType.MERGE)
+ @JoinColumn(name = "TASK_ID")
+ private TaskDetail task;
+
+ public String getTaskId() {
+ return taskId;
+ }
+
+ public void setTaskId(String taskId) {
+ this.taskId = taskId;
+ }
+
+ public char[] getValue() {
+ return value;
+ }
+
+ public void setValue(char[] value) {
+ this.value = value;
+ }
+
+ public String getOutputKey() {
+ return outputKey;
+ }
+
+ public void setOutputKey(String outputKey) {
+ this.outputKey = outputKey;
+ }
+
+ public String getDataType() {
+ return dataType;
+ }
+
+ public void setDataType(String dataType) {
+ this.dataType = dataType;
+ }
+
+ public boolean isRequired() {
+ return isRequired;
+ }
+
+ public void setRequired(boolean isRequired) {
+ this.isRequired = isRequired;
+ }
+
+ public boolean isAddedToCmd() {
+ return addedToCmd;
+ }
+
+ public void setAddedToCmd(boolean addedToCmd) {
+ this.addedToCmd = addedToCmd;
+ }
+
+ public boolean isDataMovement() {
+ return dataMovement;
+ }
+
+ public void setDataMovement(boolean dataMovement) {
+ this.dataMovement = dataMovement;
+ }
+
+ public String getDataNameLocation() {
+ return dataNameLocation;
+ }
+
+ public void setDataNameLocation(String dataNameLocation) {
+ this.dataNameLocation = dataNameLocation;
+ }
+
+ public String getSearchQuery() {
+ return searchQuery;
+ }
+
+ public void setSearchQuery(String searchQuery) {
+ this.searchQuery = searchQuery;
+ }
+
+ public String getApplicationArgument() {
+ return applicationArgument;
+ }
+
+ public void setApplicationArgument(String applicationArgument) {
+ this.applicationArgument = applicationArgument;
+ }
+}
http://git-wip-us.apache.org/repos/asf/airavata/blob/22bcbb40/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/ApplicationOutput_PK.java
----------------------------------------------------------------------
diff --git a/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/ApplicationOutput_PK.java b/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/ApplicationOutput_PK.java
new file mode 100644
index 0000000..3ebc57a
--- /dev/null
+++ b/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/ApplicationOutput_PK.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.experiment.catalog.model;
+
+import java.io.Serializable;
+
+public class ApplicationOutput_PK implements Serializable {
+ private String taskId;
+ private String outputKey;
+
+ public ApplicationOutput_PK(String outputKey, String taskId) {
+ this.outputKey = outputKey;
+ this.taskId = taskId;
+ }
+
+ public ApplicationOutput_PK() {
+ ;
+ }
+
+ @Override
+ public boolean equals(Object o) {
+ return false;
+ }
+
+ @Override
+ public int hashCode() {
+ return 1;
+ }
+
+ 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;
+ }
+}
http://git-wip-us.apache.org/repos/asf/airavata/blob/22bcbb40/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/Computational_Resource_Scheduling.java
----------------------------------------------------------------------
diff --git a/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/Computational_Resource_Scheduling.java b/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/Computational_Resource_Scheduling.java
new file mode 100644
index 0000000..a177722
--- /dev/null
+++ b/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/Computational_Resource_Scheduling.java
@@ -0,0 +1,174 @@
+/*
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ */
+
+package org.apache.airavata.experiment.catalog.model;
+
+import org.apache.openjpa.persistence.DataCache;
+
+import javax.persistence.*;
+import java.io.Serializable;
+import java.sql.Timestamp;
+
+@DataCache
+@Entity
+@Table(name = "COMPUTATIONAL_RESOURCE_SCHEDULING")
+public class Computational_Resource_Scheduling implements Serializable {
+ @Id
+ @GeneratedValue
+ @Column(name = "RESOURCE_SCHEDULING_ID")
+ private int schedulingId;
+ @Column(name = "EXPERIMENT_ID")
+ private String expId;
+ @Column(name = "TASK_ID")
+ private String taskId;
+ @Column(name = "RESOURCE_HOST_ID")
+ private String resourceHostId;
+ @Column(name = "CPU_COUNT")
+ private int cpuCount;
+ @Column(name = "NODE_COUNT")
+ private int nodeCount;
+ @Column(name = "NO_OF_THREADS")
+ private int numberOfThreads;
+ @Column(name = "QUEUE_NAME")
+ private String queueName;
+ @Column(name = "WALLTIME_LIMIT")
+ private int wallTimeLimit;
+ @Column(name = "JOB_START_TIME")
+ private Timestamp jobStartTime;
+ @Column(name = "TOTAL_PHYSICAL_MEMORY")
+ private int totalPhysicalmemory;
+ @Column(name = "COMPUTATIONAL_PROJECT_ACCOUNT")
+ private String projectName;
+ @Column(name = "CHESSIS_NAME")
+ private String chessisName;
+
+ @ManyToOne(cascade= CascadeType.MERGE)
+ @JoinColumn(name = "EXPERIMENT_ID")
+ private Experiment experiment;
+
+ @ManyToOne(cascade= CascadeType.MERGE)
+ @JoinColumn(name = "TASK_ID")
+ private TaskDetail task;
+
+ public String getChessisName() {
+ return chessisName;
+ }
+
+ public void setChessisName(String chessisName) {
+ this.chessisName = chessisName;
+ }
+
+ public int getSchedulingId() {
+ return schedulingId;
+ }
+
+ public void setSchedulingId(int schedulingId) {
+ this.schedulingId = schedulingId;
+ }
+
+ 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 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 getTotalPhysicalmemory() {
+ return totalPhysicalmemory;
+ }
+
+ public void setTotalPhysicalmemory(int totalPhysicalmemory) {
+ this.totalPhysicalmemory = totalPhysicalmemory;
+ }
+
+ public String getProjectName() {
+ return projectName;
+ }
+
+ public void setProjectName(String projectName) {
+ this.projectName = projectName;
+ }
+}
http://git-wip-us.apache.org/repos/asf/airavata/blob/22bcbb40/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/Configuration.java
----------------------------------------------------------------------
diff --git a/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/Configuration.java b/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/Configuration.java
new file mode 100644
index 0000000..f3c72be
--- /dev/null
+++ b/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/Configuration.java
@@ -0,0 +1,80 @@
+/*
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*/
+package org.apache.airavata.experiment.catalog.model;
+
+import org.apache.openjpa.persistence.DataCache;
+
+import javax.persistence.*;
+import java.io.Serializable;
+import java.sql.Timestamp;
+
+@DataCache
+@Entity
+@Table(name ="CONFIGURATION")
+@IdClass(Configuration_PK.class)
+public class Configuration implements Serializable {
+ @Id
+ @Column(name = "CONFIG_KEY")
+ private String config_key;
+
+ @Id
+ @Column(name = "CONFIG_VAL")
+ private String config_val;
+
+ @Id
+ @Column(name = "CATEGORY_ID")
+ private String category_id;
+
+ @Column(name = "EXPIRE_DATE")
+ private Timestamp expire_date;
+
+ public String getConfig_key() {
+ return config_key;
+ }
+
+ public String getConfig_val() {
+ return config_val;
+ }
+
+ public Timestamp getExpire_date() {
+ return expire_date;
+ }
+
+ public void setConfig_key(String config_key) {
+ this.config_key = config_key;
+ }
+
+ public void setConfig_val(String config_val) {
+ this.config_val = config_val;
+ }
+
+ public void setExpire_date(Timestamp expire_date) {
+ this.expire_date = expire_date;
+ }
+
+ public String getCategory_id() {
+ return category_id;
+ }
+
+ public void setCategory_id(String category_id) {
+ this.category_id = category_id;
+ }
+}
http://git-wip-us.apache.org/repos/asf/airavata/blob/22bcbb40/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/Configuration_PK.java
----------------------------------------------------------------------
diff --git a/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/Configuration_PK.java b/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/Configuration_PK.java
new file mode 100644
index 0000000..2f950dd
--- /dev/null
+++ b/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/Configuration_PK.java
@@ -0,0 +1,74 @@
+/*
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ */
+
+package org.apache.airavata.experiment.catalog.model;
+
+import java.io.Serializable;
+
+public class Configuration_PK implements Serializable {
+ private String config_key;
+ private String config_val;
+ private String category_id;
+
+ public Configuration_PK(String config_key, String config_val, String category_id) {
+ this.config_key = config_key;
+ this.config_val = config_val;
+ this.category_id = category_id;
+ }
+
+ public Configuration_PK() {
+ ;
+ }
+
+ @Override
+ public boolean equals(Object o) {
+ return false;
+ }
+
+ @Override
+ public int hashCode() {
+ return 1;
+ }
+
+ public String getConfig_key() {
+ return config_key;
+ }
+
+ public void setConfig_key(String config_key) {
+ this.config_key = config_key;
+ }
+
+ public void setConfig_val(String config_val) {
+ this.config_val = config_val;
+ }
+
+ public String getConfig_val() {
+ return config_val;
+ }
+
+ public String getCategory_id() {
+ return category_id;
+ }
+
+ public void setCategory_id(String category_id) {
+ this.category_id = category_id;
+ }
+}
http://git-wip-us.apache.org/repos/asf/airavata/blob/22bcbb40/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/DataTransferDetail.java
----------------------------------------------------------------------
diff --git a/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/DataTransferDetail.java b/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/DataTransferDetail.java
new file mode 100644
index 0000000..ad41126
--- /dev/null
+++ b/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/DataTransferDetail.java
@@ -0,0 +1,91 @@
+/*
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ */
+
+package org.apache.airavata.experiment.catalog.model;
+
+import org.apache.openjpa.persistence.DataCache;
+
+import javax.persistence.*;
+import java.io.Serializable;
+import java.sql.Timestamp;
+
+@DataCache
+@Entity
+@Table(name = "DATA_TRANSFER_DETAIL")
+public class DataTransferDetail implements Serializable {
+ @Id
+ @Column(name = "TRANSFER_ID")
+ private String transferId;
+ @Column(name = "TASK_ID")
+ private String taskId;
+ @Column(name = "CREATION_TIME")
+ private Timestamp creationTime;
+ @Lob
+ @Column(name = "TRANSFER_DESC")
+ private char[] transferDesc;
+
+ @ManyToOne(cascade= CascadeType.MERGE)
+ @JoinColumn(name = "TASK_ID")
+ private TaskDetail task;
+
+ @OneToOne (fetch = FetchType.LAZY, mappedBy = "transferDetail")
+ private Status dataTransferStatus;
+
+ public String getTransferId() {
+ return transferId;
+ }
+
+ public void setTransferId(String transferId) {
+ this.transferId = transferId;
+ }
+
+ public String getTaskId() {
+ return taskId;
+ }
+
+ public void setTaskId(String taskId) {
+ this.taskId = taskId;
+ }
+
+ public Timestamp getCreationTime() {
+ return creationTime;
+ }
+
+ public void setCreationTime(Timestamp creationTime) {
+ this.creationTime = creationTime;
+ }
+
+ public char[] getTransferDesc() {
+ return transferDesc;
+ }
+
+ public void setTransferDesc(char[] transferDesc) {
+ this.transferDesc = transferDesc;
+ }
+
+ public Status getDataTransferStatus() {
+ return dataTransferStatus;
+ }
+
+ public void setDataTransferStatus(Status dataTransferStatus) {
+ this.dataTransferStatus = dataTransferStatus;
+ }
+}
http://git-wip-us.apache.org/repos/asf/airavata/blob/22bcbb40/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/ErrorDetail.java
----------------------------------------------------------------------
diff --git a/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/ErrorDetail.java b/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/ErrorDetail.java
new file mode 100644
index 0000000..46af8a5
--- /dev/null
+++ b/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/ErrorDetail.java
@@ -0,0 +1,176 @@
+/*
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ */
+
+package org.apache.airavata.experiment.catalog.model;
+
+import org.apache.openjpa.persistence.DataCache;
+
+import javax.persistence.*;
+
+import java.io.Serializable;
+import java.sql.Timestamp;
+
+@DataCache
+@Entity
+@Table(name = "ERROR_DETAIL")
+public class ErrorDetail implements Serializable {
+ @Id
+ @GeneratedValue
+ @Column(name = "ERROR_ID")
+ private int errorID;
+ @Column(name = "EXPERIMENT_ID")
+ private String expId;
+ @Column(name = "TASK_ID")
+ private String taskId;
+ @Column(name = "NODE_INSTANCE_ID")
+ private String nodeId;
+ @Column(name = "CREATION_TIME")
+ private Timestamp creationTime;
+ @Lob
+ @Column(name = "ACTUAL_ERROR_MESSAGE")
+ private char[] actualErrorMsg;
+
+ @Column(name = "USER_FRIEDNLY_ERROR_MSG")
+ private String userFriendlyErrorMsg;
+ @Column(name = "TRANSIENT_OR_PERSISTENT")
+ private boolean transientPersistent;
+ @Column(name = "ERROR_CATEGORY")
+ private String errorCategory;
+ @Column(name = "CORRECTIVE_ACTION")
+ private String correctiveAction;
+ @Column(name = "ACTIONABLE_GROUP")
+ private String actionableGroup;
+ @Column(name = "JOB_ID")
+ private String jobId;
+
+
+ @ManyToOne(fetch = FetchType.LAZY, cascade= CascadeType.MERGE)
+ @JoinColumn(name = "EXPERIMENT_ID")
+ private Experiment experiment;
+
+ @ManyToOne(fetch = FetchType.LAZY, cascade= CascadeType.MERGE)
+ @JoinColumn(name = "TASK_ID")
+ private TaskDetail task;
+
+ @ManyToOne(fetch = FetchType.LAZY, cascade= CascadeType.MERGE)
+ @JoinColumn(name = "NODE_INSTANCE_ID")
+ private WorkflowNodeDetail nodeDetail;
+
+ @ManyToOne(fetch = FetchType.LAZY, cascade= CascadeType.MERGE)
+ @JoinColumn(name = "JOB_ID")
+ private JobDetail jobDetail;
+
+ 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 getNodeId() {
+ return nodeId;
+ }
+
+ public void setNodeId(String nodeId) {
+ this.nodeId = nodeId;
+ }
+
+ public Timestamp getCreationTime() {
+ return creationTime;
+ }
+
+ public void setCreationTime(Timestamp creationTime) {
+ this.creationTime = creationTime;
+ }
+
+ public char[] getActualErrorMsg() {
+ return actualErrorMsg;
+ }
+
+ public void setActualErrorMsg(char[] 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 getActionableGroup() {
+ return actionableGroup;
+ }
+
+ public void setActionableGroup(String actionableGroup) {
+ this.actionableGroup = actionableGroup;
+ }
+
+ public String getCorrectiveAction() {
+ return correctiveAction;
+ }
+
+ public void setCorrectiveAction(String correctiveAction) {
+ this.correctiveAction = correctiveAction;
+ }
+
+ public String getJobId() {
+ return jobId;
+ }
+
+ public void setJobId(String jobId) {
+ this.jobId = jobId;
+ }
+}
http://git-wip-us.apache.org/repos/asf/airavata/blob/22bcbb40/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/Experiment.java
----------------------------------------------------------------------
diff --git a/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/Experiment.java b/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/Experiment.java
new file mode 100644
index 0000000..6a7b13a
--- /dev/null
+++ b/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/Experiment.java
@@ -0,0 +1,299 @@
+/*
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*/
+
+package org.apache.airavata.experiment.catalog.model;
+
+import org.apache.openjpa.persistence.DataCache;
+
+import javax.persistence.*;
+import java.io.Serializable;
+import java.sql.Timestamp;
+import java.util.Collection;
+import java.util.List;
+
+@Entity
+@Table(name = "EXPERIMENT")
+@DataCache
+public class Experiment implements Serializable {
+ @Id
+ @Column(name = "EXPERIMENT_ID")
+ private String expId;
+ @Column(name = "GATEWAY_ID")
+ private String gatewayId;
+ @Column(name = "EXECUTION_USER")
+ private String executionUser;
+ @Column(name = "PROJECT_ID")
+ private String projectID;
+ @Column(name = "CREATION_TIME")
+ private Timestamp creationTime;
+ @Column(name = "EXPERIMENT_NAME")
+ private String expName;
+ @Column(name = "EXPERIMENT_DESCRIPTION")
+ private String expDesc;
+ @Column(name = "APPLICATION_ID")
+ private String applicationId;
+ @Column(name = "APPLICATION_VERSION")
+ private String appVersion;
+ @Column(name = "WORKFLOW_TEMPLATE_ID")
+ private String workflowTemplateId;
+ @Column(name = "WORKFLOW_TEMPLATE_VERSION")
+ private String workflowTemplateVersion;
+ @Column(name = "WORKFLOW_EXECUTION_ID")
+ private String workflowExecutionId;
+ @Column(name = "ALLOW_NOTIFICATION")
+ private boolean allowNotification;
+ @Column(name = "GATEWAY_EXECUTION_ID")
+ private String gatewayExecutionId;
+
+ @ManyToOne(fetch=FetchType.LAZY, cascade=CascadeType.MERGE)
+ @JoinColumn(name = "GATEWAY_ID")
+ private Gateway gateway;
+
+ @ManyToOne(fetch=FetchType.LAZY, cascade=CascadeType.MERGE)
+ @JoinColumn(name = "PROJECT_ID")
+ private Project project;
+
+ @ManyToOne(fetch=FetchType.LAZY, cascade=CascadeType.MERGE)
+ @JoinColumn(name = "EXECUTION_USER", referencedColumnName = "USER_NAME")
+ private Users user;
+
+ @OneToMany (fetch = FetchType.LAZY, mappedBy = "experiment")
+ private List<Experiment_Output> experimentOutputs;
+
+ @OneToMany (fetch = FetchType.LAZY, mappedBy = "experiment")
+ private List<Experiment_Input> experimentInputs;
+
+ @OneToOne (fetch = FetchType.LAZY, mappedBy = "experiment")
+ private Computational_Resource_Scheduling resourceScheduling;
+
+ @OneToOne (fetch = FetchType.LAZY, mappedBy = "experiment")
+ private ExperimentConfigData userConfigurationData;
+
+ @OneToMany (fetch = FetchType.LAZY, mappedBy = "experiment")
+ private List<WorkflowNodeDetail> workflowNodeDetails;
+
+ @OneToMany (fetch = FetchType.LAZY, mappedBy = "experiment")
+ private List<Status> stateChangeList;
+
+ @OneToMany (fetch = FetchType.LAZY, mappedBy = "experiment")
+ private List<ErrorDetail> errorDetails;
+
+ @OneToOne (fetch = FetchType.LAZY, mappedBy = "experiment")
+ private Status experimentStatus;
+
+ @OneToMany (fetch = FetchType.LAZY, mappedBy = "experiment")
+ private List<Notification_Email> notificationEmails;
+
+ @OneToMany(fetch=FetchType.LAZY, mappedBy = "experiment")
+ private Collection<Status> statuses;
+
+ public String getExpId() {
+ return expId;
+ }
+
+ public void setExpId(String expId) {
+ this.expId = expId;
+ }
+
+ public String getGatewayId() {
+ return gatewayId;
+ }
+
+ public void setGatewayId(String gatewayId) {
+ this.gatewayId = gatewayId;
+ }
+
+ public String getExecutionUser() {
+ return executionUser;
+ }
+
+ public void setExecutionUser(String executionUser) {
+ this.executionUser = executionUser;
+ }
+
+ public Timestamp getCreationTime() {
+ return creationTime;
+ }
+
+ public void setCreationTime(Timestamp creationTime) {
+ this.creationTime = creationTime;
+ }
+
+ public String getExpName() {
+ return expName;
+ }
+
+ public void setExpName(String expName) {
+ this.expName = expName;
+ }
+
+ public String getExpDesc() {
+ return expDesc;
+ }
+
+ public void setExpDesc(String expDesc) {
+ this.expDesc = expDesc;
+ }
+
+ public String getApplicationId() {
+ return applicationId;
+ }
+
+ public void setApplicationId(String applicationId) {
+ this.applicationId = applicationId;
+ }
+
+ public String getAppVersion() {
+ return appVersion;
+ }
+
+ public void setAppVersion(String appVersion) {
+ this.appVersion = appVersion;
+ }
+
+ public String getWorkflowTemplateId() {
+ return workflowTemplateId;
+ }
+
+ public void setWorkflowTemplateId(String workflowTemplateId) {
+ this.workflowTemplateId = workflowTemplateId;
+ }
+
+ public String getWorkflowTemplateVersion() {
+ return workflowTemplateVersion;
+ }
+
+ public void setWorkflowTemplateVersion(String workflowTemplateVersion) {
+ this.workflowTemplateVersion = workflowTemplateVersion;
+ }
+
+ public String getWorkflowExecutionId() {
+ return workflowExecutionId;
+ }
+
+ public void setWorkflowExecutionId(String workflowExecutionId) {
+ this.workflowExecutionId = workflowExecutionId;
+ }
+
+ public boolean isAllowNotification() {
+ return allowNotification;
+ }
+
+ public void setAllowNotification(boolean allowNotification) {
+ this.allowNotification = allowNotification;
+ }
+
+ public String getGatewayExecutionId() {
+ return gatewayExecutionId;
+ }
+
+ public String getProjectID() {
+ return projectID;
+ }
+
+ public void setProjectID(String projectID) {
+ this.projectID = projectID;
+ }
+
+ public List<Experiment_Output> getExperimentOutputs() {
+ return experimentOutputs;
+ }
+
+ public void setExperimentOutputs(List<Experiment_Output> experimentOutputs) {
+ this.experimentOutputs = experimentOutputs;
+ }
+
+ public List<Experiment_Input> getExperimentInputs() {
+ return experimentInputs;
+ }
+
+ public void setExperimentInputs(List<Experiment_Input> experimentInputs) {
+ this.experimentInputs = experimentInputs;
+ }
+
+ public Computational_Resource_Scheduling getResourceScheduling() {
+ return resourceScheduling;
+ }
+
+ public void setResourceScheduling(Computational_Resource_Scheduling resourceScheduling) {
+ this.resourceScheduling = resourceScheduling;
+ }
+
+ public List<ErrorDetail> getErrorDetails() {
+ return errorDetails;
+ }
+
+ public ExperimentConfigData getUserConfigurationData() {
+ return userConfigurationData;
+ }
+
+ public void setUserConfigurationData(ExperimentConfigData userConfigurationData) {
+ this.userConfigurationData = userConfigurationData;
+ }
+
+ public List<WorkflowNodeDetail> getWorkflowNodeDetails() {
+ return workflowNodeDetails;
+ }
+
+ public void setWorkflowNodeDetails(List<WorkflowNodeDetail> workflowNodeDetails) {
+ this.workflowNodeDetails = workflowNodeDetails;
+ }
+
+ public List<Status> getStateChangeList() {
+ return stateChangeList;
+ }
+
+ public void setStateChangeList(List<Status> stateChangeList) {
+ this.stateChangeList = stateChangeList;
+ }
+
+ public void setErrorDetails(List<ErrorDetail> errorDetails) {
+ this.errorDetails = errorDetails;
+ }
+
+ public Status getExperimentStatus() {
+ return experimentStatus;
+ }
+
+ public void setExperimentStatus(Status experimentStatus) {
+ this.experimentStatus = experimentStatus;
+ }
+
+ public List<Notification_Email> getNotificationEmails() {
+ return notificationEmails;
+ }
+
+ public void setNotificationEmails(List<Notification_Email> notificationEmails) {
+ this.notificationEmails = notificationEmails;
+ }
+
+ public void setGatewayExecutionId(String gatewayExecutionId) {
+ this.gatewayExecutionId = gatewayExecutionId;
+ }
+
+ public Collection<Status> getStatuses() {
+ return statuses;
+ }
+
+ public void setStatuses(Collection<Status> statuses) {
+ this.statuses = statuses;
+ }
+}
http://git-wip-us.apache.org/repos/asf/airavata/blob/22bcbb40/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/ExperimentConfigData.java
----------------------------------------------------------------------
diff --git a/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/ExperimentConfigData.java b/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/ExperimentConfigData.java
new file mode 100644
index 0000000..4510996
--- /dev/null
+++ b/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/ExperimentConfigData.java
@@ -0,0 +1,142 @@
+/*
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ */
+
+package org.apache.airavata.experiment.catalog.model;
+
+import org.apache.openjpa.persistence.DataCache;
+
+import javax.persistence.*;
+import java.io.Serializable;
+
+@DataCache
+@Entity
+@Table(name = "CONFIG_DATA")
+public class ExperimentConfigData implements Serializable {
+ @Id
+ @Column(name = "EXPERIMENT_ID")
+ private String expId;
+ @Column(name = "AIRAVATA_AUTO_SCHEDULE")
+ private boolean airavataAutoSchedule;
+ @Column(name = "OVERRIDE_MANUAL_SCHEDULE_PARAMS")
+ private boolean overrideManualParams;
+ @Column(name = "SHARE_EXPERIMENT")
+ private boolean shareExp;
+ @Column(name = "USER_DN")
+ private String userDn;
+ @Column(name = "GENERATE_CERT")
+ private boolean generateCert;
+
+ @ManyToOne(cascade= CascadeType.MERGE)
+ @JoinColumn(name = "EXPERIMENT_ID")
+ private Experiment experiment;
+
+ @OneToOne (fetch = FetchType.LAZY, mappedBy = "experiment")
+ private Computational_Resource_Scheduling resourceScheduling;
+
+ @OneToOne (fetch = FetchType.LAZY, mappedBy = "experiment")
+ private AdvancedInputDataHandling inputDataHandling;
+
+ @OneToOne (fetch = FetchType.LAZY, mappedBy = "experiment")
+ private AdvancedOutputDataHandling outputDataHandling;
+
+ @OneToOne (fetch = FetchType.LAZY, mappedBy = "experiment")
+ private QosParam qosParam;
+
+ public String getExpId() {
+ return expId;
+ }
+
+ public void setExpId(String expId) {
+ this.expId = expId;
+ }
+
+ 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;
+ }
+
+ public String getUserDn() {
+ return userDn;
+ }
+
+ public void setUserDn(String userDn) {
+ this.userDn = userDn;
+ }
+
+ public boolean isGenerateCert() {
+ return generateCert;
+ }
+
+ public void setGenerateCert(boolean generateCert) {
+ this.generateCert = generateCert;
+ }
+
+ public AdvancedInputDataHandling getInputDataHandling() {
+ return inputDataHandling;
+ }
+
+ public void setInputDataHandling(AdvancedInputDataHandling inputDataHandling) {
+ this.inputDataHandling = inputDataHandling;
+ }
+
+ public AdvancedOutputDataHandling getOutputDataHandling() {
+ return outputDataHandling;
+ }
+
+ public void setOutputDataHandling(AdvancedOutputDataHandling outputDataHandling) {
+ this.outputDataHandling = outputDataHandling;
+ }
+
+ public QosParam getQosParam() {
+ return qosParam;
+ }
+
+ public void setQosParam(QosParam qosParam) {
+ this.qosParam = qosParam;
+ }
+
+ public Computational_Resource_Scheduling getResourceScheduling() {
+ return resourceScheduling;
+ }
+
+ public void setResourceScheduling(Computational_Resource_Scheduling resourceScheduling) {
+ this.resourceScheduling = resourceScheduling;
+ }
+}
http://git-wip-us.apache.org/repos/asf/airavata/blob/22bcbb40/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/Experiment_Input.java
----------------------------------------------------------------------
diff --git a/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/Experiment_Input.java b/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/Experiment_Input.java
new file mode 100644
index 0000000..c074889
--- /dev/null
+++ b/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/Experiment_Input.java
@@ -0,0 +1,170 @@
+/*
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ */
+
+package org.apache.airavata.experiment.catalog.model;
+
+import org.apache.openjpa.persistence.DataCache;
+
+import javax.persistence.*;
+import java.io.Serializable;
+
+@DataCache
+@Entity
+@Table(name ="EXPERIMENT_INPUT")
+@IdClass(Experiment_Input_PK.class)
+public class Experiment_Input implements Serializable {
+ @Id
+ @Column(name = "EXPERIMENT_ID")
+ private String experiment_id;
+
+ @Id
+ @Column(name = "INPUT_KEY")
+ private String ex_key;
+
+ @Lob
+ @Column(name = "VALUE")
+ private char[] value;
+
+ @Column(name = "DATA_TYPE")
+ private String dataType;
+
+ @Column(name = "APP_ARGUMENT")
+ private String appArgument;
+
+ @Column(name = "STANDARD_INPUT")
+ private boolean standardInput;
+
+ @Column(name = "USER_FRIENDLY_DESC")
+ private String userFriendlyDesc;
+
+ @Column(name = "METADATA")
+ private String metadata;
+
+ @Column(name = "INPUT_ORDER")
+ private int inputOrder;
+
+ @Column(name="IS_REQUIRED")
+ private boolean isRequired;
+ @Column(name="REQUIRED_TO_COMMANDLINE")
+ private boolean requiredToCMD;
+ @Column(name = "DATA_STAGED")
+ private boolean dataStaged;
+
+ @ManyToOne
+ @JoinColumn(name = "EXPERIMENT_ID")
+ private Experiment experiment;
+
+ public int getInputOrder() {
+ return inputOrder;
+ }
+
+ public void setInputOrder(int inputOrder) {
+ this.inputOrder = inputOrder;
+ }
+
+ 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;
+ }
+
+ public char[] getValue() {
+ return value;
+ }
+
+ public void setValue(char[] value) {
+ this.value = value;
+ }
+
+ public String getDataType() {
+ return dataType;
+ }
+
+ public void setDataType(String dataType) {
+ this.dataType = dataType;
+ }
+
+ public String getMetadata() {
+ return metadata;
+ }
+
+ public void setMetadata(String metadata) {
+ this.metadata = metadata;
+ }
+
+ public String getAppArgument() {
+ return appArgument;
+ }
+
+ public void setAppArgument(String appArgument) {
+ this.appArgument = appArgument;
+ }
+
+ public boolean isStandardInput() {
+ return standardInput;
+ }
+
+ public void setStandardInput(boolean standardInput) {
+ this.standardInput = standardInput;
+ }
+
+ public String getUserFriendlyDesc() {
+ return userFriendlyDesc;
+ }
+
+ public void setUserFriendlyDesc(String userFriendlyDesc) {
+ this.userFriendlyDesc = userFriendlyDesc;
+ }
+
+ public boolean isRequired() {
+ return isRequired;
+ }
+
+ public void setRequired(boolean isRequired) {
+ this.isRequired = isRequired;
+ }
+
+ public boolean isRequiredToCMD() {
+ return requiredToCMD;
+ }
+
+ public void setRequiredToCMD(boolean requiredToCMD) {
+ this.requiredToCMD = requiredToCMD;
+ }
+
+ public boolean isDataStaged() {
+ return dataStaged;
+ }
+
+ public void setDataStaged(boolean dataStaged) {
+ this.dataStaged = dataStaged;
+ }
+}
http://git-wip-us.apache.org/repos/asf/airavata/blob/22bcbb40/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/Experiment_Input_PK.java
----------------------------------------------------------------------
diff --git a/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/Experiment_Input_PK.java b/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/Experiment_Input_PK.java
new file mode 100644
index 0000000..4a9886f
--- /dev/null
+++ b/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/Experiment_Input_PK.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.experiment.catalog.model;
+
+import java.io.Serializable;
+
+public class Experiment_Input_PK implements Serializable {
+ 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/22bcbb40/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/Experiment_Output.java
----------------------------------------------------------------------
diff --git a/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/Experiment_Output.java b/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/Experiment_Output.java
new file mode 100644
index 0000000..d9d728f
--- /dev/null
+++ b/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/Experiment_Output.java
@@ -0,0 +1,143 @@
+/*
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ */
+
+package org.apache.airavata.experiment.catalog.model;
+
+import org.apache.openjpa.persistence.DataCache;
+
+import javax.persistence.*;
+import java.io.Serializable;
+
+@DataCache
+@Entity
+@Table(name ="EXPERIMENT_OUTPUT")
+@IdClass(Experiment_Output_PK.class)
+public class Experiment_Output implements Serializable {
+ @Id
+ @Column(name = "EXPERIMENT_ID")
+ private String experiment_id;
+
+ @Id
+ @Column(name = "OUTPUT_KEY")
+ private String ex_key;
+ @Lob
+ @Column(name = "VALUE")
+ private char[] value;
+ @Column(name = "DATA_TYPE")
+ private String dataType;
+
+ @Column(name = "IS_REQUIRED")
+ private boolean isRequired;
+ @Column(name="REQUIRED_TO_COMMANDLINE")
+ private boolean requiredToCMD;
+ @Column(name = "DATA_MOVEMENT")
+ private boolean dataMovement;
+ @Column(name = "DATA_NAME_LOCATION")
+ private String dataNameLocation;
+ @Column(name = "SEARCH_QUERY")
+ private String searchQuery;
+ @Column(name = "APP_ARGUMENT")
+ private String applicationArgument;
+
+ @ManyToOne
+ @JoinColumn(name = "EXPERIMENT_ID")
+ private Experiment experiment;
+
+ 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;
+ }
+
+ public char[] getValue() {
+ return value;
+ }
+
+ public void setValue(char[] value) {
+ this.value = value;
+ }
+
+ public String getDataType() {
+ return dataType;
+ }
+
+ public void setDataType(String dataType) {
+ this.dataType = dataType;
+ }
+
+ public boolean isRequired() {
+ return isRequired;
+ }
+
+ public void setRequired(boolean isRequired) {
+ this.isRequired = isRequired;
+ }
+
+ public boolean isRequiredToCMD() {
+ return requiredToCMD;
+ }
+
+ public void setRequiredToCMD(boolean requiredToCMD) {
+ this.requiredToCMD = requiredToCMD;
+ }
+
+ public boolean isDataMovement() {
+ return dataMovement;
+ }
+
+ public void setDataMovement(boolean dataMovement) {
+ this.dataMovement = dataMovement;
+ }
+
+ public String getDataNameLocation() {
+ return dataNameLocation;
+ }
+
+ public void setDataNameLocation(String dataNameLocation) {
+ this.dataNameLocation = dataNameLocation;
+ }
+
+ public String getSearchQuery() {
+ return searchQuery;
+ }
+
+ public void setSearchQuery(String searchQuery) {
+ this.searchQuery = searchQuery;
+ }
+
+ public String getApplicationArgument() {
+ return applicationArgument;
+ }
+
+ public void setApplicationArgument(String applicationArgument) {
+ this.applicationArgument = applicationArgument;
+ }
+}
http://git-wip-us.apache.org/repos/asf/airavata/blob/22bcbb40/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/Experiment_Output_PK.java
----------------------------------------------------------------------
diff --git a/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/Experiment_Output_PK.java b/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/Experiment_Output_PK.java
new file mode 100644
index 0000000..822021a
--- /dev/null
+++ b/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/Experiment_Output_PK.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.experiment.catalog.model;
+
+import java.io.Serializable;
+
+public class Experiment_Output_PK implements Serializable {
+ 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/22bcbb40/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/Gateway.java
----------------------------------------------------------------------
diff --git a/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/Gateway.java b/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/Gateway.java
new file mode 100644
index 0000000..f3e693c
--- /dev/null
+++ b/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/Gateway.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.experiment.catalog.model;
+
+import org.apache.openjpa.persistence.DataCache;
+
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.Id;
+import javax.persistence.Table;
+import java.io.Serializable;
+
+@DataCache
+@Entity
+@Table(name ="GATEWAY")
+public class Gateway implements Serializable {
+ @Id
+ @Column(name = "GATEWAY_ID")
+ private String gateway_id;
+ @Column(name = "GATEWAY_NAME")
+ private String gateway_name;
+ @Column(name = "DOMAIN")
+ private String domain;
+ @Column(name = "EMAIL_ADDRESS")
+ private String emailAddress;
+
+ public String getGateway_name() {
+ return gateway_name;
+ }
+
+ public void setGateway_name(String gateway_name) {
+ this.gateway_name = gateway_name;
+ }
+
+ public String getDomain() {
+ return domain;
+ }
+
+ public void setDomain(String domain) {
+ this.domain = domain;
+ }
+
+ public String getGateway_id() {
+ return gateway_id;
+ }
+
+ public void setGateway_id(String gateway_id) {
+ this.gateway_id = gateway_id;
+ }
+
+ public String getEmailAddress() {
+ return emailAddress;
+ }
+
+ public void setEmailAddress(String emailAddress) {
+ this.emailAddress = emailAddress;
+ }
+}
http://git-wip-us.apache.org/repos/asf/airavata/blob/22bcbb40/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/Gateway_Worker.java
----------------------------------------------------------------------
diff --git a/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/Gateway_Worker.java b/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/Gateway_Worker.java
new file mode 100644
index 0000000..d4ef9b9
--- /dev/null
+++ b/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/Gateway_Worker.java
@@ -0,0 +1,82 @@
+/*
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+*/
+package org.apache.airavata.experiment.catalog.model;
+
+import org.apache.openjpa.persistence.DataCache;
+
+import javax.persistence.*;
+import java.io.Serializable;
+
+@DataCache
+@Entity
+@Table(name ="GATEWAY_WORKER")
+@IdClass(Gateway_Worker_PK.class)
+public class Gateway_Worker implements Serializable {
+ @Id
+ @Column(name = "GATEWAY_ID")
+ private String gateway_id;
+
+ @Id
+ @Column(name = "USER_NAME")
+ private String user_name;
+
+ @ManyToOne(cascade=CascadeType.MERGE)
+ @JoinColumn(name = "GATEWAY_ID")
+ private Gateway gateway;
+
+
+ @ManyToOne(cascade=CascadeType.MERGE)
+ @JoinColumn(name = "USER_NAME")
+ private Users user;
+
+ public String getUser_name() {
+ return user_name;
+ }
+
+ public void setUser_name(String user_name) {
+ this.user_name = user_name;
+ }
+
+ public void setGateway(Gateway gateway) {
+ this.gateway = gateway;
+ }
+
+ public Gateway getGateway() {
+ return gateway;
+ }
+
+ public Users getUser() {
+ return user;
+ }
+
+ public void setUser(Users user) {
+ this.user = user;
+ }
+
+ public String getGateway_id() {
+ return gateway_id;
+ }
+
+ public void setGateway_id(String gateway_id) {
+ this.gateway_id = gateway_id;
+ }
+}
+
http://git-wip-us.apache.org/repos/asf/airavata/blob/22bcbb40/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/Gateway_Worker_PK.java
----------------------------------------------------------------------
diff --git a/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/Gateway_Worker_PK.java b/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/Gateway_Worker_PK.java
new file mode 100644
index 0000000..49ca862
--- /dev/null
+++ b/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/Gateway_Worker_PK.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.experiment.catalog.model;
+
+import java.io.Serializable;
+
+public class Gateway_Worker_PK implements Serializable {
+ private String gateway_id;
+ private String user_name;
+
+ public Gateway_Worker_PK(String gateway_id, String user_name) {
+ this.gateway_id = gateway_id;
+ this.user_name = user_name;
+ }
+
+ public Gateway_Worker_PK() {
+ ;
+ }
+
+ @Override
+ public boolean equals(Object o) {
+ return false;
+ }
+
+ @Override
+ public int hashCode() {
+ return 1;
+ }
+
+ public String getUser_name() {
+ return user_name;
+ }
+
+ public void setUser_name(String user_name) {
+ this.user_name = user_name;
+ }
+
+ public String getGateway_id() {
+ return gateway_id;
+ }
+
+ public void setGateway_id(String gateway_id) {
+ this.gateway_id = gateway_id;
+ }
+}
http://git-wip-us.apache.org/repos/asf/airavata/blob/22bcbb40/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/JobDetail.java
----------------------------------------------------------------------
diff --git a/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/JobDetail.java b/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/JobDetail.java
new file mode 100644
index 0000000..7142313
--- /dev/null
+++ b/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/JobDetail.java
@@ -0,0 +1,135 @@
+/*
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ */
+
+package org.apache.airavata.experiment.catalog.model;
+
+import org.apache.openjpa.persistence.DataCache;
+
+import javax.persistence.*;
+import java.io.Serializable;
+import java.sql.Timestamp;
+import java.util.List;
+
+@DataCache
+@Entity
+@Table(name = "JOB_DETAIL")
+@IdClass(JobDetails_PK.class)
+public class JobDetail implements Serializable {
+ @Id
+ @Column(name = "JOB_ID")
+ private String jobId;
+ @Id
+ @Column(name = "TASK_ID")
+ private String taskId;
+ @Column(name = "JOB_DESCRIPTION")
+ @Lob
+ private char[] jobDescription;
+ @Column(name = "CREATION_TIME")
+ private Timestamp creationTime;
+ @Column(name = "COMPUTE_RESOURCE_CONSUMED")
+ private String computeResourceConsumed;
+ @Column(name = "JOBNAME")
+ private String jobName;
+ @Column(name = "WORKING_DIR")
+ private String workingDir;
+
+ @ManyToOne(cascade= CascadeType.MERGE)
+ @JoinColumn(name = "TASK_ID")
+ private TaskDetail task;
+
+ @OneToOne (fetch = FetchType.LAZY, mappedBy = "jobDetail")
+ private Status jobStatus;
+
+ @OneToMany (fetch = FetchType.LAZY, mappedBy = "jobDetail")
+ private List<ErrorDetail> errorDetails;
+
+ public List<ErrorDetail> getErrorDetails() {
+ return errorDetails;
+ }
+
+ public void setErrorDetails(List<ErrorDetail> errorDetails) {
+ this.errorDetails = errorDetails;
+ }
+
+ public String getJobId() {
+ return jobId;
+ }
+
+ public void setJobId(String jobId) {
+ this.jobId = jobId;
+ }
+
+ public String getTaskId() {
+ return taskId;
+ }
+
+ public void setTaskId(String taskId) {
+ this.taskId = taskId;
+ }
+
+ public char[] getJobDescription() {
+ return jobDescription;
+ }
+
+ public void setJobDescription(char[] jobDescription) {
+ this.jobDescription = jobDescription;
+ }
+
+ public Timestamp getCreationTime() {
+ return creationTime;
+ }
+
+ public void setCreationTime(Timestamp creationTime) {
+ this.creationTime = creationTime;
+ }
+
+ public String getComputeResourceConsumed() {
+ return computeResourceConsumed;
+ }
+
+ public void setComputeResourceConsumed(String computeResourceConsumed) {
+ this.computeResourceConsumed = computeResourceConsumed;
+ }
+
+ public String getJobName() {
+ return jobName;
+ }
+
+ public void setJobName(String jobName) {
+ this.jobName = jobName;
+ }
+
+ public String getWorkingDir() {
+ return workingDir;
+ }
+
+ public void setWorkingDir(String workingDir) {
+ this.workingDir = workingDir;
+ }
+
+ public Status getJobStatus() {
+ return jobStatus;
+ }
+
+ public void setJobStatus(Status jobStatus) {
+ this.jobStatus = jobStatus;
+ }
+}
http://git-wip-us.apache.org/repos/asf/airavata/blob/22bcbb40/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/JobDetails_PK.java
----------------------------------------------------------------------
diff --git a/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/JobDetails_PK.java b/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/JobDetails_PK.java
new file mode 100644
index 0000000..a68a1a0
--- /dev/null
+++ b/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/JobDetails_PK.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.experiment.catalog.model;
+
+import java.io.Serializable;
+
+public class JobDetails_PK implements Serializable {
+ private String jobId;
+ private String taskId;
+
+ public JobDetails_PK(String jobId, String taskId) {
+ this.jobId = jobId;
+ this.taskId = taskId;
+ }
+
+ public JobDetails_PK() {
+ ;
+ }
+
+ @Override
+ public boolean equals(Object o) {
+ return false;
+ }
+
+ @Override
+ public int hashCode() {
+ return 1;
+ }
+
+ public String getJobId() {
+ return jobId;
+ }
+
+ public void setJobId(String jobId) {
+ this.jobId = jobId;
+ }
+
+ public String getTaskId() {
+ return taskId;
+ }
+
+ public void setTaskId(String taskId) {
+ this.taskId = taskId;
+ }
+}
http://git-wip-us.apache.org/repos/asf/airavata/blob/22bcbb40/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/NodeInput.java
----------------------------------------------------------------------
diff --git a/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/NodeInput.java b/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/NodeInput.java
new file mode 100644
index 0000000..1109774
--- /dev/null
+++ b/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/NodeInput.java
@@ -0,0 +1,163 @@
+/*
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ */
+
+package org.apache.airavata.experiment.catalog.model;
+
+import org.apache.openjpa.persistence.DataCache;
+
+import javax.persistence.*;
+import java.io.Serializable;
+
+@DataCache
+@Entity
+@Table(name = "NODE_INPUT")
+@IdClass(NodeInput_PK.class)
+public class NodeInput implements Serializable {
+ @Id
+ @Column(name = "NODE_INSTANCE_ID")
+ private String nodeId;
+ @Id
+ @Column(name = "INPUT_KEY")
+ private String inputKey;
+ @Column(name = "DATA_TYPE")
+ private String dataType;
+ @Column(name = "METADATA")
+ private String metadata;
+ @Column(name = "VALUE")
+ private String value;
+ @Column(name = "APP_ARGUMENT")
+ private String appArgument;
+ @Column(name = "INPUT_ORDER")
+ private int inputOrder;
+
+ @Column(name = "STANDARD_INPUT")
+ private boolean standardInput;
+
+ @Column(name = "USER_FRIENDLY_DESC")
+ private String userFriendlyDesc;
+
+ @Column(name="IS_REQUIRED")
+ private boolean isRequired;
+ @Column(name="REQUIRED_TO_COMMANDLINE")
+ private boolean requiredToCMD;
+ @Column(name = "DATA_STAGED")
+ private boolean dataStaged;
+
+ @ManyToOne(cascade= CascadeType.MERGE)
+ @JoinColumn(name = "NODE_INSTANCE_ID")
+ private WorkflowNodeDetail nodeDetail;
+
+ public String getInputKey() {
+ return inputKey;
+ }
+
+ public void setInputKey(String inputKey) {
+ this.inputKey = inputKey;
+ }
+
+ public String getDataType() {
+ return dataType;
+ }
+
+ public void setDataType(String dataType) {
+ this.dataType = dataType;
+ }
+
+ public String getMetadata() {
+ return metadata;
+ }
+
+ public void setMetadata(String metadata) {
+ this.metadata = metadata;
+ }
+
+ public String getValue() {
+ return value;
+ }
+
+ public void setValue(String value) {
+ this.value = value;
+ }
+
+ public String getNodeId() {
+ return nodeId;
+ }
+
+ public void setNodeId(String nodeId) {
+ this.nodeId = nodeId;
+ }
+
+ public String getAppArgument() {
+ return appArgument;
+ }
+
+ public void setAppArgument(String appArgument) {
+ this.appArgument = appArgument;
+ }
+
+ public boolean isStandardInput() {
+ return standardInput;
+ }
+
+ public void setStandardInput(boolean standardInput) {
+ this.standardInput = standardInput;
+ }
+
+ public String getUserFriendlyDesc() {
+ return userFriendlyDesc;
+ }
+
+ public void setUserFriendlyDesc(String userFriendlyDesc) {
+ this.userFriendlyDesc = userFriendlyDesc;
+ }
+
+ public int getInputOrder() {
+ return inputOrder;
+ }
+
+ public void setInputOrder(int inputOrder) {
+ this.inputOrder = inputOrder;
+ }
+
+ public boolean getIsRequired() {
+ return isRequired;
+ }
+
+ public void setIsRequired(boolean isRequired) {
+ this.isRequired = isRequired;
+ }
+
+ public boolean getRequiredToCMD() {
+ return requiredToCMD;
+ }
+
+ public void setRequiredToCMD(boolean requiredToCMD) {
+ this.requiredToCMD = requiredToCMD;
+ }
+
+ public boolean isDataStaged() {
+ return dataStaged;
+ }
+
+ public void setDataStaged(boolean dataStaged) {
+ this.dataStaged = dataStaged;
+ }
+}
http://git-wip-us.apache.org/repos/asf/airavata/blob/22bcbb40/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/NodeInput_PK.java
----------------------------------------------------------------------
diff --git a/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/NodeInput_PK.java b/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/NodeInput_PK.java
new file mode 100644
index 0000000..3aeb980
--- /dev/null
+++ b/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/NodeInput_PK.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.experiment.catalog.model;
+
+import java.io.Serializable;
+
+public class NodeInput_PK implements Serializable {
+ private String nodeId;
+ private String inputKey;
+
+ public NodeInput_PK(String nodeId, String inputKey) {
+ this.nodeId = nodeId;
+ this.inputKey = inputKey;
+ }
+
+ public NodeInput_PK() {
+ ;
+ }
+
+ @Override
+ public boolean equals(Object o) {
+ return false;
+ }
+
+ @Override
+ public int hashCode() {
+ return 1;
+ }
+
+ public String getNodeId() {
+ return nodeId;
+ }
+
+ public void setNodeId(String nodeId) {
+ this.nodeId = nodeId;
+ }
+
+ public String getInputKey() {
+ return inputKey;
+ }
+
+ public void setInputKey(String inputKey) {
+ this.inputKey = inputKey;
+ }
+}
http://git-wip-us.apache.org/repos/asf/airavata/blob/22bcbb40/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/NodeOutput.java
----------------------------------------------------------------------
diff --git a/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/NodeOutput.java b/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/NodeOutput.java
new file mode 100644
index 0000000..9831805
--- /dev/null
+++ b/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/NodeOutput.java
@@ -0,0 +1,140 @@
+/*
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ */
+
+package org.apache.airavata.experiment.catalog.model;
+
+import org.apache.openjpa.persistence.DataCache;
+
+import javax.persistence.*;
+import java.io.Serializable;
+
+@DataCache
+@Entity
+@Table(name = "NODE_OUTPUT")
+@IdClass(NodeOutput_PK.class)
+public class NodeOutput implements Serializable {
+ @Id
+ @Column(name = "NODE_INSTANCE_ID")
+ private String nodeId;
+ @Id
+ @Column(name = "OUTPUT_KEY")
+ private String outputKey;
+ @Column(name = "DATA_TYPE")
+ private String dataType;
+ @Column(name = "VALUE")
+ private String value;
+ @Column(name = "IS_REQUIRED")
+ private boolean isRequired;
+ @Column(name="REQUIRED_TO_COMMANDLINE")
+ private boolean requiredToCMD;
+ @Column(name = "DATA_MOVEMENT")
+ private boolean dataMovement;
+ @Column(name = "DATA_NAME_LOCATION")
+ private String dataNameLocation;
+ @Column(name = "SEARCH_QUERY")
+ private String searchQuery;
+ @Column(name = "APP_ARGUMENT")
+ private String applicationArgument;
+
+ @ManyToOne(cascade= CascadeType.MERGE)
+ @JoinColumn(name = "NODE_INSTANCE_ID")
+ private WorkflowNodeDetail nodeDetail;
+
+ public String getNodeId() {
+ return nodeId;
+ }
+
+ public void setNodeId(String nodeId) {
+ this.nodeId = nodeId;
+ }
+
+ public String getValue() {
+ return value;
+ }
+
+ public void setValue(String value) {
+ this.value = value;
+ }
+
+ public String getOutputKey() {
+ return outputKey;
+ }
+
+ public void setOutputKey(String outputKey) {
+ this.outputKey = outputKey;
+ }
+
+ public String getDataType() {
+ return dataType;
+ }
+
+ public void setDataType(String dataType) {
+ this.dataType = dataType;
+ }
+
+ public boolean isRequired() {
+ return isRequired;
+ }
+
+ public void setRequired(boolean isRequired) {
+ this.isRequired = isRequired;
+ }
+
+ public boolean isRequiredToCMD() {
+ return requiredToCMD;
+ }
+
+ public void setRequiredToCMD(boolean requiredToCMD) {
+ this.requiredToCMD = requiredToCMD;
+ }
+
+ public boolean isDataMovement() {
+ return dataMovement;
+ }
+
+ public void setDataMovement(boolean dataMovement) {
+ this.dataMovement = dataMovement;
+ }
+
+ public String getDataNameLocation() {
+ return dataNameLocation;
+ }
+
+ public void setDataNameLocation(String dataNameLocation) {
+ this.dataNameLocation = dataNameLocation;
+ }
+
+ public String getSearchQuery() {
+ return searchQuery;
+ }
+
+ public void setSearchQuery(String searchQuery) {
+ this.searchQuery = searchQuery;
+ }
+
+ public String getApplicationArgument() {
+ return applicationArgument;
+ }
+
+ public void setApplicationArgument(String applicationArgument) {
+ this.applicationArgument = applicationArgument;
+ }
+}
http://git-wip-us.apache.org/repos/asf/airavata/blob/22bcbb40/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/NodeOutput_PK.java
----------------------------------------------------------------------
diff --git a/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/NodeOutput_PK.java b/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/NodeOutput_PK.java
new file mode 100644
index 0000000..fcbd4cf
--- /dev/null
+++ b/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/NodeOutput_PK.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.experiment.catalog.model;
+
+import java.io.Serializable;
+
+public class NodeOutput_PK implements Serializable {
+ private String nodeId;
+ private String outputKey;
+
+ public NodeOutput_PK(String nodeId, String outputKey) {
+ this.nodeId = nodeId;
+ this.outputKey = outputKey;
+ }
+
+ public NodeOutput_PK() {
+ ;
+ }
+
+ @Override
+ public boolean equals(Object o) {
+ return false;
+ }
+
+ @Override
+ public int hashCode() {
+ return 1;
+ }
+
+ public String getNodeId() {
+ return nodeId;
+ }
+
+ public void setNodeId(String nodeId) {
+ this.nodeId = nodeId;
+ }
+
+ public String getOutputKey() {
+ return outputKey;
+ }
+
+ public void setOutputKey(String outputKey) {
+ this.outputKey = outputKey;
+ }
+}
http://git-wip-us.apache.org/repos/asf/airavata/blob/22bcbb40/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/Notification_Email.java
----------------------------------------------------------------------
diff --git a/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/Notification_Email.java b/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/Notification_Email.java
new file mode 100644
index 0000000..8c8606e
--- /dev/null
+++ b/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/model/Notification_Email.java
@@ -0,0 +1,81 @@
+/*
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ */
+
+package org.apache.airavata.experiment.catalog.model;
+
+import org.apache.openjpa.persistence.DataCache;
+
+import javax.persistence.*;
+import java.io.Serializable;
+
+@DataCache
+@Entity
+@Table(name ="NOTIFICATION_EMAIL")
+public class Notification_Email implements Serializable {
+ @Id
+ @GeneratedValue
+ private int emailId;
+ @Column(name = "EXPERIMENT_ID")
+ private String experiment_id;
+ @Column(name = "TASK_ID")
+ private String taskId;
+ @Column(name = "EMAIL_ADDRESS")
+ private String emailAddress;
+
+ @ManyToOne
+ @JoinColumn(name = "EXPERIMENT_ID")
+ private Experiment experiment;
+ @ManyToOne
+ @JoinColumn(name = "TASK_ID")
+ private TaskDetail task;
+
+ public String getExperiment_id() {
+ return experiment_id;
+ }
+
+ public void setExperiment_id(String experiment_id) {
+ this.experiment_id = experiment_id;
+ }
+
+ public String getEmailAddress() {
+ return emailAddress;
+ }
+
+ public void setEmailAddress(String emailAddress) {
+ this.emailAddress = emailAddress;
+ }
+
+ public String getTaskId() {
+ return taskId;
+ }
+
+ public void setTaskId(String taskId) {
+ this.taskId = taskId;
+ }
+
+ public int getEmailId() {
+ return emailId;
+ }
+
+ public void setEmailId(int emailId) {
+ this.emailId = emailId;
+ }
+}