2 * ============LICENSE_START=======================================================
4 * ================================================================================
5 * Copyright (C) 2017-2019 AT&T Intellectual Property. All rights reserved.
6 * Modifications Copyright (C) 2019 Nordix Foundation.
7 * ================================================================================
8 * Licensed under the Apache License, Version 2.0 (the "License");
9 * you may not use this file except in compliance with the License.
10 * You may obtain a copy of the License at
12 * http://www.apache.org/licenses/LICENSE-2.0
14 * Unless required by applicable law or agreed to in writing, software
15 * distributed under the License is distributed on an "AS IS" BASIS,
16 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17 * See the License for the specific language governing permissions and
18 * limitations under the License.
19 * ============LICENSE_END=========================================================
22 package org.onap.policy.appc;
24 import com.google.gson.annotations.SerializedName;
26 import java.io.Serializable;
27 import java.util.HashMap;
30 public class Response implements Serializable {
31 private static final long serialVersionUID = 434953706339865151L;
33 @SerializedName("CommonHeader")
34 private CommonHeader commonHeader;
36 @SerializedName("Status")
37 private ResponseStatus status = new ResponseStatus();
39 @SerializedName("Payload")
40 private HashMap<String, Object> payload = new HashMap<>();
47 * Construct an instance from an existing instance.
49 * @param request the existing instance
51 public Response(Request request) {
52 if (request.getCommonHeader() != null) {
53 this.commonHeader = new CommonHeader(request.getCommonHeader());
55 if (request.getPayload() != null) {
56 this.payload.putAll(request.getPayload());
60 public CommonHeader getCommonHeader() {
64 public void setCommonHeader(CommonHeader commonHeader) {
65 this.commonHeader = commonHeader;
68 public ResponseStatus getStatus() {
72 public void setStatus(ResponseStatus status) {
76 public Map<String, Object> getPayload() {
80 public void setPayload(Map<String, Object> payload) {
81 this.payload = new HashMap<>(payload);
85 public String toString() {
86 return "Response [CommonHeader=" + commonHeader + ", Status=" + status + ", Payload=" + payload + "]";
90 public int hashCode() {
93 result = prime * result + ((commonHeader == null) ? 0 : commonHeader.hashCode());
94 result = prime * result + ((payload == null) ? 0 : payload.hashCode());
95 result = prime * result + ((status == null) ? 0 : status.hashCode());
100 public boolean equals(Object obj) {
107 if (getClass() != obj.getClass()) {
110 Response other = (Response) obj;
111 if (commonHeader == null) {
112 if (other.commonHeader != null) {
115 } else if (!commonHeader.equals(other.commonHeader)) {
118 if (payload == null) {
119 if (other.payload != null) {
122 } else if (!payload.equals(other.payload)) {
125 if (status == null) {
126 if (other.status != null) {
129 } else if (!status.equals(other.status)) {