Change the header to SO
[so.git] / mso-catalog-db / src / main / java / org / openecomp / mso / db / catalog / beans / ServiceMacroHolder.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 package org.openecomp.mso.db.catalog.beans;
21
22 import org.openecomp.mso.db.catalog.beans.Service;
23 import org.openecomp.mso.db.catalog.beans.VnfResource;
24 import org.openecomp.mso.db.catalog.beans.VfModule;
25 import java.io.Serializable;
26 import java.util.ArrayList;
27
28 /*
29  * A simple holder for Service and its associated elements:
30  * VnfResource, 1-n VfModule, Network TBD
31  */
32
33 public class ServiceMacroHolder implements Serializable {
34         
35         private static final long serialVersionUID = 768026109321305392L;
36
37         private Service service;
38         private ArrayList<VnfResource> vnfResources;
39         private ArrayList<NetworkResourceCustomization> networkResourceCustomizations;
40         private ArrayList<AllottedResourceCustomization> allottedResourceCustomizations;
41         private ArrayList<VnfResourceCustomization> vnfResourceCustomizations;
42
43         public ServiceMacroHolder() {
44                 super();
45                 this.service = null;
46                 this.vnfResources = new ArrayList<VnfResource>();
47                 this.networkResourceCustomizations = new ArrayList<NetworkResourceCustomization>();
48                 this.allottedResourceCustomizations = new ArrayList<AllottedResourceCustomization>();
49                 this.vnfResourceCustomizations = new ArrayList<VnfResourceCustomization>();
50         }
51         public ServiceMacroHolder(Service service) {
52                 this();
53                 this.service = service;
54         }
55
56         public Service getService() {
57                 return this.service;
58         }
59         public void setService(Service service) {
60                 this.service = service;
61         }
62
63         public void setVnfResources(ArrayList<VnfResource> vnfResources) {
64                 this.vnfResources = vnfResources;
65         }
66         public ArrayList<VnfResource> getVnfResources() {
67                 return this.vnfResources;
68         }
69         public void addVnfResource(VnfResource vr) {
70                 if (vr != null) {
71                         if (this.vnfResources != null) {
72                                 this.vnfResources.add(vr);
73                         } else {
74                                 this.vnfResources = new ArrayList<VnfResource>();
75                                 this.vnfResources.add(vr);
76                         }
77                 }
78         }
79
80         public void setVnfResourceCustomizations(ArrayList<VnfResourceCustomization> vnfResourceCustomizations) {
81                 this.vnfResourceCustomizations = vnfResourceCustomizations;
82         }
83         public ArrayList<VnfResourceCustomization> getVnfResourceCustomizations() {
84                 return this.vnfResourceCustomizations;
85         }
86         public void addVnfResourceCustomizations(VnfResourceCustomization vrc) {
87                 if (vrc != null) {
88                         if (this.vnfResourceCustomizations != null) {
89                                 this.vnfResourceCustomizations.add(vrc);
90                         } else {
91                                 this.vnfResourceCustomizations = new ArrayList<VnfResourceCustomization>();
92                                 this.vnfResourceCustomizations.add(vrc);
93                         }
94                 }
95         }
96         
97         public void setNetworkResourceCustomization(ArrayList<NetworkResourceCustomization> networkResourceCustomizations) {
98                 this.networkResourceCustomizations = networkResourceCustomizations;
99         }
100         public ArrayList<NetworkResourceCustomization> getNetworkResourceCustomization() {
101                 return this.networkResourceCustomizations;
102         }
103         public void addNetworkResourceCustomization(NetworkResourceCustomization nrc) {
104                 if (this.networkResourceCustomizations != null) {
105                         this.networkResourceCustomizations.add(nrc);
106                 } else {
107                         this.networkResourceCustomizations = new ArrayList<NetworkResourceCustomization>();
108                         this.networkResourceCustomizations.add(nrc);
109                 }
110         }
111
112         public void setAllottedResourceCustomization(ArrayList<AllottedResourceCustomization> allottedResourceCustomizations) {
113                 this.allottedResourceCustomizations = allottedResourceCustomizations;
114         }
115         public ArrayList<AllottedResourceCustomization> getAllottedResourceCustomization() {
116                 return this.allottedResourceCustomizations;
117         }
118         public void addAllottedResourceCustomization(AllottedResourceCustomization arc) {
119                 if (this.allottedResourceCustomizations != null) {
120                         this.allottedResourceCustomizations.add(arc);
121                 } else {
122                         this.allottedResourceCustomizations = new ArrayList<AllottedResourceCustomization>();
123                         this.allottedResourceCustomizations.add(arc);
124                 }
125         }
126
127         public String toString() {
128                 StringBuilder sb = new StringBuilder();
129                 sb.append("ServicePlus: ");
130                 if (this.service != null) {
131                         sb.append("service: " + this.service.toString());
132                 } else {
133                         sb.append("service: null");
134                 }
135                 if (this.vnfResourceCustomizations != null && this.vnfResourceCustomizations.size() > 0) {
136                         int i=0;
137                         sb.append("VnfResources: ");
138                         for (VnfResourceCustomization vrc : this.vnfResourceCustomizations) {
139                                 sb.append(", vnfResourceCustomization[" + i++ + "]:" + vrc.toString());
140                         }
141                 } else {
142                         sb.append("none");
143                 }
144                 if (this.vnfResources != null && this.vnfResources.size() > 0) {
145                         int i=0;
146                         sb.append("VnfResources: ");
147                         for (VnfResource vr : this.vnfResources) {
148                                 sb.append(", vnfResource[" + i++ + "]:" + vr.toString());
149                         }
150                 } else {
151                         sb.append("none");
152                 }
153                 if (this.networkResourceCustomizations != null && this.networkResourceCustomizations.size() > 0) {
154                         int i=0;
155                         sb.append("NetworkResourceCustomizations:");
156                         for (NetworkResourceCustomization nrc : this.networkResourceCustomizations) {
157                                 sb.append("NRC[" + i++ + "]: " + nrc.toString());
158                         }
159                 }
160                 if (this.allottedResourceCustomizations != null && this.allottedResourceCustomizations.size() > 0) {
161                         int i=0;
162                         sb.append("AllottedResourceCustomizations:");
163                         for (AllottedResourceCustomization arc : this.allottedResourceCustomizations) {
164                                 sb.append("ARC[" + i++ + "]: " + arc.toString());
165                         }
166                 }
167
168                 return sb.toString();
169         }
170
171
172 }