226e0f0588871a17e2440322f5c36b105ce45077
[sdc.git] / catalog-dao / src / main / java / org / openecomp / sdc / be / resources / data / auditing / ResourceAdminEvent.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 com.datastax.driver.core.utils.UUIDs;
24 import com.datastax.driver.mapping.annotations.ClusteringColumn;
25 import com.datastax.driver.mapping.annotations.Column;
26 import com.datastax.driver.mapping.annotations.PartitionKey;
27 import com.datastax.driver.mapping.annotations.Table;
28 import org.openecomp.sdc.be.resources.data.auditing.model.CommonAuditData;
29 import org.openecomp.sdc.be.resources.data.auditing.model.ResourceCommonInfo;
30 import org.openecomp.sdc.be.resources.data.auditing.model.ResourceVersionInfo;
31 import org.openecomp.sdc.common.datastructure.AuditingFieldsKey;
32
33 import java.text.SimpleDateFormat;
34 import java.util.Date;
35 import java.util.TimeZone;
36 import java.util.UUID;
37
38 @Table(keyspace = AuditingTypesConstants.AUDIT_KEYSPACE, name = AuditingTypesConstants.RESOURCE_ADMIN_EVENT_TYPE)
39 public class ResourceAdminEvent extends AuditingGenericEvent {
40
41     @PartitionKey
42     protected UUID timebaseduuid;
43
44     @ClusteringColumn
45     protected Date timestamp1;
46
47     @Column
48     protected String action;
49
50     @Column(name = "resource_type")
51     protected String resourceType;
52
53     @Column(name = "prev_version")
54     protected String prevVersion;
55
56     @Column(name = "prev_state")
57     protected String prevState;
58
59     @Column(name = "curr_state")
60     protected String currState;
61
62     @Column(name = "resource_name")
63     private String resourceName;
64
65     @Column(name = "curr_version")
66     private String currVersion;
67
68     @Column(name = "request_id")
69     protected String requestId;
70
71     @Column(name = "service_instance_id")
72     protected String serviceInstanceId;
73
74     @Column
75     protected String status;
76
77     @Column(name = "description")
78     protected String desc;
79
80     @Column
81     protected String modifier;
82
83     @Column(name = "prev_artifact_UUID")
84     protected String prevArtifactUUID;
85
86     @Column(name = "curr_artifact_UUID")
87     protected String currArtifactUUID;
88
89     @Column(name = "artifact_data")
90     protected String artifactData;
91
92     @Column
93     protected String did;
94
95     @Column(name = "dprev_status")
96     protected String dprevStatus;
97
98     @Column(name = "dcurr_status")
99     protected String dcurrStatus;
100
101     @Column(name = "tosca_node_type")
102     protected String toscaNodeType;
103
104     @Column
105     protected String comment;
106
107     @Column(name = "invariant_UUID")
108     protected String invariantUUID;
109
110     public ResourceAdminEvent() {
111         timestamp1 = new Date();
112         timebaseduuid = UUIDs.timeBased();
113     }
114
115     public ResourceAdminEvent(String action, CommonAuditData commonAuditData, ResourceCommonInfo resourceCommonInfo, ResourceVersionInfo prevParams, ResourceVersionInfo currParams,
116                               String invariantUuid, String modifier, String artifactData, String comment, String did, String toscaNodeType) {
117         this();
118         this.action = action;
119         this.requestId = commonAuditData.getRequestId();
120         this.desc = commonAuditData.getDescription();
121         this.status = commonAuditData.getStatus();
122         this.serviceInstanceId = commonAuditData.getServiceInstanceId();
123         this.currState = currParams.getState();
124         this.currVersion = currParams.getVersion();
125         this.currArtifactUUID = currParams.getArtifactUuid();
126         this.prevState = prevParams.getState();
127         this.prevVersion = prevParams.getVersion();
128         this.prevArtifactUUID = prevParams.getArtifactUuid();
129         this.resourceName = resourceCommonInfo.getResourceName();
130         this.resourceType = resourceCommonInfo.getResourceType();
131         this.comment = comment;
132         this.dcurrStatus = currParams.getDistributionStatus();
133         this.dprevStatus = prevParams.getDistributionStatus();
134         this.artifactData = artifactData;
135         this.modifier = modifier;
136         this.invariantUUID = invariantUuid;
137         this.did = did;
138         this.toscaNodeType = toscaNodeType;
139     }
140
141     public void setTimestamp1(String timestamp) {
142         this.timestamp1 = parseDateFromString(timestamp);
143     }
144
145     @Override
146     public void fillFields() {
147         fields.put(AuditingFieldsKey.AUDIT_REQUEST_ID.getDisplayName(), getRequestId());
148
149         fields.put(AuditingFieldsKey.AUDIT_SERVICE_INSTANCE_ID.getDisplayName(), getServiceInstanceId());
150         fields.put(AuditingFieldsKey.AUDIT_ACTION.getDisplayName(), getAction());
151         fields.put(AuditingFieldsKey.AUDIT_STATUS.getDisplayName(), getStatus());
152         fields.put(AuditingFieldsKey.AUDIT_DESC.getDisplayName(), getDesc());
153         fields.put(AuditingFieldsKey.AUDIT_RESOURCE_TYPE.getDisplayName(), getResourceType());
154         fields.put(AuditingFieldsKey.AUDIT_RESOURCE_PREV_VERSION.getDisplayName(), getPrevVersion());
155         fields.put(AuditingFieldsKey.AUDIT_RESOURCE_PREV_STATE.getDisplayName(), getPrevState());
156         fields.put(AuditingFieldsKey.AUDIT_RESOURCE_NAME.getDisplayName(), getResourceName());
157         fields.put(AuditingFieldsKey.AUDIT_RESOURCE_CURR_VERSION.getDisplayName(), getCurrVersion());
158         fields.put(AuditingFieldsKey.AUDIT_RESOURCE_CURR_STATE.getDisplayName(), getCurrState());
159         fields.put(AuditingFieldsKey.AUDIT_MODIFIER_UID.getDisplayName(), getModifier());
160         fields.put(AuditingFieldsKey.AUDIT_PREV_ARTIFACT_UUID.getDisplayName(), getPrevArtifactUUID());
161         fields.put(AuditingFieldsKey.AUDIT_CURR_ARTIFACT_UUID.getDisplayName(), getCurrArtifactUUID());
162         fields.put(AuditingFieldsKey.AUDIT_ARTIFACT_DATA.getDisplayName(), getArtifactData());
163         fields.put(AuditingFieldsKey.AUDIT_RESOURCE_COMMENT.getDisplayName(), getComment());
164         fields.put(AuditingFieldsKey.AUDIT_DISTRIBUTION_ID.getDisplayName(), getDid());
165         fields.put(AuditingFieldsKey.AUDIT_RESOURCE_DCURR_STATUS.getDisplayName(), getDcurrStatus());
166         fields.put(AuditingFieldsKey.AUDIT_RESOURCE_DPREV_STATUS.getDisplayName(), getDprevStatus());
167         fields.put(AuditingFieldsKey.AUDIT_RESOURCE_TOSCA_NODE_TYPE.getDisplayName(), getToscaNodeType());
168         fields.put(AuditingFieldsKey.AUDIT_INVARIANT_UUID.getDisplayName(), getInvariantUUID());
169
170         SimpleDateFormat simpleDateFormat = new SimpleDateFormat(dateFormatPattern);
171         simpleDateFormat.setTimeZone(TimeZone.getTimeZone("UTC"));
172         fields.put(AuditingFieldsKey.AUDIT_TIMESTAMP.getDisplayName(), timestamp1.getTime());
173     }
174
175     public String getResourceName() {
176         return resourceName;
177     }
178
179     public void setResourceName(String resourceName) {
180         this.resourceName = resourceName;
181     }
182
183     public String getResourceType() {
184         return resourceType;
185     }
186
187     public void setResourceType(String resourceType) {
188         this.resourceType = resourceType;
189     }
190
191     public String getPrevVersion() {
192         return prevVersion;
193     }
194
195     public void setPrevVersion(String prevVersion) {
196         this.prevVersion = prevVersion;
197     }
198
199     public String getCurrVersion() {
200         return currVersion;
201     }
202
203     public void setCurrVersion(String currVersion) {
204         this.currVersion = currVersion;
205     }
206
207     public String getPrevState() {
208         return prevState;
209     }
210
211     public void setPrevState(String prevState) {
212         this.prevState = prevState;
213     }
214
215     public String getCurrState() {
216         return currState;
217     }
218
219     public void setCurrState(String currState) {
220         this.currState = currState;
221     }
222
223     public UUID getTimebaseduuid() {
224         return timebaseduuid;
225     }
226
227     public void setTimebaseduuid(UUID timebaseduuid) {
228         this.timebaseduuid = timebaseduuid;
229     }
230
231     public Date getTimestamp1() {
232         return timestamp1;
233     }
234
235     public void setTimestamp1(Date timestamp1) {
236         this.timestamp1 = timestamp1;
237     }
238
239     public String getAction() {
240         return action;
241     }
242
243     public void setAction(String action) {
244         this.action = action;
245     }
246
247     public String getRequestId() {
248         return requestId;
249     }
250
251     public void setRequestId(String requestId) {
252         this.requestId = requestId;
253     }
254
255     public String getServiceInstanceId() {
256         return serviceInstanceId;
257     }
258
259     public void setServiceInstanceId(String serviceInstanceId) {
260         this.serviceInstanceId = serviceInstanceId;
261     }
262
263     public String getStatus() {
264         return status;
265     }
266
267     public void setStatus(String status) {
268         this.status = status;
269     }
270
271     public String getDesc() {
272         return desc;
273     }
274
275     public void setDesc(String desc) {
276         this.desc = desc;
277     }
278
279     public String getModifier() {
280         return modifier;
281     }
282
283     public void setModifier(String modifier) {
284         this.modifier = modifier;
285     }
286
287     public String getPrevArtifactUUID() {
288         return prevArtifactUUID;
289     }
290
291     public void setPrevArtifactUUID(String prevArtifactUUID) {
292         this.prevArtifactUUID = prevArtifactUUID;
293     }
294
295     public String getCurrArtifactUUID() {
296         return currArtifactUUID;
297     }
298
299     public void setCurrArtifactUUID(String currArtifactUUID) {
300         this.currArtifactUUID = currArtifactUUID;
301     }
302
303     public String getArtifactData() {
304         return artifactData;
305     }
306
307     public void setArtifactData(String artifactData) {
308         this.artifactData = artifactData;
309     }
310
311     public String getDid() {
312         return did;
313     }
314
315     public void setDid(String did) {
316         this.did = did;
317     }
318
319     public String getDprevStatus() {
320         return dprevStatus;
321     }
322
323     public void setDprevStatus(String dprevStatus) {
324         this.dprevStatus = dprevStatus;
325     }
326
327     public String getDcurrStatus() {
328         return dcurrStatus;
329     }
330
331     public void setDcurrStatus(String dcurrStatus) {
332         this.dcurrStatus = dcurrStatus;
333     }
334
335     public String getToscaNodeType() {
336         return toscaNodeType;
337     }
338
339     public void setToscaNodeType(String toscaNodeType) {
340         this.toscaNodeType = toscaNodeType;
341     }
342
343     public String getComment() {
344         return comment;
345     }
346
347     public void setComment(String comment) {
348         this.comment = comment;
349     }
350
351     public String getInvariantUUID() {
352         return invariantUUID;
353     }
354
355     public void setInvariantUUID(String invariantUUID) {
356         this.invariantUUID = invariantUUID;
357     }
358
359     @Override
360     public String toString() {
361         return "ResourceAdminEvent [timebaseduuid=" + timebaseduuid + ", timestamp1=" + timestamp1 + ", action="
362                 + action + ", resourceType=" + resourceType + ", prevVersion=" + prevVersion + ", prevState="
363                 + prevState + ", currState=" + currState + ", resourceName=" + resourceName + ", currVersion="
364                 + currVersion + ", requestId=" + requestId + ", serviceInstanceId=" + serviceInstanceId + ", status="
365                 + status + ", desc=" + desc + ", modifier=" + modifier + ", prevArtifactUUID=" + prevArtifactUUID
366                 + ", currArtifactUUID=" + currArtifactUUID + ", artifactData=" + artifactData + ", invariantUUID="
367                 + invariantUUID + "]";
368     }
369
370 }