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 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.OperationalEnvAuditData;
30 import org.openecomp.sdc.be.resources.data.auditing.model.ResourceCommonInfo;
31 import org.openecomp.sdc.be.resources.data.auditing.model.ResourceVersionInfo;
32 import org.openecomp.sdc.common.datastructure.AuditingFieldsKey;
34 import java.text.SimpleDateFormat;
35 import java.util.Date;
36 import java.util.TimeZone;
37 import java.util.UUID;
39 @Table(keyspace = AuditingTypesConstants.AUDIT_KEYSPACE, name = AuditingTypesConstants.DISTRIBUTION_NOTIFICATION_EVENT_TYPE)
40 public class DistributionNotificationEvent extends AuditingGenericEvent {
43 protected UUID timebaseduuid;
46 protected Date timestamp1;
48 @Column(name = "request_id")
49 protected String requestId;
51 @Column(name = "service_instance_id")
52 protected String serviceInstanceId;
54 protected String action;
56 protected String status;
58 @Column(name = "description")
59 protected String desc;
61 @Column(name = "resource_name")
62 private String resourceName;
64 @Column(name = "resource_type")
65 private String resourceType;
67 @Column(name = "curr_version")
68 private String currVersion;
71 private String modifier;
73 @Column(name = "curr_state")
74 private String currState;
76 @Column(name = "topic_name")
77 private String topicName;
82 @Column(name = "env_id")
85 @Column(name = "vnf_workload_context")
86 private String vnfWorkloadContext;
88 @Column(name = "tenant")
89 private String tenant;
91 public DistributionNotificationEvent() {
92 timestamp1 = new Date();
93 timebaseduuid = UUIDs.timeBased();
96 public DistributionNotificationEvent(String action, CommonAuditData commonAuditData, ResourceCommonInfo resourceCommonInfo,
97 ResourceVersionInfo resourceVersionInfo,
98 String did, String modifier, String topicName,
99 OperationalEnvAuditData opEnvFields) {
101 this.action = action;
102 this.requestId = commonAuditData.getRequestId();
103 this.serviceInstanceId = commonAuditData.getServiceInstanceId();
104 this.status = commonAuditData.getStatus();
105 this.desc = commonAuditData.getDescription();
107 this.modifier = modifier;
108 this.currState = resourceVersionInfo.getState();
109 this.currVersion = resourceVersionInfo.getVersion();
110 this.resourceName = resourceCommonInfo.getResourceName();
111 this.resourceType = resourceCommonInfo.getResourceType();
112 this.topicName = topicName;
113 this.envId = opEnvFields.getEnvId();
114 this.vnfWorkloadContext = opEnvFields.getVnfWorkloadContext();
115 this.tenant = opEnvFields.getTenant();
119 public void setTimestamp1(String timestamp) {
120 this.timestamp1 = parseDateFromString(timestamp);
124 public void fillFields() {
125 fields.put(AuditingFieldsKey.AUDIT_REQUEST_ID.getDisplayName(), getRequestId());
127 fields.put(AuditingFieldsKey.AUDIT_SERVICE_INSTANCE_ID.getDisplayName(), getServiceInstanceId());
128 fields.put(AuditingFieldsKey.AUDIT_ACTION.getDisplayName(), getAction());
129 fields.put(AuditingFieldsKey.AUDIT_STATUS.getDisplayName(), getStatus());
130 fields.put(AuditingFieldsKey.AUDIT_DESC.getDisplayName(), getDesc());
131 fields.put(AuditingFieldsKey.AUDIT_DISTRIBUTION_ENVIRONMENT_ID.getDisplayName(), getEnvId());
132 fields.put(AuditingFieldsKey.AUDIT_DISTRIBUTION_VNF_WORKLOAD_CONTEXT.getDisplayName(), getVnfWorkloadContext());
133 fields.put(AuditingFieldsKey.AUDIT_DISTRIBUTION_TENANT.getDisplayName(), getTenant());
135 fields.put(AuditingFieldsKey.AUDIT_DISTRIBUTION_ID.getDisplayName(), getDid());
136 fields.put(AuditingFieldsKey.AUDIT_MODIFIER_UID.getDisplayName(), getModifier());
137 fields.put(AuditingFieldsKey.AUDIT_RESOURCE_CURR_STATE.getDisplayName(), getCurrState());
138 fields.put(AuditingFieldsKey.AUDIT_RESOURCE_CURR_VERSION.getDisplayName(), getCurrVersion());
139 fields.put(AuditingFieldsKey.AUDIT_RESOURCE_NAME.getDisplayName(), getResourceName());
140 fields.put(AuditingFieldsKey.AUDIT_RESOURCE_TYPE.getDisplayName(), getResourceType());
141 fields.put(AuditingFieldsKey.AUDIT_DISTRIBUTION_TOPIC_NAME.getDisplayName(), getTopicName());
142 SimpleDateFormat simpleDateFormat = new SimpleDateFormat(dateFormatPattern);
143 simpleDateFormat.setTimeZone(TimeZone.getTimeZone("UTC"));
144 fields.put(AuditingFieldsKey.AUDIT_TIMESTAMP.getDisplayName(), simpleDateFormat.format(timestamp1));
147 public String getResourceName() {
151 public void setResourceName(String resourceName) {
152 this.resourceName = resourceName;
155 public String getResourceType() {
159 public void setResourceType(String resourceType) {
160 this.resourceType = resourceType;
163 public String getCurrVersion() {
167 public void setCurrVersion(String currVersion) {
168 this.currVersion = currVersion;
171 public String getCurrState() {
175 public void setCurrState(String currState) {
176 this.currState = currState;
179 public String getTopicName() {
183 public void setTopicName(String topicName) {
184 this.topicName = topicName;
187 public UUID getTimebaseduuid() {
188 return timebaseduuid;
191 public void setTimebaseduuid(UUID timebaseduuid) {
192 this.timebaseduuid = timebaseduuid;
195 public Date getTimestamp1() {
199 public void setTimestamp1(Date timestamp1) {
200 this.timestamp1 = timestamp1;
203 public String getRequestId() {
207 public void setRequestId(String requestId) {
208 this.requestId = requestId;
211 public String getServiceInstanceId() {
212 return serviceInstanceId;
215 public void setServiceInstanceId(String serviceInstanceId) {
216 this.serviceInstanceId = serviceInstanceId;
219 public String getAction() {
223 public void setAction(String action) {
224 this.action = action;
227 public String getStatus() {
231 public void setStatus(String status) {
232 this.status = status;
235 public String getDesc() {
239 public void setDesc(String desc) {
243 public String getModifier() {
247 public void setModifier(String modifier) {
248 this.modifier = modifier;
251 public String getDid() {
255 public void setDid(String did) {
259 public String getVnfWorkloadContext() {
260 return vnfWorkloadContext;
263 public void setVnfWorkloadContext(String vnfWorkloadContext) {
264 this.vnfWorkloadContext = vnfWorkloadContext;
267 public String getEnvId() {
271 public void setEnvId(String envId) {
275 public String getTenant() {
279 public void setTenant(String tenant) {
280 this.tenant = tenant;
284 public String toString() {
285 return "DistributionNotificationEvent [timebaseduuid=" + timebaseduuid + ", timestamp1=" + timestamp1
286 + ", requestId=" + requestId + ", serviceInstanceId=" + serviceInstanceId + ", action=" + action
287 + ", status=" + status + ", desc=" + desc + ", resourceName=" + resourceName + ", resourceType="
288 + resourceType + ", currVersion=" + currVersion + ", modifier=" + modifier + ", currState=" + currState
289 + ", topicName=" + topicName + ", did=" + did
290 + ", envId=" + envId + ", vnfWorkloadContext=" + vnfWorkloadContext + ", tenant=" + tenant + "]";