2 * ============LICENSE_START=======================================================
3 * Copyright (C) 2020 Nordix Foundation.
4 * ================================================================================
5 * Licensed under the Apache License, Version 2.0 (the "License");
6 * you may not use this file except in compliance with the License.
7 * You may obtain a copy of the License at
9 * http://www.apache.org/licenses/LICENSE-2.0
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
17 * SPDX-License-Identifier: Apache-2.0
18 * ============LICENSE_END=========================================================
20 package org.onap.so.etsi.nfvo.ns.lcm.database.beans;
22 import static org.onap.so.etsi.nfvo.ns.lcm.database.beans.utils.Utils.toIndentedString;
23 import java.time.LocalDateTime;
24 import java.util.Objects;
25 import java.util.UUID;
26 import javax.persistence.Column;
27 import javax.persistence.Entity;
28 import javax.persistence.EnumType;
29 import javax.persistence.Enumerated;
30 import javax.persistence.FetchType;
31 import javax.persistence.Id;
32 import javax.persistence.JoinColumn;
33 import javax.persistence.ManyToOne;
34 import javax.persistence.Table;
37 * @author mukeshsharma(mukeshsharma@est.tech)
40 @Table(name = "NS_LCM_OP_OCCS")
41 public class NsLcmOpOcc {
44 @Column(name = "ID", nullable = false)
47 @Enumerated(EnumType.STRING)
48 @Column(name = "OPERATION_STATE", nullable = false)
49 private OperationStateEnum operationState;
51 @Column(name = "STATE_ENTERED_TIME")
52 private LocalDateTime stateEnteredTime;
54 @Column(name = "START_TIME")
55 private LocalDateTime startTime;
57 @ManyToOne(fetch = FetchType.LAZY)
58 @JoinColumn(name = "NS_INST_ID", nullable = false)
59 private NfvoNsInst nfvoNsInst;
61 @Enumerated(EnumType.STRING)
62 @Column(name = "OPERATION", nullable = false)
63 private NsLcmOpType operation;
65 @Column(name = "IS_AUTO_INVOCATION", nullable = false)
66 private boolean isAutoInvocation;
68 @Column(name = "OPERATION_PARAMS", columnDefinition = "LONGTEXT", nullable = false)
69 private String operationParams;
71 @Column(name = "IS_CANCEL_PENDING", nullable = false)
72 private boolean isCancelPending;
74 @Enumerated(EnumType.STRING)
75 @Column(name = "CANCEL_MODE")
76 private CancelModeType cancelMode;
79 this.id = UUID.randomUUID().toString();
82 public String getId() {
86 public void setId(final String id) {
90 public NsLcmOpOcc id(final String id) {
95 public OperationStateEnum getOperationState() {
96 return operationState;
99 public void setOperationState(final OperationStateEnum operationState) {
100 this.operationState = operationState;
103 public NsLcmOpOcc operationState(final OperationStateEnum operationState) {
104 this.operationState = operationState;
108 public LocalDateTime getStateEnteredTime() {
109 return stateEnteredTime;
112 public void setStateEnteredTime(final LocalDateTime stateEnteredTime) {
113 this.stateEnteredTime = stateEnteredTime;
116 public NsLcmOpOcc stateEnteredTime(final LocalDateTime stateEnteredTime) {
117 this.stateEnteredTime = stateEnteredTime;
121 public LocalDateTime getStartTime() {
125 public void setStartTime(final LocalDateTime startTime) {
126 this.startTime = startTime;
129 public NsLcmOpOcc startTime(final LocalDateTime startTime) {
130 this.startTime = startTime;
134 public NfvoNsInst getNfvoNsInst() {
138 public void setNfvoNsInst(final NfvoNsInst nfvoNsInst) {
139 this.nfvoNsInst = nfvoNsInst;
142 public NsLcmOpOcc nfvoNsInst(final NfvoNsInst nfvoNsInst) {
143 this.nfvoNsInst = nfvoNsInst;
147 public NsLcmOpType getOperation() {
151 public void setOperation(final NsLcmOpType operation) {
152 this.operation = operation;
155 public NsLcmOpOcc operation(final NsLcmOpType operation) {
156 this.operation = operation;
160 public boolean getIsAutoInvocation() {
161 return isAutoInvocation;
164 public void setIsAutoInvocation(final boolean isAutoInvocation) {
165 this.isAutoInvocation = isAutoInvocation;
168 public NsLcmOpOcc isAutoInvocation(final boolean isAutoInvocation) {
169 this.isAutoInvocation = isAutoInvocation;
173 public CancelModeType getCancelMode() {
177 public void setCancelMode(final CancelModeType cancelMode) {
178 this.cancelMode = cancelMode;
181 public NsLcmOpOcc cancelMode(final CancelModeType cancelMode) {
182 this.cancelMode = cancelMode;
186 public String getOperationParams() {
187 return operationParams;
190 public void setOperationParams(final String operationParams) {
191 this.operationParams = operationParams;
194 public NsLcmOpOcc operationParams(final String operationParams) {
195 this.operationParams = operationParams;
199 public boolean getIsCancelPending() {
200 return isCancelPending;
203 public void setIsCancelPending(final boolean isCancelPending) {
204 this.isCancelPending = isCancelPending;
207 public NsLcmOpOcc isCancelPending(final boolean isCancelPending) {
208 this.isCancelPending = isCancelPending;
213 public boolean equals(final Object obj) {
216 if (obj == null || getClass() != obj.getClass())
218 final NsLcmOpOcc that = (NsLcmOpOcc) obj;
219 return Objects.equals(id, that.id) && Objects.equals(operationState, that.operationState)
220 && Objects.equals(stateEnteredTime, that.stateEnteredTime) && Objects.equals(startTime, that.startTime)
221 && (nfvoNsInst == null ? that.nfvoNsInst == null
222 : that.nfvoNsInst != null && Objects.equals(nfvoNsInst, that.nfvoNsInst))
223 && Objects.equals(operation, that.operation) && Objects.equals(isAutoInvocation, that.isAutoInvocation)
224 && Objects.equals(operationParams, that.operationParams)
225 && Objects.equals(isCancelPending, that.isCancelPending) && Objects.equals(cancelMode, that.cancelMode);
229 public int hashCode() {
230 return Objects.hash(id, operationState, stateEnteredTime, startTime,
231 nfvoNsInst != null ? nfvoNsInst.getNsInstId() : 0, operation, isAutoInvocation, operationParams,
232 isCancelPending, cancelMode);
236 public String toString() {
237 final StringBuilder sb = new StringBuilder();
238 sb.append("class NsLcmOpOcc {\n");
239 sb.append(" id: ").append(toIndentedString(id)).append("\n");
240 sb.append(" operationState: ").append(toIndentedString(operationState)).append("\n");
241 sb.append(" stateEnteredTime: ").append(toIndentedString(stateEnteredTime)).append("\n");
242 sb.append(" startTime: ").append(toIndentedString(startTime)).append("\n");
243 sb.append(" nfvoNsInst: ").append(nfvoNsInst != null ? toIndentedString(nfvoNsInst.getNsInstId()) : null)
245 sb.append(" operation: ").append(toIndentedString(operation)).append("\n");
246 sb.append(" isAutoInvocation: ").append(toIndentedString(isAutoInvocation)).append("\n");
247 sb.append(" operationParams: ").append(toIndentedString(operationParams)).append("\n");
248 sb.append(" isCancelPending: ").append(toIndentedString(isCancelPending)).append("\n");
249 sb.append(" cancelMode: ").append(toIndentedString(cancelMode)).append("\n");
251 return sb.toString();