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=========================================================
21 package org.onap.vid.mso.rest;
23 import com.fasterxml.jackson.annotation.*;
24 import org.apache.commons.lang.builder.EqualsBuilder;
25 import org.apache.commons.lang.builder.HashCodeBuilder;
26 import org.apache.commons.lang.builder.ToStringBuilder;
27 import org.onap.vid.domain.mso.*;
29 import java.util.ArrayList;
30 import java.util.HashMap;
31 import java.util.List;
36 * aggregates the context, configuraiton and detailed parameters associated with the request into a single structure.
38 @JsonInclude(JsonInclude.Include.NON_NULL)
46 "configurationParameters"
48 public class RequestDetails{
52 /** The cloud configuration. */
53 @JsonProperty("cloudConfiguration")
54 private CloudConfiguration cloudConfiguration;
56 /** The model info. */
57 @JsonProperty("modelInfo")
58 private ModelInfo modelInfo;
60 /** The related model list. */
61 @JsonProperty("relatedInstanceList")
62 private List<RelatedInstanceWrapper> relatedInstanceList;
64 /** The request info. */
65 @JsonProperty("requestInfo")
66 private RequestInfo requestInfo;
68 /** The subscriber info. */
69 @JsonProperty("subscriberInfo")
70 private SubscriberInfo subscriberInfo;
72 /** The request parameters. */
73 @JsonProperty("requestParameters")
74 private RequestParameters requestParameters;
76 @JsonProperty("configurationParameters")
77 protected List<Map<String, String>> configurationParameters = new ArrayList<>();
79 /** The additional properties. */
81 private Map<String, Object> additionalProperties = new HashMap<String, Object>();
84 * Gets the cloud configuration.
86 * @return The cloudConfiguration
88 @JsonProperty("cloudConfiguration")
89 public CloudConfiguration getCloudConfiguration() {
90 return cloudConfiguration;
94 * Sets the cloud configuration.
96 * @param cloudConfiguration The cloudConfiguration
98 @JsonProperty("cloudConfiguration")
99 public void setCloudConfiguration(CloudConfiguration cloudConfiguration) {
100 this.cloudConfiguration = cloudConfiguration;
104 * Gets the model info.
106 * @return The modelInfo
108 @JsonProperty("modelInfo")
109 public ModelInfo getModelInfo() {
114 * Sets the model info.
116 * @param modelInfo The modelInfo
118 @JsonProperty("modelInfo")
119 public void setModelInfo(ModelInfo modelInfo) {
120 this.modelInfo = modelInfo;
123 * Gets the related instance list.
125 * @return The relatedInstanceList
127 @JsonProperty("relatedInstanceList")
128 public List<RelatedInstanceWrapper> getRelatedInstanceList() {
129 return relatedInstanceList;
133 * Sets the related model list.
135 * @param relatedInstanceList The relatedInstanceList
137 @JsonProperty("relatedInstanceList")
138 public void setRelatedInstanceList(List<RelatedInstanceWrapper> relatedInstanceList) {
139 this.relatedInstanceList = relatedInstanceList;
143 * Gets the request info.
145 * @return The requestInfo
147 @JsonProperty("requestInfo")
148 public RequestInfo getRequestInfo() {
153 * Sets the request info.
155 * @param requestInfo The requestInfo
157 @JsonProperty("requestInfo")
158 public void setRequestInfo(RequestInfo requestInfo) {
159 this.requestInfo = requestInfo;
163 * Gets the subscriber info.
165 * @return The subscriberInfo
167 @JsonProperty("subscriberInfo")
168 public SubscriberInfo getSubscriberInfo() {
169 return subscriberInfo;
173 * Sets the subscriber info.
175 * @param subscriberInfo The subscriberInfo
177 @JsonProperty("subscriberInfo")
178 public void setSubscriberInfo(SubscriberInfo subscriberInfo) {
179 this.subscriberInfo = subscriberInfo;
183 * @see org.onap.vid.domain.mso.RequestDetails#toString()
186 public String toString() {
187 return ToStringBuilder.reflectionToString(this);
191 * @see org.onap.vid.domain.mso.RequestDetails#getAdditionalProperties()
194 public Map<String, Object> getAdditionalProperties() {
195 return this.additionalProperties;
199 * @see org.onap.vid.domain.mso.RequestDetails#setAdditionalProperty(java.lang.String, java.lang.Object)
202 public void setAdditionalProperty(String name, Object value) {
203 this.additionalProperties.put(name, value);
206 @JsonProperty("configurationParameters")
207 public List<Map<String, String>> getConfigurationParameters() {
208 return configurationParameters;
211 @JsonProperty("configurationParameters")
212 public void setConfigurationParameters(List<Map<String, String>> configurationParameters) {
213 this.configurationParameters = configurationParameters;
217 * @see org.onap.vid.domain.mso.RequestDetails#hashCode()
220 public int hashCode() {
221 return new HashCodeBuilder()
222 .append(cloudConfiguration)
224 .append(relatedInstanceList)
226 .append(getRequestParameters())
227 .append(subscriberInfo)
228 .append(additionalProperties)
229 .append(configurationParameters.hashCode())
234 * @see org.onap.vid.domain.mso.RequestDetails#equals(java.lang.Object)
237 public boolean equals(Object other) {
241 if (!(other instanceof RequestDetails)) {
244 RequestDetails rhs = ((RequestDetails) other);
245 return new EqualsBuilder()
246 .append(cloudConfiguration, rhs.cloudConfiguration)
247 .append(modelInfo, rhs.modelInfo)
248 .append(relatedInstanceList, rhs.relatedInstanceList)
249 .append(requestInfo, rhs.requestInfo)
250 .append(getRequestParameters(), rhs.getRequestParameters())
251 .append(subscriberInfo, rhs.subscriberInfo)
252 .append(additionalProperties, rhs.additionalProperties)
253 .append(configurationParameters, rhs.configurationParameters)
257 public RequestParameters getRequestParameters() {
258 return requestParameters;
261 public void setRequestParameters(RequestParameters requestParameters) {
262 this.requestParameters = requestParameters;