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