01369c4ecdf1786e62b75493127345e472c52e46
[so.git] / mso-catalog-db / src / main / java / org / openecomp / mso / db / catalog / beans / ServiceMacroHolder.java
1 /*-
2  * ============LICENSE_START=======================================================
3  * OPENECOMP - MSO
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.util.ArrayList;
26
27 /*
28  * A simple holder for Service and its associated elements:
29  * VnfResource, 1-n VfModule, Network TBD
30  */
31
32 public class ServiceMacroHolder {
33
34         private Service service;
35         private ArrayList<VnfResource> vnfResources;
36         private ArrayList<NetworkResourceCustomization> networkResourceCustomizations;
37         private ArrayList<AllottedResourceCustomization> allottedResourceCustomizations;
38
39         public ServiceMacroHolder() {
40                 super();
41                 this.service = null;
42                 this.vnfResources = new ArrayList<VnfResource>();
43                 this.networkResourceCustomizations = new ArrayList<NetworkResourceCustomization>();
44                 this.allottedResourceCustomizations = new ArrayList<AllottedResourceCustomization>();
45         }
46         public ServiceMacroHolder(Service service) {
47                 this();
48                 this.service = service;
49         }
50
51         public Service getService() {
52                 return this.service;
53         }
54         public void setService(Service service) {
55                 this.service = service;
56         }
57
58         public void setVnfResources(ArrayList<VnfResource> vnfResources) {
59                 this.vnfResources = vnfResources;
60         }
61         public ArrayList<VnfResource> getVnfResources() {
62                 return this.vnfResources;
63         }
64         public void addVnfResource(VnfResource vr) {
65                 if (vr != null) {
66                         if (this.vnfResources != null) {
67                                 this.vnfResources.add(vr);
68                         } else {
69                                 this.vnfResources = new ArrayList<VnfResource>();
70                                 this.vnfResources.add(vr);
71                         }
72                 }
73         }
74
75         public void setNetworkResourceCustomization(ArrayList<NetworkResourceCustomization> networkResourceCustomizations) {
76                 this.networkResourceCustomizations = networkResourceCustomizations;
77         }
78         public ArrayList<NetworkResourceCustomization> getNetworkResourceCustomization() {
79                 return this.networkResourceCustomizations;
80         }
81         public void addNetworkResourceCustomization(NetworkResourceCustomization nrc) {
82                 if (this.networkResourceCustomizations != null) {
83                         this.networkResourceCustomizations.add(nrc);
84                 } else {
85                         this.networkResourceCustomizations = new ArrayList<NetworkResourceCustomization>();
86                         this.networkResourceCustomizations.add(nrc);
87                 }
88         }
89
90         public void setAllottedResourceCustomization(ArrayList<AllottedResourceCustomization> allottedResourceCustomizations) {
91                 this.allottedResourceCustomizations = allottedResourceCustomizations;
92         }
93         public ArrayList<AllottedResourceCustomization> getAllottedResourceCustomization() {
94                 return this.allottedResourceCustomizations;
95         }
96         public void addAllottedResourceCustomization(AllottedResourceCustomization arc) {
97                 if (this.allottedResourceCustomizations != null) {
98                         this.allottedResourceCustomizations.add(arc);
99                 } else {
100                         this.allottedResourceCustomizations = new ArrayList<AllottedResourceCustomization>();
101                         this.allottedResourceCustomizations.add(arc);
102                 }
103         }
104
105         public String toString() {
106                 StringBuilder sb = new StringBuilder();
107                 sb.append("ServicePlus: ");
108                 if (this.service != null) {
109                         sb.append("service: " + this.service.toString());
110                 } else {
111                         sb.append("service: null");
112                 }
113                 if (this.vnfResources != null && this.vnfResources.size() > 0) {
114                         int i=0;
115                         sb.append("VnfResources: ");
116                         for (VnfResource vr : this.vnfResources) {
117                                 sb.append(", vnfResource[" + i++ + "]:" + vr.toString());
118                         }
119                 } else {
120                         sb.append("none");
121                 }
122                 if (this.networkResourceCustomizations != null && this.networkResourceCustomizations.size() > 0) {
123                         int i=0;
124                         sb.append("NetworkResourceCustomizations:");
125                         for (NetworkResourceCustomization nrc : this.networkResourceCustomizations) {
126                                 sb.append("NRC[" + i++ + "]: " + nrc.toString());
127                         }
128                 }
129                 if (this.allottedResourceCustomizations != null && this.allottedResourceCustomizations.size() > 0) {
130                         int i=0;
131                         sb.append("AllottedResourceCustomizations:");
132                         for (AllottedResourceCustomization arc : this.allottedResourceCustomizations) {
133                                 sb.append("ARC[" + i++ + "]: " + arc.toString());
134                         }
135                 }
136
137                 return sb.toString();
138         }
139
140
141 }