X-Git-Url: https://gerrit.onap.org/r/gitweb?p=policy%2Fengine.git;a=blobdiff_plain;f=ONAP-REST%2Fsrc%2Fmain%2Fjava%2Forg%2Fonap%2Fpolicy%2Frest%2Fjpa%2FPolicyEntity.java;h=8fa80e635f9a0c59bae73ff45393576d9d8d54f1;hp=f28a607af7125ec7313ad2f33886010f9236acb8;hb=refs%2Fchanges%2F84%2F98384%2F3;hpb=e31e46738ca14c18a00773e598df6639154aa1f2 diff --git a/ONAP-REST/src/main/java/org/onap/policy/rest/jpa/PolicyEntity.java b/ONAP-REST/src/main/java/org/onap/policy/rest/jpa/PolicyEntity.java index f28a607af..8fa80e635 100644 --- a/ONAP-REST/src/main/java/org/onap/policy/rest/jpa/PolicyEntity.java +++ b/ONAP-REST/src/main/java/org/onap/policy/rest/jpa/PolicyEntity.java @@ -2,14 +2,15 @@ * ============LICENSE_START======================================================= * ONAP-REST * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. + * Copyright (C) 2017-2018 AT&T Intellectual Property. All rights reserved. + * Modifications Copyright (C) 2019 Nordix Foundation. * ================================================================================ * Licensed 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. @@ -19,11 +20,14 @@ */ package org.onap.policy.rest.jpa; + /* */ +import com.fasterxml.jackson.annotation.JsonBackReference; +import com.fasterxml.jackson.annotation.JsonManagedReference; + import java.io.Serializable; import java.util.Date; -import java.util.Objects; import javax.persistence.Column; import javax.persistence.Entity; @@ -42,92 +46,118 @@ import javax.persistence.Temporal; import javax.persistence.TemporalType; import javax.persistence.Version; -import com.fasterxml.jackson.annotation.JsonBackReference; -import com.fasterxml.jackson.annotation.JsonManagedReference; - -/* - * The Entity class to persist a policy object and its configuration data - */ +import lombok.EqualsAndHashCode; +import lombok.Getter; +import lombok.Setter; /** - * + * The Entity class to persist a policy object and its configuration data. */ +// @formatter:off @Entity -//Add a non-unique index and a constraint that says the combo of policyName and scopeId must be unique -@Table(name="PolicyEntity") - -@NamedQueries({ - @NamedQuery(name="PolicyEntity.findAll", query="SELECT e FROM PolicyEntity e "), - @NamedQuery(name="PolicyEntity.findAllByDeletedFlag", query="SELECT e FROM PolicyEntity e WHERE e.deleted = :deleted"), - @NamedQuery(name="PolicyEntity.FindById", query="SELECT e FROM PolicyEntity e WHERE e.policyId = :id"), - @NamedQuery(name="PolicyEntity.deleteAll", query="DELETE FROM PolicyEntity WHERE 1=1"), - @NamedQuery(name="PolicyEntity.findByNameAndScope", query="SELECT e FROM PolicyEntity e WHERE e.policyName = :name AND e.scope = :scope") -}) - +// Add a non-unique index and a constraint that says the combo of policyName and scopeId must be unique +@Table(name = "PolicyEntity") +@NamedQueries( + { + @NamedQuery( + name = "PolicyEntity.findAll", + query = "SELECT e FROM PolicyEntity e " + ), + @NamedQuery( + name = "PolicyEntity.findAllByDeletedFlag", + query = "SELECT e FROM PolicyEntity e WHERE e.deleted = :deleted" + ), + @NamedQuery( + name = "PolicyEntity.FindById", + query = "SELECT e FROM PolicyEntity e WHERE e.policyId = :id" + ), + @NamedQuery( + name = "PolicyEntity.deleteAll", + query = "DELETE FROM PolicyEntity WHERE 1=1" + ), + @NamedQuery( + name = "PolicyEntity.findByNameAndScope", + query = "SELECT e FROM PolicyEntity e WHERE e.policyName = :name AND e.scope = :scope" + ) + } +) +@Getter +@Setter +@EqualsAndHashCode +// @formatter:on public class PolicyEntity implements Serializable { private static final long serialVersionUID = 1L; @Id @GeneratedValue(strategy = GenerationType.AUTO) - @Column (name="policyId") + @Column(name = "policyId") @JsonBackReference private long policyId; - @Column(name="policyName", nullable=false, unique=false, length=255) + @Column(name = "policyName", nullable = false, unique = false, length = 255) private String policyName; - //The scope is the directory structure in dot notation. For example: org.onap.myproject - @Column(name="scope", nullable=false, unique=false, length=255) + // The scope is the directory structure in dot notation. For example: org.onap.myproject + @Column(name = "scope", nullable = false, unique = false, length = 255) private String scope; @Version - @Column(name="version") + @Column(name = "version") private int version; - //not going to be used - @Column(name="policyVersion") + // not going to be used + @Column(name = "policyVersion") private int policyVersion = 0; @Lob - @Column(name="policyData", nullable=false, columnDefinition="TEXT") + @Column(name = "policyData", nullable = false, columnDefinition = "TEXT") private String policyData = "NoData"; - @OneToOne(optional=true, orphanRemoval=true) - @JoinColumn(name="configurationDataId") + @OneToOne(optional = true, orphanRemoval = true) + @JoinColumn(name = "configurationDataId") @JsonManagedReference private ConfigurationDataEntity configurationDataEntity; - @OneToOne(optional=true, orphanRemoval=true) - @JoinColumn(name="actionBodyId") + @OneToOne(optional = true, orphanRemoval = true) + @JoinColumn(name = "actionBodyId") @JsonManagedReference private ActionBodyEntity actionBodyEntity; - @Column(name="created_by", nullable=false, length=255) + @Column(name = "created_by", nullable = false, length = 255) private String createdBy = "guest"; @Temporal(TemporalType.TIMESTAMP) - @Column(name="created_date", updatable=false) + @Column(name = "created_date", updatable = false) private Date createdDate; - @Column(name="description", nullable=false, length=2048) + @Column(name = "description", nullable = false, length = 2048) private String description = "NoDescription"; - @Column(name="modified_by", nullable=false, length=255) + @Column(name = "modified_by", nullable = false, length = 255) private String modifiedBy = "guest"; @Temporal(TemporalType.TIMESTAMP) - @Column(name="modified_date", nullable=false) + @Column(name = "modified_date", nullable = false) private Date modifiedDate; - @Column(name="deleted", nullable=false) + @Column(name = "deleted", nullable = false) private boolean deleted = false; + @Column(name = "delete_reason_code", nullable = true, length = 100) + private String deleteReasonCode; + + @Column(name = "deleted_by", nullable = true, length = 45) + private String deletedBy; + public PolicyEntity() { super(); } + /** + * Set default values. + */ @PrePersist - public void prePersist() { + public void prePersist() { Date date = new Date(); this.createdDate = date; this.modifiedDate = date; @@ -139,39 +169,8 @@ public class PolicyEntity implements Serializable { } /** - * @return the policyId - */ - public long getPolicyId() { - return policyId; - } - - /** - * @param policyId cannot be set - */ - - public String getPolicyName() { - return policyName; - } - - public void setPolicyName(String policyName) { - this.policyName = policyName; - } - - /** - * @return the policyData - */ - public String getPolicyData() { - return policyData; - } - - /** - * @param policyData the policyData to set - */ - public void setPolicyData(String policyData) { - this.policyData = policyData; - } - - /** + * Returns configurationDataEntity. + * * @return the configurationDataEntity */ public ConfigurationDataEntity getConfigurationData() { @@ -179,152 +178,11 @@ public class PolicyEntity implements Serializable { } /** + * Set configurationDataEntity. + * * @param configurationDataEntity the configurationDataEntity to set */ public void setConfigurationData(ConfigurationDataEntity configurationDataEntity) { this.configurationDataEntity = configurationDataEntity; } - - /** - * @return the actionBodyEntity - */ - public ActionBodyEntity getActionBodyEntity() { - return actionBodyEntity; - } - - /** - * @param actionBodyEntity the actionBodyEntity to set - */ - public void setActionBodyEntity(ActionBodyEntity actionBodyEntity) { - this.actionBodyEntity = actionBodyEntity; - } - - /** - * @return the scope - */ - public String getScope() { - return scope; - } - - /** - * @param scope the scope to set - */ - public void setScope(String scope) { - this.scope = scope; - } - - /** - * @return the createdBy - */ - public String getCreatedBy() { - return createdBy; - } - - /** - * @param createdBy the createdBy to set - */ - public void setCreatedBy(String createdBy) { - this.createdBy = createdBy; - } - - /** - * @return the description - */ - public String getDescription() { - return description; - } - - /** - * @param description the description to set - */ - public void setDescription(String description) { - this.description = description; - } - - /** - * @return the modifiedBy - */ - public String getModifiedBy() { - return modifiedBy; - } - - /** - * @param modifiedBy the modifiedBy to set - */ - public void setModifiedBy(String modifiedBy) { - this.modifiedBy = modifiedBy; - } - - /** - * @return the version - */ - public int getVersion() { - return version; - } - - /** - * @return the createdDate - */ - public Date getCreatedDate() { - return createdDate; - } - - /** - * @return the modifiedDate - */ - public Date getModifiedDate() { - return modifiedDate; - } - - /** - * @return the deleted - */ - public boolean isDeleted() { - return deleted; - } - - /** - * @param deleted the deleted to set - */ - public void setDeleted(boolean deleted) { - this.deleted = deleted; - } - - @Override - public int hashCode() { - return Objects.hash(policyId, policyName, scope, version, policyVersion, policyData, configurationDataEntity, - actionBodyEntity, createdBy, createdDate, description, modifiedBy, modifiedDate, deleted); - } - - @Override - public boolean equals(Object obj) { - if(obj == null){ - return false; - } - if(obj == this){ - return true; - } - if(!(obj instanceof PolicyEntity)){ - return false; - } - - PolicyEntity p = (PolicyEntity) obj; - - return policyId == p.policyId && - policyName.equals(p.policyName) && - scope.equals(p.scope) && - version == p.version && - policyVersion == p.policyVersion && - policyData.equals(p.policyData) && - ((configurationDataEntity == null && p.configurationDataEntity == null) || (configurationDataEntity!=null && configurationDataEntity.equals(p.configurationDataEntity))) && - ((actionBodyEntity == null && p.actionBodyEntity == null) || (actionBodyEntity!=null && actionBodyEntity.equals(p.actionBodyEntity))) && - createdBy.equals(p.createdBy) && - createdDate.equals(p.createdDate) && - description.equals(p.description) && - modifiedBy.equals(p.modifiedBy) && - modifiedDate.equals(p.modifiedDate) && - deleted == p.deleted; - } - - }