Sync Integ to Master
[sdc.git] / catalog-dao / src / main / java / org / openecomp / sdc / be / resources / data / auditing / AuditingGetUebClusterEvent.java
1 /*-
2  * ============LICENSE_START=======================================================
3  * SDC
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
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.openecomp.sdc.be.resources.data.auditing;
22
23 import java.text.SimpleDateFormat;
24 import java.util.*;
25
26 import org.openecomp.sdc.be.resources.data.auditing.model.CommonAuditData;
27 import org.openecomp.sdc.common.datastructure.AuditingFieldsKeysEnum;
28
29 import com.datastax.driver.core.utils.UUIDs;
30 import com.datastax.driver.mapping.annotations.ClusteringColumn;
31 import com.datastax.driver.mapping.annotations.Column;
32 import com.datastax.driver.mapping.annotations.PartitionKey;
33 import com.datastax.driver.mapping.annotations.Table;
34
35 @Table(keyspace = AuditingTypesConstants.AUDIT_KEYSPACE, name = AuditingTypesConstants.DISTRIBUTION_GET_UEB_CLUSTER_EVENT_TYPE)
36 public class AuditingGetUebClusterEvent extends AuditingGenericEvent {
37     private static String DISTRIBUTION_GET_UEB_CLUSTER_EVENT_TEMPLATE = "action=\"%s\" "
38             + " consumerId=\"%s\" statusTime=\"%s\" status=\"%s\" status_desc=\"%s\" ";
39
40     @PartitionKey
41     protected UUID timebaseduuid;
42
43     @ClusteringColumn
44     protected Date timestamp1;
45
46     @Column(name = "request_id")
47     protected String requestId;
48
49     @Column(name = "service_instance_id")
50     protected String serviceInstanceId;
51     @Column
52     protected String action;
53     @Column
54     protected String status;
55
56     @Column(name = "description")
57     protected String desc;
58
59     @Column(name = "consumer_id")
60     private String consumerId;
61
62     public AuditingGetUebClusterEvent() {
63         super();
64         timestamp1 = new Date();
65         timebaseduuid = UUIDs.timeBased();
66     }
67
68     public AuditingGetUebClusterEvent(Map<AuditingFieldsKeysEnum, Object> auditingFields) {
69         this();
70         Object value;
71         value = auditingFields.get(AuditingFieldsKeysEnum.AUDIT_REQUEST_ID);
72         if (value != null) {
73             setRequestId((String) value);
74         }
75         value = auditingFields.get(AuditingFieldsKeysEnum.AUDIT_SERVICE_INSTANCE_ID);
76         if (value != null) {
77             setServiceInstanceId((String) value);
78         }
79         value = auditingFields.get(AuditingFieldsKeysEnum.AUDIT_ACTION);
80         if (value != null) {
81             setAction((String) value);
82         }
83         value = auditingFields.get(AuditingFieldsKeysEnum.AUDIT_STATUS);
84         if (value != null) {
85             setStatus((String) value);
86         }
87         value = auditingFields.get(AuditingFieldsKeysEnum.AUDIT_DESC);
88         if (value != null) {
89             setDesc((String) value);
90         } else {
91             value = auditingFields.get(AuditingFieldsKeysEnum.AUDIT_DISTRIBUTION_STATUS_DESC);
92             if (value != null) {
93                 setDesc((String) value);
94             }
95         }
96         value = auditingFields.get(AuditingFieldsKeysEnum.AUDIT_DISTRIBUTION_CONSUMER_ID);
97         if (value != null) {
98             setConsumerId((String) value);
99         }
100
101     }
102
103     public AuditingGetUebClusterEvent(String action, CommonAuditData commonAuditData, String consumerId) {
104         this();
105         this.action = action;
106         this.requestId = commonAuditData.getRequestId();
107         this.serviceInstanceId = commonAuditData.getServiceInstanceId();
108         this.status = commonAuditData.getStatus();
109         //if no desc, keep distr desc
110         this.desc = commonAuditData.getDescription();
111         this.consumerId = consumerId;
112     }
113
114     @Override
115     public void fillFields() {
116         fields.put(AuditingFieldsKeysEnum.AUDIT_REQUEST_ID.getDisplayName(), getRequestId());
117
118         fields.put(AuditingFieldsKeysEnum.AUDIT_SERVICE_INSTANCE_ID.getDisplayName(), getServiceInstanceId());
119         fields.put(AuditingFieldsKeysEnum.AUDIT_ACTION.getDisplayName(), getAction());
120         fields.put(AuditingFieldsKeysEnum.AUDIT_STATUS.getDisplayName(), getStatus());
121         fields.put(AuditingFieldsKeysEnum.AUDIT_DESC.getDisplayName(), getDesc());
122         fields.put(AuditingFieldsKeysEnum.AUDIT_DISTRIBUTION_CONSUMER_ID.getDisplayName(), getConsumerId());
123         SimpleDateFormat simpleDateFormat = new SimpleDateFormat(dateFormatPattern);
124         simpleDateFormat.setTimeZone(TimeZone.getTimeZone("UTC"));
125         fields.put(AuditingFieldsKeysEnum.AUDIT_TIMESTAMP.getDisplayName(), simpleDateFormat.format(timestamp1));
126
127     }
128
129     public String getConsumerId() {
130         return consumerId;
131     }
132
133     public void setConsumerId(String consumerId) {
134         this.consumerId = consumerId;
135     }
136
137     public UUID getTimebaseduuid() {
138         return timebaseduuid;
139     }
140
141     public void setTimebaseduuid(UUID timebaseduuid) {
142         this.timebaseduuid = timebaseduuid;
143     }
144
145     public Date getTimestamp1() {
146         return timestamp1;
147     }
148
149     public void setTimestamp1(Date timestamp1) {
150         this.timestamp1 = timestamp1;
151     }
152
153     public String getRequestId() {
154         return requestId;
155     }
156
157     public void setRequestId(String requestId) {
158         this.requestId = requestId;
159     }
160
161     public String getServiceInstanceId() {
162         return serviceInstanceId;
163     }
164
165     public void setServiceInstanceId(String serviceInstanceId) {
166         this.serviceInstanceId = serviceInstanceId;
167     }
168
169     public String getAction() {
170         return action;
171     }
172
173     public void setAction(String action) {
174         this.action = action;
175     }
176
177     public String getStatus() {
178         return status;
179     }
180
181     public void setStatus(String status) {
182         this.status = status;
183     }
184
185     public String getDesc() {
186         return desc;
187     }
188
189     public void setDesc(String desc) {
190         this.desc = desc;
191     }
192
193     @Override
194     public String toString() {
195         return "AuditingGetUebClusterEvent [timebaseduuid=" + timebaseduuid + ", timestamp1=" + timestamp1
196                 + ", requestId=" + requestId + ", serviceInstanceId=" + serviceInstanceId + ", action=" + action
197                 + ", status=" + status + ", desc=" + desc + ", consumerId=" + consumerId + "]";
198     }
199
200 }