Remove mso-oof-adapter from SO
[so.git] / so-monitoring / so-monitoring-handler / src / main / java / org / onap / so / monitoring / camunda / model / ProcessInstanceVariable.java
1 /*-
2  * ============LICENSE_START=======================================================
3  *  Copyright (C) 2018 Ericsson. All rights reserved.
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
8  * 
9  *      http://www.apache.org/licenses/LICENSE-2.0
10  * 
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.
16  * 
17  * SPDX-License-Identifier: Apache-2.0
18  * ============LICENSE_END=========================================================
19  */
20 package org.onap.so.monitoring.camunda.model;
21
22 import static org.onap.so.monitoring.utils.ObjectEqualsUtils.isEqual;
23 import com.fasterxml.jackson.annotation.JsonIgnore;
24
25 /**
26  * @author waqas.ikram@ericsson.com
27  */
28 public class ProcessInstanceVariable {
29
30     private String name;
31     private Object value;
32     private String type;
33
34     public ProcessInstanceVariable() {}
35
36     /**
37      * @return the name
38      */
39     public String getName() {
40         return name;
41     }
42
43     /**
44      * @param name the name to set
45      */
46     public void setName(final String name) {
47         this.name = name;
48     }
49
50     /**
51      * @return the value
52      */
53     public Object getValue() {
54         return value;
55     }
56
57     /**
58      * @param value the value to set
59      */
60     public void setValue(final Object value) {
61         this.value = value;
62     }
63
64     /**
65      * @return the type
66      */
67     public String getType() {
68         return type;
69     }
70
71     /**
72      * @param type the type to set
73      */
74     public void setType(final String type) {
75         this.type = type;
76     }
77
78     @JsonIgnore
79     @Override
80     public int hashCode() {
81         final int prime = 31;
82         int result = 1;
83         result = prime * result + ((name == null) ? 0 : name.hashCode());
84         result = prime * result + ((value == null) ? 0 : value.hashCode());
85         result = prime * result + ((type == null) ? 0 : type.hashCode());
86         return result;
87     }
88
89     @JsonIgnore
90     @Override
91     public boolean equals(final Object obj) {
92         if (obj instanceof ProcessInstanceVariable) {
93             final ProcessInstanceVariable other = (ProcessInstanceVariable) obj;
94             return isEqual(name, other.name) && isEqual(value, other.value) && isEqual(type, other.type);
95         }
96
97         return false;
98     }
99
100     @JsonIgnore
101     @Override
102     public String toString() {
103         return "ProcessInstance [name=" + name + ", value=" + value + ", type=" + type + "]";
104     }
105 }