ed97f5bdeaebb754b26c06c1ac8e053b188f73a9
[so.git] / asdc-controller / src / main / java / org / onap / so / asdc / client / test / emulators / ArtifactInfoImpl.java
1 /*-
2  * ============LICENSE_START=======================================================
3  * ONAP - SO
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.onap.so.asdc.client.test.emulators;
22
23 import java.util.ArrayList;
24 import java.util.List;
25
26 import org.onap.sdc.api.notification.IArtifactInfo;
27 import org.apache.commons.lang3.builder.HashCodeBuilder;
28 import org.apache.commons.lang3.builder.EqualsBuilder;
29
30 public class ArtifactInfoImpl implements IArtifactInfo {
31
32         private String artifactName;
33         private String artifactType;
34         private String artifactURL;
35         private String artifactChecksum;
36         private String artifactDescription;
37         private Integer artifactTimeout;
38         private String artifactVersion;
39         private String artifactUUID;
40         private String generatedFromUUID;
41         private ArtifactInfoImpl generatedArtifact;
42         private List<IArtifactInfo> relatedArtifactsInfo;
43         private List<ArtifactInfoImpl> relatedArtifactsImpl;
44         ArtifactInfoImpl(){}
45         
46         private ArtifactInfoImpl(IArtifactInfo iArtifactInfo){
47                 artifactName = iArtifactInfo.getArtifactName();
48                 artifactType = iArtifactInfo.getArtifactType(); 
49                 artifactURL = iArtifactInfo.getArtifactURL();
50                 artifactChecksum = iArtifactInfo.getArtifactChecksum();
51                 artifactDescription = iArtifactInfo.getArtifactDescription();
52                 artifactTimeout = iArtifactInfo.getArtifactTimeout();
53                 artifactVersion = iArtifactInfo.getArtifactVersion();
54                 artifactUUID = iArtifactInfo.getArtifactUUID();
55                 generatedArtifact = (ArtifactInfoImpl) iArtifactInfo.getGeneratedArtifact();
56                 relatedArtifactsInfo = iArtifactInfo.getRelatedArtifacts();
57         }
58         
59         public static List<ArtifactInfoImpl> convertToArtifactInfoImpl(List<IArtifactInfo> list){
60                 List<ArtifactInfoImpl> ret = new ArrayList<ArtifactInfoImpl>();
61                 if( list != null ){
62                         for(IArtifactInfo artifactInfo : list  ){
63                                 ret.add(new ArtifactInfoImpl(artifactInfo));
64                         }
65                 }
66                 return ret;
67         }
68         
69         public String getArtifactName() {
70                 return artifactName;
71         }
72
73         public void setArtifactName(String artifactName) {
74                 this.artifactName = artifactName;
75         }
76
77         public String getArtifactType() {
78                 return artifactType;
79         }
80
81         public void setArtifactType(String artifactType) {
82                 this.artifactType = artifactType;
83         }
84
85         public String getArtifactURL() {
86                 return artifactURL;
87         }
88
89         public void setArtifactURL(String artifactURL) {
90                 this.artifactURL = artifactURL;
91         }
92
93         public String getArtifactChecksum() {
94                 return artifactChecksum;
95         }
96
97         public void setArtifactChecksum(String artifactChecksum) {
98                 this.artifactChecksum = artifactChecksum;
99         }
100
101         public String getArtifactDescription() {
102                 return artifactDescription;
103         }
104
105         public void setArtifactDescription(String artifactDescription) {
106                 this.artifactDescription = artifactDescription;
107         }
108
109         public Integer getArtifactTimeout() {
110                 return artifactTimeout;
111         }
112
113         public void setArtifactTimeout(Integer artifactTimeout) {
114                 this.artifactTimeout = artifactTimeout;
115         }
116
117         @Override
118         public String toString() {
119                 return "BaseArtifactInfoImpl [artifactName=" + artifactName
120                                 + ", artifactType=" + artifactType + ", artifactURL="
121                                 + artifactURL + ", artifactChecksum=" + artifactChecksum
122                                 + ", artifactDescription=" + artifactDescription
123                                 + ", artifactVersion=" + artifactVersion
124                                 + ", artifactUUID=" + artifactUUID
125                                 + ", artifactTimeout=" + artifactTimeout + "]";
126         }
127
128         public String getArtifactVersion() {
129                 return artifactVersion;
130         }
131
132         public void setArtifactVersion(String artifactVersion) {
133                 this.artifactVersion = artifactVersion;
134         }
135
136         public String getArtifactUUID() {
137                 return artifactUUID;
138         }
139
140         public void setArtifactUUID(String artifactUUID) {
141                 this.artifactUUID = artifactUUID;
142         }
143
144         public String getGeneratedFromUUID() {
145                 return generatedFromUUID;
146         }
147
148         public void setGeneratedFromUUID(String generatedFromUUID) {
149                 this.generatedFromUUID = generatedFromUUID;
150         }
151         
152         @Override
153         public ArtifactInfoImpl getGeneratedArtifact() {
154                 return generatedArtifact;
155         }
156
157         public void setGeneratedArtifact(ArtifactInfoImpl generatedArtifact) {
158                 this.generatedArtifact = generatedArtifact;
159         }
160         
161         @Override
162         public List<IArtifactInfo> getRelatedArtifacts(){
163                 List<IArtifactInfo> temp = new ArrayList<IArtifactInfo>();
164                 if( relatedArtifactsInfo != null ){
165                         temp.addAll(relatedArtifactsImpl);
166                 }
167                 return temp;
168         }
169         
170         public void setRelatedArtifacts(List<ArtifactInfoImpl> relatedArtifacts) {
171                 this.relatedArtifactsImpl = relatedArtifacts;
172         }
173
174         @Override
175         public boolean equals(final Object other) {
176                 if (!(other instanceof ArtifactInfoImpl)) {
177                         return false;
178                 }
179                 ArtifactInfoImpl castOther = (ArtifactInfoImpl) other;
180                 return new EqualsBuilder().append(artifactUUID, castOther.artifactUUID)
181                                 .append(artifactVersion, castOther.artifactVersion).isEquals();
182         }
183
184         @Override
185         public int hashCode() {
186                 return new HashCodeBuilder().append(artifactName).append(artifactType).append(artifactURL)
187                                 .append(artifactChecksum).append(artifactDescription).append(artifactTimeout).append(artifactVersion)
188                                 .append(artifactUUID).append(generatedFromUUID).append(generatedArtifact).append(relatedArtifactsInfo)
189                                 .append(relatedArtifactsImpl).toHashCode();
190         }
191
192 }