re base code
[sdc.git] / catalog-be / src / main / java / org / openecomp / sdc / be / auditing / impl / externalapi / AuditExternalApiEventFactory.java
1 package org.openecomp.sdc.be.auditing.impl.externalapi;
2
3 import org.openecomp.sdc.be.auditing.impl.AuditBaseEventFactory;
4 import org.openecomp.sdc.be.model.User;
5 import org.openecomp.sdc.be.resources.data.auditing.AuditingActionEnum;
6 import org.openecomp.sdc.be.resources.data.auditing.AuditingGenericEvent;
7 import org.openecomp.sdc.be.resources.data.auditing.ExternalApiEvent;
8 import org.openecomp.sdc.be.resources.data.auditing.model.CommonAuditData;
9 import org.openecomp.sdc.be.resources.data.auditing.model.DistributionData;
10 import org.openecomp.sdc.be.resources.data.auditing.model.ResourceCommonInfo;
11 import org.openecomp.sdc.be.resources.data.auditing.model.ResourceVersionInfo;
12 import org.openecomp.sdc.common.util.ThreadLocalsHolder;
13
14 public abstract class AuditExternalApiEventFactory extends AuditBaseEventFactory {
15
16     protected final ExternalApiEvent event;
17
18     public AuditExternalApiEventFactory(AuditingActionEnum action, CommonAuditData commonAuditData, ResourceCommonInfo resourceCommonInfo,
19                                         DistributionData distributionData, ResourceVersionInfo prevParams, ResourceVersionInfo currParams,
20                                         String invariantUuid, User modifier, String artifactData) {
21         super(action);
22         if (commonAuditData.getRequestId() == null) {
23             commonAuditData.setRequestId(ThreadLocalsHolder.getUuid());
24         }
25         event = new ExternalApiEvent(getAction().getName(), commonAuditData, resourceCommonInfo, distributionData,
26                 prevParams, currParams, AuditBaseEventFactory.buildUserName(modifier), invariantUuid, artifactData) ;
27     }
28
29     @Override
30     public AuditingGenericEvent getDbEvent() { return event; }
31 }