Commit includes ControlLoopPolicy API and bugfixes
[policy/engine.git] / ECOMP-ASDC / src / main / java / org / openecomp / policy / asdc / ServiceInstance.java
1 /*-
2  * ============LICENSE_START=======================================================
3  * ECOMP Policy Engine
4  * ================================================================================
5  * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
6  * ================================================================================
7  * Licensed under the Apache License, Version 2.0 (the "License");
8  * you may not use this file except in compliance with the License.
9  * You may obtain a copy of the License at
10  * 
11  *      http://www.apache.org/licenses/LICENSE-2.0
12  * 
13  * Unless required by applicable law or agreed to in writing, software
14  * distributed under the License is distributed on an "AS IS" BASIS,
15  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16  * See the License for the specific language governing permissions and
17  * limitations under the License.
18  * ============LICENSE_END=========================================================
19  */
20
21 package org.openecomp.policy.asdc;
22
23 import java.io.Serializable;
24 import java.util.UUID;
25
26 public class ServiceInstance implements Serializable {
27         private static final long serialVersionUID = 6285260780966679625L;
28
29         private UUID            personaModelUUID;
30         private UUID            serviceUUID;
31         private UUID            serviceInstanceUUID;
32         private UUID            widgetModelUUID;
33         private String  widgetModelVersion;
34         private String  serviceName;
35         private String  serviceInstanceName;
36         
37         public ServiceInstance() {
38                 //Empty Constructor
39         }
40         
41         public ServiceInstance(ServiceInstance instance) {
42                 if (instance == null) {
43                         return;
44                 }
45                 this.personaModelUUID = instance.personaModelUUID;
46                 this.serviceUUID = instance.serviceUUID;
47                 this.serviceInstanceUUID = instance.serviceInstanceUUID;
48                 this.widgetModelUUID = instance.widgetModelUUID;
49                 this.widgetModelVersion = instance.widgetModelVersion;
50                 this.serviceName = instance.serviceName;
51                 this.serviceInstanceName = instance.serviceInstanceName;
52         }
53         
54         public UUID getPersonaModelUUID() {
55                 return personaModelUUID;
56         }
57
58         public void setPersonaModelUUID(UUID personaModelUUID) {
59                 this.personaModelUUID = personaModelUUID;
60         }
61
62         public UUID getServiceUUID() {
63                 return serviceUUID;
64         }
65
66         public void setServiceUUID(UUID serviceUUID) {
67                 this.serviceUUID = serviceUUID;
68         }
69
70         public UUID getServiceInstanceUUID() {
71                 return serviceInstanceUUID;
72         }
73
74         public void setServiceInstanceUUID(UUID serviceInstanceUUID) {
75                 this.serviceInstanceUUID = serviceInstanceUUID;
76         }
77
78         public UUID getWidgetModelUUID() {
79                 return widgetModelUUID;
80         }
81
82         public void setWidgetModelUUID(UUID widgetModelUUID) {
83                 this.widgetModelUUID = widgetModelUUID;
84         }
85
86         public String getWidgetModelVersion() {
87                 return widgetModelVersion;
88         }
89
90         public void setWidgetModelVersion(String widgetModelVersion) {
91                 this.widgetModelVersion = widgetModelVersion;
92         }
93
94         public String getServiceName() {
95                 return serviceName;
96         }
97
98         public void setServiceName(String serviceName) {
99                 this.serviceName = serviceName;
100         }
101
102         public String getServiceInstanceName() {
103                 return serviceInstanceName;
104         }
105
106         public void setServiceInstanceName(String serviceInstanceName) {
107                 this.serviceInstanceName = serviceInstanceName;
108         }
109
110         @Override
111         public String toString() {
112                 return "ServiceInstance [personaModelUUID=" + personaModelUUID + ", serviceUUID=" + serviceUUID
113                                 + ", serviceInstanceUUID=" + serviceInstanceUUID + ", widgetModelUUID=" + widgetModelUUID
114                                 + ", widgetModelVersion=" + widgetModelVersion + ", serviceName=" + serviceName
115                                 + ", serviceInstanceName=" + serviceInstanceName + "]";
116         }
117         @Override
118         public int hashCode() {
119                 final int prime = 31;
120                 int result = 1;
121                 result = prime * result + ((personaModelUUID == null) ? 0 : personaModelUUID.hashCode());
122                 result = prime * result + ((serviceInstanceName == null) ? 0 : serviceInstanceName.hashCode());
123                 result = prime * result + ((serviceInstanceUUID == null) ? 0 : serviceInstanceUUID.hashCode());
124                 result = prime * result + ((serviceName == null) ? 0 : serviceName.hashCode());
125                 result = prime * result + ((serviceUUID == null) ? 0 : serviceUUID.hashCode());
126                 result = prime * result + ((widgetModelUUID == null) ? 0 : widgetModelUUID.hashCode());
127                 result = prime * result + ((widgetModelVersion == null) ? 0 : widgetModelVersion.hashCode());
128                 return result;
129         }
130         @Override
131         public boolean equals(Object obj) {
132                 if (this == obj)
133                         return true;
134                 if (obj == null)
135                         return false;
136                 if (getClass() != obj.getClass())
137                         return false;
138                 ServiceInstance other = (ServiceInstance) obj;
139                 if (personaModelUUID == null) {
140                         if (other.personaModelUUID != null)
141                                 return false;
142                 } else if (!personaModelUUID.equals(other.personaModelUUID))
143                         return false;
144                 if (serviceInstanceName == null) {
145                         if (other.serviceInstanceName != null)
146                                 return false;
147                 } else if (!serviceInstanceName.equals(other.serviceInstanceName))
148                         return false;
149                 if (serviceInstanceUUID == null) {
150                         if (other.serviceInstanceUUID != null)
151                                 return false;
152                 } else if (!serviceInstanceUUID.equals(other.serviceInstanceUUID))
153                         return false;
154                 if (serviceName == null) {
155                         if (other.serviceName != null)
156                                 return false;
157                 } else if (!serviceName.equals(other.serviceName))
158                         return false;
159                 if (serviceUUID == null) {
160                         if (other.serviceUUID != null)
161                                 return false;
162                 } else if (!serviceUUID.equals(other.serviceUUID))
163                         return false;
164                 if (widgetModelUUID == null) {
165                         if (other.widgetModelUUID != null)
166                                 return false;
167                 } else if (!widgetModelUUID.equals(other.widgetModelUUID))
168                         return false;
169                 if (widgetModelVersion == null) {
170                         if (other.widgetModelVersion != null)
171                                 return false;
172                 } else if (!widgetModelVersion.equals(other.widgetModelVersion))
173                         return false;
174                 return true;
175         }
176         
177 }