2 * ============LICENSE_START=======================================================
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
11 * http://www.apache.org/licenses/LICENSE-2.0
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=========================================================
21 package org.openecomp.sdc.be.resources.data.auditing;
23 import java.text.SimpleDateFormat;
24 import java.util.Date;
25 import java.util.EnumMap;
26 import java.util.TimeZone;
27 import java.util.UUID;
29 import org.openecomp.sdc.common.datastructure.AuditingFieldsKeysEnum;
31 import com.datastax.driver.core.utils.UUIDs;
32 import com.datastax.driver.mapping.annotations.ClusteringColumn;
33 import com.datastax.driver.mapping.annotations.Column;
34 import com.datastax.driver.mapping.annotations.PartitionKey;
35 import com.datastax.driver.mapping.annotations.Table;
37 @Table(keyspace = AuditingTypesConstants.AUDIT_KEYSPACE, name = AuditingTypesConstants.USER_ADMIN_EVENT_TYPE)
38 public class UserAdminEvent extends AuditingGenericEvent {
40 private static String USER_ADMIN_EVENT_TEMPLATE = "action=\"%s\" timestamp=\"%s\" modifierName=\"%s\" modifierUid=\"%s\" "
41 + "userUid=\"%s\" userName=\"%s\" userEmail=\"%s\" userRole=\"%s\" "
42 + "userBeforeUid=\"%s\" userBeforeName=\"%s\" userBeforeEmail=\"%s\" userBeforeRole=\"%s\" "
43 + "userAfterUid=\"%s\" userAfterName=\"%s\" userAfterEmail=\"%s\" userAfterRole=\"%s\" "
44 + "status=\"%s\" desc=\"%s\"";
47 protected UUID timebaseduuid;
50 protected Date timestamp1;
52 @Column(name = "REQUEST_ID")
53 protected String requestId;
55 @Column(name = "SERVICE_INSTANCE_ID")
56 protected String serviceInstanceId;
58 @Column(name = "ACTION")
59 protected String action;
61 protected String status;
63 @Column(name = "description")
64 protected String desc;
67 private String modifier;
69 @Column(name = "user_before")
70 private String userBefore;
72 @Column(name = "user_after")
73 private String userAfter;
75 public UserAdminEvent() {
77 timestamp1 = new Date();
78 timebaseduuid = UUIDs.timeBased();
82 public UserAdminEvent(EnumMap<AuditingFieldsKeysEnum, Object> auditingFields) {
85 value = auditingFields.get(AuditingFieldsKeysEnum.AUDIT_REQUEST_ID);
87 setRequestId((String) value);
89 value = auditingFields.get(AuditingFieldsKeysEnum.AUDIT_STATUS);
91 setStatus((String) value);
93 value = auditingFields.get(AuditingFieldsKeysEnum.AUDIT_MODIFIER_UID);
95 setModifier((String) value);
97 value = auditingFields.get(AuditingFieldsKeysEnum.AUDIT_ACTION);
99 setAction((String) value);
101 value = auditingFields.get(AuditingFieldsKeysEnum.AUDIT_SERVICE_INSTANCE_ID);
103 setServiceInstanceId((String) value);
105 value = auditingFields.get(AuditingFieldsKeysEnum.AUDIT_DESC);
107 setDesc((String) value);
109 value = auditingFields.get(AuditingFieldsKeysEnum.AUDIT_USER_BEFORE);
111 setUserBefore((String) value);
113 value = auditingFields.get(AuditingFieldsKeysEnum.AUDIT_USER_AFTER);
115 setUserAfter((String) value);
121 public void fillFields() {
122 fields.put(AuditingFieldsKeysEnum.AUDIT_REQUEST_ID.getDisplayName(), getRequestId());
124 fields.put(AuditingFieldsKeysEnum.AUDIT_SERVICE_INSTANCE_ID.getDisplayName(), getServiceInstanceId());
125 fields.put(AuditingFieldsKeysEnum.AUDIT_ACTION.getDisplayName(), getAction());
126 fields.put(AuditingFieldsKeysEnum.AUDIT_STATUS.getDisplayName(), getStatus());
127 fields.put(AuditingFieldsKeysEnum.AUDIT_DESC.getDisplayName(), getDesc());
128 fields.put(AuditingFieldsKeysEnum.AUDIT_USER_BEFORE.getDisplayName(), getUserBefore());
129 fields.put(AuditingFieldsKeysEnum.AUDIT_USER_AFTER.getDisplayName(), getUserAfter());
130 fields.put(AuditingFieldsKeysEnum.AUDIT_MODIFIER_UID.getDisplayName(), getModifier());
131 SimpleDateFormat simpleDateFormat = new SimpleDateFormat(dateFormatPattern);
132 simpleDateFormat.setTimeZone(TimeZone.getTimeZone("UTC"));
133 fields.put(AuditingFieldsKeysEnum.AUDIT_TIMESTAMP.getDisplayName(), simpleDateFormat.format(timestamp1));
136 public String getModifier() {
140 public void setModifier(String modifier) {
141 this.modifier = modifier;
144 public String getUserBefore() {
148 public void setUserBefore(String userBeforeName) {
149 this.userBefore = userBeforeName;
152 public String getUserAfter() {
156 public void setUserAfter(String userAfterName) {
157 this.userAfter = userAfterName;
160 public String getRequestId() {
164 public void setRequestId(String requestId) {
165 this.requestId = requestId;
168 public String getServiceInstanceId() {
169 return serviceInstanceId;
172 public void setServiceInstanceId(String serviceInstanceId) {
173 this.serviceInstanceId = serviceInstanceId;
176 public String getAction() {
180 public void setAction(String action) {
181 this.action = action;
184 public String getStatus() {
188 public void setStatus(String status) {
189 this.status = status;
192 public String getDesc() {
196 public void setDesc(String desc) {
200 public UUID getTimebaseduuid() {
201 return timebaseduuid;
204 public void setTimebaseduuid(UUID timebaseduuid) {
205 this.timebaseduuid = timebaseduuid;
208 public Date getTimestamp1() {
212 public void setTimestamp1(Date timestamp) {
213 this.timestamp1 = timestamp;
217 public String toString() {
218 return "UserAdminEvent [timebaseduuid=" + timebaseduuid + ", timestamp1=" + timestamp1 + ", requestId="
219 + requestId + ", serviceInstanceId=" + serviceInstanceId + ", action=" + action + ", status=" + status
220 + ", desc=" + desc + ", modifierUid=" + modifier + ", userBefore=" + userBefore + ", userAfter="