71a901505d562c9da2b8740b82285e510651602d
[policy/drools-applications.git] / controlloop / common / model-impl / events / src / main / java / org / onap / policy / controlloop / VirtualControlLoopNotification.java
1 /*-
2  * ============LICENSE_START=======================================================
3  * controlloop
4  * ================================================================================
5  * Copyright (C) 2017-2018 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
10  * 
11  *      http://www.apache.org/licenses/LICENSE-2.0
12  * 
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=========================================================
19  */
20
21 package org.onap.policy.controlloop;
22
23 import com.google.gson.annotations.SerializedName;
24
25 import java.time.Instant;
26 import java.util.HashMap;
27 import java.util.Map;
28
29 public class VirtualControlLoopNotification extends ControlLoopNotification {
30
31     private static final long serialVersionUID = 5354756047932144017L;
32
33     @SerializedName("AAI")
34     private Map<String, String> aai = new HashMap<>();
35     
36     @SerializedName("closedLoopAlarmStart")
37     private Instant closedLoopAlarmStart;
38     
39     @SerializedName("closedLoopAlarmEnd")
40     private Instant closedLoopAlarmEnd;
41
42     public VirtualControlLoopNotification() {}
43
44     /**
45      * Construct an instance.
46      * 
47      * @param event the event
48      */
49     public VirtualControlLoopNotification(VirtualControlLoopEvent event) {
50         super(event);
51         if (event == null) {
52             return;
53         }
54         if (event.getAai() != null) {
55             this.setAai(new HashMap<>(event.getAai()));
56         }
57         this.closedLoopAlarmStart = event.getClosedLoopAlarmStart();
58         this.closedLoopAlarmEnd = event.getClosedLoopAlarmEnd();
59     }
60
61     public Map<String, String> getAai() {
62         return aai;
63     }
64
65     public void setAai(Map<String, String> aai) {
66         this.aai = aai;
67     }
68
69     public Instant getClosedLoopAlarmStart() {
70         return closedLoopAlarmStart;
71     }
72
73     public void setClosedLoopAlarmStart(Instant closedLoopAlarmStart) {
74         this.closedLoopAlarmStart = closedLoopAlarmStart;
75     }
76
77     public Instant getClosedLoopAlarmEnd() {
78         return closedLoopAlarmEnd;
79     }
80
81     public void setClosedLoopAlarmEnd(Instant closedLoopAlarmEnd) {
82         this.closedLoopAlarmEnd = closedLoopAlarmEnd;
83     }
84 }