c77835ed2622b7829c4f1e40f7e9bbd638b5a9a7
[portal/sdk.git] /
1 /*-
2  * ================================================================================
3  * eCOMP Portal SDK
4  * ================================================================================
5  * Copyright (C) 2017 AT&T Intellectual Property
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  * ================================================================================
19  */
20 package org.openecomp.portalsdk.analytics.system.fusion.adapter;
21
22
23 import java.io.*;
24
25 import org.openecomp.portalsdk.core.domain.FusionVo;
26 import org.openecomp.portalsdk.core.domain.support.NameValueId;
27
28
29
30 public class Lookup extends FusionVo implements Serializable {
31
32     private NameValueId nameValueId = new NameValueId();
33
34     public Lookup() {}
35
36     public Lookup(String label, String value) {
37       this();
38       setLabel(label);
39       setValue(value);
40     }
41
42     public String getValue() {
43       return getNameValueId().getVal();
44     }
45
46     public String getLabel() {
47       return getNameValueId().getLab();
48     }
49
50     public void setValue(String value) {
51       getNameValueId().setVal(value);
52     }
53
54     public void setLabel(String label) {
55       getNameValueId().setLab(label);
56     }
57
58     public NameValueId getNameValueId() {
59         return nameValueId;
60     }
61
62     public void setNameValueId(NameValueId nameValueId) {
63         this.nameValueId = nameValueId;
64     }
65
66     // required by ZK for to set the selectedItems of Listboxes (used heavily for <select>-style drop-downs)
67     public int hashCode() {
68       int hash = getValue().hashCode();
69           hash = hash + getLabel().hashCode();
70           
71       return hash;
72     }
73
74     public boolean equals( Object obj ) {
75       boolean equivalent = false;
76       
77       Lookup lookup = (Lookup)obj;
78       if( lookup.getValue().equals(getValue()) &&  lookup.getLabel().equals(getLabel())) {
79         equivalent = true;
80       }  
81
82       return equivalent;
83     }
84     
85 }