1 package org.onap.so.db.catalog.beans;
3 import java.io.Serializable;
6 import javax.persistence.CascadeType;
7 import javax.persistence.Column;
8 import javax.persistence.Entity;
9 import javax.persistence.FetchType;
10 import javax.persistence.GeneratedValue;
11 import javax.persistence.GenerationType;
12 import javax.persistence.Id;
13 import javax.persistence.Lob;
14 import javax.persistence.OneToMany;
15 import javax.persistence.PrePersist;
16 import javax.persistence.Table;
17 import javax.persistence.Temporal;
18 import javax.persistence.TemporalType;
19 import org.apache.commons.lang3.builder.EqualsBuilder;
20 import org.apache.commons.lang3.builder.HashCodeBuilder;
21 import org.apache.commons.lang3.builder.ToStringBuilder;
22 import uk.co.blackpepper.bowman.annotation.LinkedResource;
25 @Table(name = "workflow")
26 public class Workflow implements Serializable {
28 private static final long serialVersionUID = 1485794141983033264L;
31 @Column(name = "ID", nullable = false, updatable = false)
32 @GeneratedValue(strategy = GenerationType.IDENTITY)
35 @Column(name = "ARTIFACT_UUID")
36 private String artifactUUID;
38 @Column(name = "ARTIFACT_NAME")
39 private String artifactName;
41 @Column(name = "NAME")
44 @Column(name = "OPERATION_NAME")
45 private String operationName;
47 @Column(name = "VERSION")
48 private Double version;
50 @Column(name = "DESCRIPTION")
51 private String description;
54 @Column(name = "BODY", columnDefinition = "LONGTEXT")
55 private String body = null;
57 @Column(name = "RESOURCE_TARGET")
58 private String resourceTarget;
60 @Column(name = "SOURCE")
61 private String source;
63 @Column(name = "TIMEOUT_MINUTES")
64 private Integer timeoutMinutes;
66 @Column(name = "ARTIFACT_CHECKSUM")
67 private String artifactChecksum;
69 @Column(name = "CREATION_TIMESTAMP", updatable = false)
70 @Temporal(TemporalType.TIMESTAMP)
73 @OneToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY, mappedBy = "workflow")
74 private List<VnfResourceWorkflow> vnfResourceWorkflow;
76 @OneToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY, mappedBy = "workflow")
77 private List<WorkflowActivitySpecSequence> workflowActivitySpecSequence;
80 protected void onCreate() {
81 this.created = new Date();
84 public Integer getID() {
88 public String getArtifactUUID() {
92 public void setArtifactUUID(String artifactUUID) {
93 this.artifactUUID = artifactUUID;
96 public String getArtifactName() {
100 public void setArtifactName(String artifactName) {
101 this.artifactName = artifactName;
104 public String getName() {
108 public void setName(String name) {
112 public String getOperationName() {
113 return operationName;
116 public void setOperationName(String operationName) {
117 this.operationName = operationName;
120 public Double getVersion() {
124 public void setVersion(Double version) {
125 this.version = version;
128 public String getDescription() {
132 public void setDescription(String description) {
133 this.description = description;
136 public String getBody() {
140 public void setBody(String body) {
144 public String getResourceTarget() {
145 return resourceTarget;
148 public void setResourceTarget(String resourceTarget) {
149 this.resourceTarget = resourceTarget;
152 public String getSource() {
156 public void setSource(String source) {
157 this.source = source;
160 public Integer getTimeoutMinutes() {
161 return timeoutMinutes;
164 public void setTimeoutMinutes(Integer timeoutMinutes) {
165 this.timeoutMinutes = timeoutMinutes;
168 public String getArtifactChecksum() {
169 return artifactChecksum;
172 public void setArtifactChecksum(String artifactChecksum) {
173 this.artifactChecksum = artifactChecksum;
176 public Date getCreated() {
180 public void setCreated(Date created) {
181 this.created = created;
185 public List<VnfResourceWorkflow> getVnfResourceWorkflow() {
186 return vnfResourceWorkflow;
189 public void setVnfResourceWorkflow(List<VnfResourceWorkflow> vnfResourceWorkflow) {
190 this.vnfResourceWorkflow = vnfResourceWorkflow;
194 public List<WorkflowActivitySpecSequence> getWorkflowActivitySpecSequence() {
195 return workflowActivitySpecSequence;
198 public void setWorkflowActivitySpecSequence(List<WorkflowActivitySpecSequence> workflowActivitySpecSequence) {
199 this.workflowActivitySpecSequence = workflowActivitySpecSequence;
203 public String toString() {
204 return new ToStringBuilder(this).append("ID", ID).append("artifactUUID", artifactUUID)
205 .append("artifactName", artifactName).append("name", name).append("operationName", operationName)
206 .append("version", version).append("description", description).append("body", body)
207 .append("resourceTarget", resourceTarget).append("source", source)
208 .append("timeoutMinutes", timeoutMinutes).append("artifactChecksum", artifactChecksum)
209 .append("created", created).append("vnfResourceWorkflow", vnfResourceWorkflow)
210 .append("WorkflowActivitySpecSequence", workflowActivitySpecSequence).toString();
214 public boolean equals(final Object other) {
215 if (!(other instanceof Workflow)) {
218 Workflow castOther = (Workflow) other;
219 return new EqualsBuilder().append(ID, castOther.ID).isEquals();
223 public int hashCode() {
224 return new HashCodeBuilder().append(ID).toHashCode();