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%2FObadvice.java;h=0734203e441c2751073ba41a762d31da65efc14a;hp=b3b52cdd49ed16f3a9d3a2214bf55b328cafe955;hb=2f3ca9fc5edc5a52659b3486605e0db508143318;hpb=073cc188efe9abb4c010cf674e34e2cf46ef1c52 diff --git a/ONAP-REST/src/main/java/org/onap/policy/rest/jpa/Obadvice.java b/ONAP-REST/src/main/java/org/onap/policy/rest/jpa/Obadvice.java index b3b52cdd4..0734203e4 100644 --- a/ONAP-REST/src/main/java/org/onap/policy/rest/jpa/Obadvice.java +++ b/ONAP-REST/src/main/java/org/onap/policy/rest/jpa/Obadvice.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. @@ -20,6 +21,8 @@ package org.onap.policy.rest.jpa; +import com.att.research.xacml.api.Identifier; + import java.io.Serializable; import java.util.Date; import java.util.HashSet; @@ -40,188 +43,168 @@ import javax.persistence.Temporal; import javax.persistence.TemporalType; import javax.persistence.Transient; -import com.att.research.xacml.api.Identifier; +import lombok.Getter; +import lombok.Setter; /** * The persistent class for the Obadvice database table. - * */ @Entity -@Table(name="Obadvice") -@NamedQuery(name="Obadvice.findAll", query="SELECT o FROM Obadvice o") +@Table(name = "Obadvice") +@NamedQuery(name = "Obadvice.findAll", query = "SELECT o FROM Obadvice o") +@Getter +@Setter public class Obadvice implements Serializable { - private static final long serialVersionUID = 1L; - - public static final String OBLIGATION = "Obligation"; - public static final String ADVICE = "Advice"; - public static final String EFFECT_PERMIT = "Permit"; - public static final String EFFECT_DENY = "Deny"; - @Id - @GeneratedValue(strategy = GenerationType.AUTO) - @Column(name="id") - private int id; - - @Column(name="type", nullable=false) - private String type; - - @Column(name="xacml_id", nullable=false, length=255) - private String xacmlId; - - @Column(name="fulfill_on", nullable=true, length=32) - private String fulfillOn; - - @Column(name="description", nullable=true, length=2048) - private String description; - - //bi-directional one-to-many association to Attribute Assignment - @OneToMany(mappedBy="obadvice", orphanRemoval=true, cascade=CascadeType.REMOVE) - private Set obadviceExpressions = new HashSet<>(2); - - @Column(name="created_by", nullable=false, length=255) - private String createdBy; - - @Temporal(TemporalType.TIMESTAMP) - @Column(name="created_date", nullable=false, updatable=false) - private Date createdDate; - - @Column(name="modified_by", nullable=false, length=255) - private String modifiedBy; - - @Temporal(TemporalType.TIMESTAMP) - @Column(name="modified_date", nullable=false) - private Date modifiedDate; - - public Obadvice() { - this.type = Obadvice.OBLIGATION; - this.fulfillOn = Obadvice.EFFECT_PERMIT; - } - - public Obadvice(String domain, String userid) { - this.xacmlId = domain; - this.type = Obadvice.OBLIGATION; - this.fulfillOn = Obadvice.EFFECT_PERMIT; - this.createdBy = userid; - this.modifiedBy = userid; - } - - public Obadvice(Identifier id, String userid) { - this(id.stringValue(), userid); - } - - @PrePersist - public void prePersist() { - Date date = new Date(); - this.createdDate = date; - this.modifiedDate = date; - } - - @PreUpdate - public void preUpdate() { - this.modifiedDate = new Date(); - } - - public int getId() { - return this.id; - } - - public void setId(int id) { - this.id = id; - } - - public String getCreatedBy() { - return this.createdBy; - } - - public void setCreatedBy(String createdBy) { - this.createdBy = createdBy; - } - - public String getDescription() { - return this.description; - } - - public void setDescription(String description) { - this.description = description; - } - - public String getFulfillOn() { - return this.fulfillOn; - } - - public void setFulfillOn(String fulfillOn) { - this.fulfillOn = fulfillOn; - } - - public String getModifiedBy() { - return this.modifiedBy; - } - - public void setModifiedBy(String modifiedBy) { - this.modifiedBy = modifiedBy; - } - - public String getType() { - return this.type; - } - - public void setType(String type) { - this.type = type; - } - - public String getXacmlId() { - return this.xacmlId; - } - - public void setXacmlId(String xacmlId) { - this.xacmlId = xacmlId; - } - - public Set getObadviceExpressions() { - return this.obadviceExpressions; - } - - public void setObadviceExpressions(Set obadviceExpressions) { - this.obadviceExpressions = obadviceExpressions; - } - - public ObadviceExpression addObadviceExpression(ObadviceExpression obadviceExpression) { - this.obadviceExpressions.add(obadviceExpression); - obadviceExpression.setObadvice(this); - - return obadviceExpression; - } - - public ObadviceExpression removeObadviceExpression(ObadviceExpression obadviceExpression) { - this.obadviceExpressions.remove(obadviceExpression); - obadviceExpression.setObadvice(null); - - return obadviceExpression; - } - - public void removeAllExpressions() { - if (this.obadviceExpressions == null) { - return; - } - for (ObadviceExpression expression : this.obadviceExpressions) { - expression.setObadvice(null); - } - this.obadviceExpressions.clear(); - } - - @Transient - public Obadvice clone() { - Obadvice obadvice = new Obadvice(); - - obadvice.type = this.type; - obadvice.xacmlId = this.xacmlId; - obadvice.fulfillOn = this.fulfillOn; - obadvice.description = this.description; - obadvice.createdBy = this.createdBy; - obadvice.modifiedBy = this.modifiedBy; - for (ObadviceExpression exp: this.obadviceExpressions) { - obadvice.addObadviceExpression(exp.clone()); - } - - return obadvice; - } + private static final long serialVersionUID = 1L; + + public static final String OBLIGATION = "Obligation"; + public static final String ADVICE = "Advice"; + public static final String EFFECT_PERMIT = "Permit"; + public static final String EFFECT_DENY = "Deny"; + @Id + @GeneratedValue(strategy = GenerationType.AUTO) + @Column(name = "id") + private int id; + + @Column(name = "type", nullable = false) + private String type; + + @Column(name = "xacml_id", nullable = false, length = 255) + private String xacmlId; + + @Column(name = "fulfill_on", nullable = true, length = 32) + private String fulfillOn; + + @Column(name = "description", nullable = true, length = 2048) + private String description; + + // bi-directional one-to-many association to Attribute Assignment + @OneToMany(mappedBy = "obadvice", orphanRemoval = true, cascade = CascadeType.REMOVE) + private Set obadviceExpressions = new HashSet<>(2); + + @Column(name = "created_by", nullable = false, length = 255) + private String createdBy; + + @Temporal(TemporalType.TIMESTAMP) + @Column(name = "created_date", nullable = false, updatable = false) + private Date createdDate; + + @Column(name = "modified_by", nullable = false, length = 255) + private String modifiedBy; + + @Temporal(TemporalType.TIMESTAMP) + @Column(name = "modified_date", nullable = false) + private Date modifiedDate; + + /** + * Instantiates a new obadvice. + */ + public Obadvice() { + this.type = Obadvice.OBLIGATION; + this.fulfillOn = Obadvice.EFFECT_PERMIT; + } + + /** + * Instantiates a new obadvice. + * + * @param domain the domain + * @param userid the userid + */ + public Obadvice(String domain, String userid) { + this.xacmlId = domain; + this.type = Obadvice.OBLIGATION; + this.fulfillOn = Obadvice.EFFECT_PERMIT; + this.createdBy = userid; + this.modifiedBy = userid; + } + + /** + * Instantiates a new obadvice. + * + * @param id the id + * @param userid the userid + */ + public Obadvice(Identifier id, String userid) { + this(id.stringValue(), userid); + } + + /** + * Pre persist. + */ + @PrePersist + public void prePersist() { + Date date = new Date(); + this.createdDate = date; + this.modifiedDate = date; + } + + /** + * Pre update. + */ + @PreUpdate + public void preUpdate() { + this.modifiedDate = new Date(); + } + + /** + * Adds the obadvice expression. + * + * @param obadviceExpression the obadvice expression + * @return the obadvice expression + */ + public ObadviceExpression addObadviceExpression(ObadviceExpression obadviceExpression) { + this.obadviceExpressions.add(obadviceExpression); + obadviceExpression.setObadvice(this); + + return obadviceExpression; + } + + /** + * Removes the obadvice expression. + * + * @param obadviceExpression the obadvice expression + * @return the obadvice expression + */ + public ObadviceExpression removeObadviceExpression(ObadviceExpression obadviceExpression) { + this.obadviceExpressions.remove(obadviceExpression); + obadviceExpression.setObadvice(null); + + return obadviceExpression; + } + + /** + * Removes the all expressions. + */ + public void removeAllExpressions() { + if (this.obadviceExpressions == null) { + return; + } + for (ObadviceExpression expression : this.obadviceExpressions) { + expression.setObadvice(null); + } + this.obadviceExpressions.clear(); + } + + /** + * Clone. + * + * @return the obadvice + */ + @Transient + @Override + public Obadvice clone() { + Obadvice obadvice = new Obadvice(); + + obadvice.type = this.type; + obadvice.xacmlId = this.xacmlId; + obadvice.fulfillOn = this.fulfillOn; + obadvice.description = this.description; + obadvice.createdBy = this.createdBy; + obadvice.modifiedBy = this.modifiedBy; + for (ObadviceExpression exp : this.obadviceExpressions) { + obadvice.addObadviceExpression(exp.clone()); + } + + return obadvice; + } }