8aac67bb0a2976a692ddcc1944294addf646c324
[policy/models.git] / models-interactions / model-actors / actor.cds / src / main / java / org / onap / policy / controlloop / actor / cds / beans / CdsActionRequest.java
1 /*-
2  * ============LICENSE_START=======================================================
3  * Copyright (C) 2019 Bell Canada. All rights reserved.
4  * ================================================================================
5  * Licensed under the Apache License, Version 2.0 (the "License");
6  * you may not use this file except in compliance with the License.
7  * You may obtain a copy of the License at
8  *
9  *      http://www.apache.org/licenses/LICENSE-2.0
10  *
11  * Unless required by applicable law or agreed to in writing, software
12  * distributed under the License is distributed on an "AS IS" BASIS,
13  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  * See the License for the specific language governing permissions and
15  * limitations under the License.
16  * ============LICENSE_END=========================================================
17  */
18
19 package org.onap.policy.controlloop.actor.cds.beans;
20
21 import com.google.gson.annotations.SerializedName;
22 import java.util.Map;
23 import lombok.Getter;
24 import lombok.Setter;
25 import org.onap.policy.common.utils.coder.Coder;
26 import org.onap.policy.common.utils.coder.CoderException;
27 import org.onap.policy.common.utils.coder.StandardCoder;
28 import org.slf4j.Logger;
29 import org.slf4j.LoggerFactory;
30
31 @Getter
32 @Setter
33 public class CdsActionRequest {
34
35     private static final Logger LOGGER = LoggerFactory.getLogger(CdsActionRequest.class);
36     private static final Coder CODER = new StandardCoder();
37
38     @SerializedName("policy-payload")
39     private Map<String, String> configDeployProperties;
40
41     @SerializedName("aai-properties")
42     private Map<String, String> aaiProperties;
43
44     @SerializedName("resolution-key")
45     private String resolutionKey;
46
47     private transient String actionName;
48
49     @Override
50     public String toString() {
51         try {
52             return "{" + "\"" + actionName + "-request\":" + CODER.encode(this) + '}';
53         } catch (CoderException e) {
54             LOGGER.error("Failure serializing CdsActionRequest object: ", e);
55             return "";
56         }
57     }
58 }