09f45c69347a9033b3cb8a22d846c4c921a357f5
[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.GET_CATEGORY_HIERARCHY_EVENT_TYPE)
39 public class GetCategoryHierarchyEvent extends AuditingGenericEvent {
40     @PartitionKey
41     protected UUID timebaseduuid;
42
43     @ClusteringColumn()
44     // @Column(name="timestamp")
45     protected Date timestamp1;
46
47     @Column(name = "request_id")
48     protected String requestId;
49     @Column
50     protected String action;
51     @Column
52     protected String status;
53
54     @Column(name = "description")
55     protected String desc;
56
57     @Column
58     private String modifier;
59
60     @Column
61     private String details;
62
63     public GetCategoryHierarchyEvent() {
64         super();
65         timestamp1 = new Date();
66         timebaseduuid = UUIDs.timeBased();
67     }
68
69     public GetCategoryHierarchyEvent(Map<AuditingFieldsKeysEnum, Object> auditingFields) {
70         this();
71         Object value;
72         value = auditingFields.get(AuditingFieldsKeysEnum.AUDIT_REQUEST_ID);
73         if (value != null) {
74             setRequestId((String) value);
75         }
76         value = auditingFields.get(AuditingFieldsKeysEnum.AUDIT_ACTION);
77         if (value != null) {
78             setAction((String) value);
79         }
80         value = auditingFields.get(AuditingFieldsKeysEnum.AUDIT_STATUS);
81         if (value != null) {
82             setStatus((String) value);
83         }
84         value = auditingFields.get(AuditingFieldsKeysEnum.AUDIT_DESC);
85         if (value != null) {
86             setDesc((String) value);
87         }
88         value = auditingFields.get(AuditingFieldsKeysEnum.AUDIT_MODIFIER_UID);
89         if (value != null) {
90             setModifier((String) value);
91         }
92         value = auditingFields.get(AuditingFieldsKeysEnum.AUDIT_DETAILS);
93         if (value != null) {
94             setDetails((String) value);
95         }
96     }
97
98     public GetCategoryHierarchyEvent(String action, CommonAuditData commonAuditData, String modifier, String details) {
99         this();
100         this.action = action;
101         this.requestId = commonAuditData.getRequestId();
102         this.desc = commonAuditData.getDescription();
103         this.status = commonAuditData.getStatus();
104         this.modifier = modifier;
105         this.details = details;
106     }
107
108     @Override
109     public void fillFields() {
110         fields.put(AuditingFieldsKeysEnum.AUDIT_REQUEST_ID.getDisplayName(), getRequestId());
111
112         fields.put(AuditingFieldsKeysEnum.AUDIT_SERVICE_INSTANCE_ID.getDisplayName(), getServiceInstanceId());
113         fields.put(AuditingFieldsKeysEnum.AUDIT_ACTION.getDisplayName(), getAction());
114         fields.put(AuditingFieldsKeysEnum.AUDIT_STATUS.getDisplayName(), getStatus());
115         fields.put(AuditingFieldsKeysEnum.AUDIT_DESC.getDisplayName(), getDesc());
116         fields.put(AuditingFieldsKeysEnum.AUDIT_DETAILS.getDisplayName(), getDetails());
117         SimpleDateFormat simpleDateFormat = new SimpleDateFormat(dateFormatPattern);
118         simpleDateFormat.setTimeZone(TimeZone.getTimeZone("UTC"));
119         fields.put(AuditingFieldsKeysEnum.AUDIT_TIMESTAMP.getDisplayName(), simpleDateFormat.format(timestamp1));
120     }
121
122     public UUID getTimebaseduuid() {
123         return timebaseduuid;
124     }
125
126     public void setTimebaseduuid(UUID timebaseduuid) {
127         this.timebaseduuid = timebaseduuid;
128     }
129
130     public Date getTimestamp1() {
131         return timestamp1;
132     }
133
134     public void setTimestamp1(Date timestamp1) {
135         this.timestamp1 = timestamp1;
136     }
137
138     public String getRequestId() {
139         return requestId;
140     }
141
142     public void setRequestId(String requestId) {
143         this.requestId = requestId;
144     }
145
146     public String getAction() {
147         return action;
148     }
149
150     public void setAction(String action) {
151         this.action = action;
152     }
153
154     public String getStatus() {
155         return status;
156     }
157
158     public void setStatus(String status) {
159         this.status = status;
160     }
161
162     public String getDesc() {
163         return desc;
164     }
165
166     public void setDesc(String desc) {
167         this.desc = desc;
168     }
169
170     public String getModifier() {
171         return modifier;
172     }
173
174     public void setModifier(String modifier) {
175         this.modifier = modifier;
176     }
177
178     public String getDetails() {
179         return details;
180     }
181
182     public void setDetails(String details) {
183         this.details = details;
184     }
185
186     @Override
187     public String toString() {
188         return "GetCategoryHierarchyEvent [timebaseduuid=" + timebaseduuid + ", timestamp1=" + timestamp1
189                 + ", requestId=" + requestId + ", action=" + action + ", status=" + status + ", desc=" + desc
190                 + ", modifier=" + modifier + ", details=" + details + "]";
191     }
192
193 }