2 * ============LICENSE_START=======================================================
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
11 * http://www.apache.org/licenses/LICENSE-2.0
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=========================================================
20 package org.openecomp.mso.db.catalog.beans;
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;
29 * A simple holder for Service and its associated elements:
30 * VnfResource, 1-n VfModule, Network TBD
33 public class ServiceMacroHolder implements Serializable {
35 private static final long serialVersionUID = 768026109321305392L;
37 private Service service;
38 private ArrayList<VnfResource> vnfResources;
39 private ArrayList<NetworkResourceCustomization> networkResourceCustomizations;
40 private ArrayList<AllottedResourceCustomization> allottedResourceCustomizations;
41 private ArrayList<VnfResourceCustomization> vnfResourceCustomizations;
43 public ServiceMacroHolder() {
46 this.vnfResources = new ArrayList<VnfResource>();
47 this.networkResourceCustomizations = new ArrayList<NetworkResourceCustomization>();
48 this.allottedResourceCustomizations = new ArrayList<AllottedResourceCustomization>();
49 this.vnfResourceCustomizations = new ArrayList<VnfResourceCustomization>();
51 public ServiceMacroHolder(Service service) {
53 this.service = service;
56 public Service getService() {
59 public void setService(Service service) {
60 this.service = service;
63 public void setVnfResources(ArrayList<VnfResource> vnfResources) {
64 this.vnfResources = vnfResources;
66 public ArrayList<VnfResource> getVnfResources() {
67 return this.vnfResources;
69 public void addVnfResource(VnfResource vr) {
71 if (this.vnfResources != null) {
72 this.vnfResources.add(vr);
74 this.vnfResources = new ArrayList<VnfResource>();
75 this.vnfResources.add(vr);
80 public void setVnfResourceCustomizations(ArrayList<VnfResourceCustomization> vnfResourceCustomizations) {
81 this.vnfResourceCustomizations = vnfResourceCustomizations;
83 public ArrayList<VnfResourceCustomization> getVnfResourceCustomizations() {
84 return this.vnfResourceCustomizations;
86 public void addVnfResourceCustomizations(VnfResourceCustomization vrc) {
88 if (this.vnfResourceCustomizations != null) {
89 this.vnfResourceCustomizations.add(vrc);
91 this.vnfResourceCustomizations = new ArrayList<VnfResourceCustomization>();
92 this.vnfResourceCustomizations.add(vrc);
97 public void setNetworkResourceCustomization(ArrayList<NetworkResourceCustomization> networkResourceCustomizations) {
98 this.networkResourceCustomizations = networkResourceCustomizations;
100 public ArrayList<NetworkResourceCustomization> getNetworkResourceCustomization() {
101 return this.networkResourceCustomizations;
103 public void addNetworkResourceCustomization(NetworkResourceCustomization nrc) {
104 if (this.networkResourceCustomizations != null) {
105 this.networkResourceCustomizations.add(nrc);
107 this.networkResourceCustomizations = new ArrayList<NetworkResourceCustomization>();
108 this.networkResourceCustomizations.add(nrc);
112 public void setAllottedResourceCustomization(ArrayList<AllottedResourceCustomization> allottedResourceCustomizations) {
113 this.allottedResourceCustomizations = allottedResourceCustomizations;
115 public ArrayList<AllottedResourceCustomization> getAllottedResourceCustomization() {
116 return this.allottedResourceCustomizations;
118 public void addAllottedResourceCustomization(AllottedResourceCustomization arc) {
119 if (this.allottedResourceCustomizations != null) {
120 this.allottedResourceCustomizations.add(arc);
122 this.allottedResourceCustomizations = new ArrayList<AllottedResourceCustomization>();
123 this.allottedResourceCustomizations.add(arc);
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());
133 sb.append("service: null");
135 if (this.vnfResourceCustomizations != null && this.vnfResourceCustomizations.size() > 0) {
137 sb.append("VnfResources: ");
138 for (VnfResourceCustomization vrc : this.vnfResourceCustomizations) {
139 sb.append(", vnfResourceCustomization[" + i++ + "]:" + vrc.toString());
144 if (this.vnfResources != null && this.vnfResources.size() > 0) {
146 sb.append("VnfResources: ");
147 for (VnfResource vr : this.vnfResources) {
148 sb.append(", vnfResource[" + i++ + "]:" + vr.toString());
153 if (this.networkResourceCustomizations != null && this.networkResourceCustomizations.size() > 0) {
155 sb.append("NetworkResourceCustomizations:");
156 for (NetworkResourceCustomization nrc : this.networkResourceCustomizations) {
157 sb.append("NRC[" + i++ + "]: " + nrc.toString());
160 if (this.allottedResourceCustomizations != null && this.allottedResourceCustomizations.size() > 0) {
162 sb.append("AllottedResourceCustomizations:");
163 for (AllottedResourceCustomization arc : this.allottedResourceCustomizations) {
164 sb.append("ARC[" + i++ + "]: " + arc.toString());
168 return sb.toString();