VES Heartbeat and Software Management Feature
[oam/tr069-adapter.git] / acs / common / src / main / java / org / commscope / tr069adapter / acs / common / DeviceRPCRequest.java
1 /*\r
2  * ============LICENSE_START========================================================================\r
3  * ONAP : tr-069-adapter\r
4  * =================================================================================================\r
5  * Copyright (C) 2020 CommScope Inc Intellectual Property.\r
6  * =================================================================================================\r
7  * This tr-069-adapter software file is distributed by CommScope Inc under the Apache License,\r
8  * Version 2.0 (the "License"); you may not use this file except in compliance with the License. You\r
9  * may obtain a copy of the License at\r
10  *\r
11  * http://www.apache.org/licenses/LICENSE-2.0\r
12  *\r
13  * This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND,\r
14  * either express or implied. See the License for the specific language governing permissions and\r
15  * limitations under the License.\r
16  * ===============LICENSE_END=======================================================================\r
17  */\r
18 \r
19 package org.commscope.tr069adapter.acs.common;\r
20 \r
21 import java.io.Serializable;\r
22 import java.util.HashMap;\r
23 import java.util.Map;\r
24 \r
25 public class DeviceRPCRequest implements Serializable {\r
26 \r
27   private static final long serialVersionUID = -7300390764969298783L;\r
28 \r
29   private DeviceDetails deviceDetails;\r
30 \r
31   private Long operationId;\r
32 \r
33   private OperationDetails opDetails;\r
34 \r
35   private OperationOptions options;\r
36   private transient Map<String, Object> context = new HashMap<>();\r
37 \r
38   public DeviceRPCRequest(DeviceDetails deviceDetails, Long operationId, OperationDetails opDetails,\r
39       OperationOptions options, Map<String, Object> context) {\r
40     super();\r
41     this.deviceDetails = deviceDetails;\r
42     this.operationId = operationId;\r
43     this.opDetails = opDetails;\r
44     this.options = options;\r
45     this.context = context;\r
46   }\r
47 \r
48   public DeviceRPCRequest(DeviceRPCRequest deviceRPCRequest) {\r
49     deviceDetails = deviceRPCRequest.deviceDetails;\r
50     operationId = deviceRPCRequest.operationId;\r
51     opDetails = deviceRPCRequest.opDetails;\r
52     options = deviceRPCRequest.options;\r
53     context = deviceRPCRequest.context;\r
54   }\r
55 \r
56   public DeviceRPCRequest() {\r
57 \r
58   }\r
59 \r
60   public DeviceRPCRequest(DeviceRPCResponse operationResult) {\r
61     this.deviceDetails = operationResult.getDeviceDetails();\r
62     this.operationId = operationResult.getOperationId();\r
63   }\r
64 \r
65   public DeviceDetails getDeviceDetails() {\r
66     return deviceDetails;\r
67   }\r
68 \r
69   public void setDeviceDetails(DeviceDetails deviceDetails) {\r
70     this.deviceDetails = deviceDetails;\r
71   }\r
72 \r
73   public Long getOperationId() {\r
74     return operationId;\r
75   }\r
76 \r
77   public void setOperationId(Long operationId) {\r
78     this.operationId = operationId;\r
79   }\r
80 \r
81   public OperationDetails getOpDetails() {\r
82     return opDetails;\r
83   }\r
84 \r
85   public void setOpDetails(OperationDetails opDetails) {\r
86     this.opDetails = opDetails;\r
87   }\r
88 \r
89   public OperationOptions getOptions() {\r
90     return options;\r
91   }\r
92 \r
93   public void setOptions(OperationOptions options) {\r
94     this.options = options;\r
95   }\r
96 \r
97   public Map<String, Object> getContext() {\r
98     return context;\r
99   }\r
100 \r
101   public void addContextParam(String name, Object value) {\r
102     this.context.put(name, value);\r
103   }\r
104 \r
105   @Override\r
106   public String toString() {\r
107     return "NBIDeviceOperationRequest [deviceId=" + deviceDetails.getDeviceId() + ", deviceType="\r
108         + deviceDetails.getDeviceTypeId() + ", operationId=" + operationId + ", opDetails="\r
109         + opDetails + ", options=" + options + "]";\r
110   }\r
111 \r
112 }\r