re base code
[sdc.git] / catalog-be / src / main / java / org / openecomp / sdc / be / auditing / impl / resourceadmin / AuditResourceEventFactoryManager.java
1 package org.openecomp.sdc.be.auditing.impl.resourceadmin;
2
3 import org.openecomp.sdc.be.auditing.api.AuditEventFactory;
4 import org.openecomp.sdc.be.auditing.impl.AuditBaseEventFactory;
5 import org.openecomp.sdc.be.model.User;
6 import org.openecomp.sdc.be.resources.data.auditing.AuditingActionEnum;
7 import org.openecomp.sdc.be.resources.data.auditing.model.CommonAuditData;
8 import org.openecomp.sdc.be.resources.data.auditing.model.ResourceCommonInfo;
9 import org.openecomp.sdc.be.resources.data.auditing.model.ResourceVersionInfo;
10
11 public class AuditResourceEventFactoryManager {
12
13
14     public static AuditEventFactory createResourceEventFactory(AuditingActionEnum action, CommonAuditData commonFields, ResourceCommonInfo resourceCommonInfo,
15                                                                ResourceVersionInfo prevParams, ResourceVersionInfo currParams, String invariantUuid,
16                                                                User modifier, String artifactData, String comment, String did, String toscaNodeType) {
17         AuditBaseEventFactory factory = null;
18
19         switch (action) {
20             case IMPORT_RESOURCE:
21                 factory = new AuditImportResourceAdminEventFactory(commonFields, resourceCommonInfo, prevParams, currParams,
22                         invariantUuid, modifier, artifactData, comment, did, toscaNodeType);
23                 break;
24             case CREATE_RESOURCE:
25             case CREATE_SERVICE:
26             case UPDATE_RESOURCE_METADATA:
27             case ARCHIVE_COMPONENT:
28             case RESTORE_COMPONENT:
29             case UPDATE_SERVICE_METADATA:
30                 factory = new AuditCreateUpdateResourceAdminEventFactory(action, commonFields, resourceCommonInfo, prevParams, currParams,
31                         invariantUuid, modifier, artifactData, comment, did, org.openecomp.sdc.common.api.Constants.EMPTY_STRING);
32                 break;
33             case CHECKIN_RESOURCE:
34             case CHECKOUT_RESOURCE:
35             case UNDO_CHECKOUT_RESOURCE:
36             case CERTIFICATION_REQUEST_RESOURCE:
37             case START_CERTIFICATION_RESOURCE:
38             case CERTIFICATION_SUCCESS_RESOURCE:
39             case FAIL_CERTIFICATION_RESOURCE:
40             case CANCEL_CERTIFICATION_RESOURCE:
41             case UPDATE_SERVICE_REFERENCE:
42             case VF_UPGRADE_SERVICES:
43                 factory = new AuditCertificationResourceAdminEventFactory(action, commonFields, resourceCommonInfo, prevParams, currParams,
44                         invariantUuid, modifier, artifactData, comment, did);
45                 break;
46             case ARTIFACT_UPLOAD:
47             case ARTIFACT_DELETE:
48             case ARTIFACT_METADATA_UPDATE:
49             case ARTIFACT_PAYLOAD_UPDATE:
50             case ARTIFACT_DOWNLOAD:
51                 factory = new AuditArtifactResourceAdminEventFactory(action, commonFields, resourceCommonInfo, prevParams, currParams,
52                         invariantUuid, modifier, artifactData, comment, did);
53                 break;
54             case DISTRIBUTION_STATE_CHANGE_REQUEST:
55                 factory = new AuditDistStateChangeRequestResourceAdminEventFactory(commonFields, resourceCommonInfo, prevParams, currParams,
56                          invariantUuid, modifier, artifactData, comment, did);
57                 break;
58             case DISTRIBUTION_STATE_CHANGE_APPROV:
59             case DISTRIBUTION_STATE_CHANGE_REJECT:
60                 factory = new AuditDistStateChangeResourceAdminEventFactory(action, commonFields, resourceCommonInfo, prevParams, currParams,
61                          invariantUuid, modifier, artifactData, comment, did);
62                 break;
63             default:
64                 throw new UnsupportedOperationException();
65         }
66         return factory;
67     }
68
69 }