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;
26 import org.openecomp.sdc.be.resources.data.auditing.model.CommonAuditData;
27 import org.openecomp.sdc.common.datastructure.AuditingFieldsKeysEnum;
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;
35 @Table(keyspace = "sdcaudit", name = AuditingTypesConstants.AUTH_EVENT_TYPE)
36 public class AuthEvent extends AuditingGenericEvent {
38 private static String AUTH_EVENT_TEMPLATE = "action=\"%s\" timestamp=\"%s\" "
39 + "URL=\"%s\" USER=\"%s\" AUTH_STATUS=\"%s\" " + "REALM=\"%s\" status=\"%s\" desc=\"%s\"";
42 protected UUID timebaseduuid;
45 protected Date timestamp1;
52 @Column(name = "auth_status")
53 private String authStatus;
58 protected String action;
60 protected String status;
62 @Column(name = "description")
63 protected String desc;
65 @Column(name = "request_id")
66 protected String requestId;
70 timestamp1 = new Date();
71 timebaseduuid = UUIDs.timeBased();
74 public String getUrl() {
78 public void setUrl(String url) {
82 public String getUser() {
86 public void setUser(String user) {
90 public String getAuthStatus() {
94 public void setAuthStatus(String authStatus) {
95 this.authStatus = authStatus;
98 public String getRealm() {
102 public void setRealm(String realm) {
106 public UUID getTimebaseduuid() {
107 return timebaseduuid;
110 public void setTimebaseduuid(UUID timebaseduuid) {
111 this.timebaseduuid = timebaseduuid;
114 public Date getTimestamp1() {
118 public void setTimestamp1(Date timestamp1) {
119 this.timestamp1 = timestamp1;
122 public String getAction() {
126 public void setAction(String action) {
127 this.action = action;
130 public String getStatus() {
134 public void setStatus(String status) {
135 this.status = status;
138 public String getDesc() {
142 public void setDesc(String desc) {
146 public String getRequestId() {
150 public void setRequestId(String requestId) {
151 this.requestId = requestId;
154 public AuthEvent(Map<AuditingFieldsKeysEnum, Object> auditingFields) {
157 value = auditingFields.get(AuditingFieldsKeysEnum.AUDIT_AUTH_URL);
159 setUrl((String) value);
161 value = auditingFields.get(AuditingFieldsKeysEnum.AUDIT_AUTH_USER);
163 setUser((String) value);
165 value = auditingFields.get(AuditingFieldsKeysEnum.AUDIT_AUTH_STATUS);
167 setAuthStatus((String) value);
169 value = auditingFields.get(AuditingFieldsKeysEnum.AUDIT_AUTH_REALM);
171 setRealm((String) value);
173 value = auditingFields.get(AuditingFieldsKeysEnum.AUDIT_ACTION);
175 setAction((String) value);
177 value = auditingFields.get(AuditingFieldsKeysEnum.AUDIT_DESC);
179 setDesc((String) value);
181 value = auditingFields.get(AuditingFieldsKeysEnum.AUDIT_REQUEST_ID);
183 setRequestId((String) value);
185 value = auditingFields.get(AuditingFieldsKeysEnum.AUDIT_STATUS);
187 setStatus((String) value);
192 public AuthEvent(String action, CommonAuditData commonAuditData, String user, String authUrl, String realm, String authStatus) {
194 this.action = action;
195 this.requestId = commonAuditData.getRequestId();
196 this.desc = commonAuditData.getDescription();
197 this.status = commonAuditData.getStatus();
198 this.authStatus = authStatus;
205 public void fillFields() {
206 fields.put(AuditingFieldsKeysEnum.AUDIT_AUTH_URL.getDisplayName(), getUrl());
208 fields.put(AuditingFieldsKeysEnum.AUDIT_AUTH_USER.getDisplayName(), getUser());
209 fields.put(AuditingFieldsKeysEnum.AUDIT_AUTH_STATUS.getDisplayName(), getAuthStatus());
210 fields.put(AuditingFieldsKeysEnum.AUDIT_AUTH_REALM.getDisplayName(), getRealm());
211 fields.put(AuditingFieldsKeysEnum.AUDIT_ACTION.getDisplayName(), getAction());
212 fields.put(AuditingFieldsKeysEnum.AUDIT_STATUS.getDisplayName(), getStatus());
213 fields.put(AuditingFieldsKeysEnum.AUDIT_REQUEST_ID.getDisplayName(), getRequestId());
214 fields.put(AuditingFieldsKeysEnum.AUDIT_DESC.getDisplayName(), getDesc());
215 SimpleDateFormat simpleDateFormat = new SimpleDateFormat(dateFormatPattern);
216 simpleDateFormat.setTimeZone(TimeZone.getTimeZone("UTC"));
217 fields.put(AuditingFieldsKeysEnum.AUDIT_TIMESTAMP.getDisplayName(), simpleDateFormat.format(timestamp1));