aboutsummaryrefslogtreecommitdiffstats
path: root/catalog-dao/src/main/java/org/openecomp/sdc/be/dao/impl/AuditingDao.java
diff options
context:
space:
mode:
Diffstat (limited to 'catalog-dao/src/main/java/org/openecomp/sdc/be/dao/impl/AuditingDao.java')
-rw-r--r--catalog-dao/src/main/java/org/openecomp/sdc/be/dao/impl/AuditingDao.java254
1 files changed, 0 insertions, 254 deletions
diff --git a/catalog-dao/src/main/java/org/openecomp/sdc/be/dao/impl/AuditingDao.java b/catalog-dao/src/main/java/org/openecomp/sdc/be/dao/impl/AuditingDao.java
deleted file mode 100644
index 26b821a3d4..0000000000
--- a/catalog-dao/src/main/java/org/openecomp/sdc/be/dao/impl/AuditingDao.java
+++ /dev/null
@@ -1,254 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * SDC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.sdc.be.dao.impl;
-
-import fj.data.Either;
-import org.elasticsearch.index.query.BoolQueryBuilder;
-import org.elasticsearch.index.query.QueryBuilder;
-import org.elasticsearch.index.query.QueryBuilders;
-import org.openecomp.sdc.be.config.BeEcompErrorManager;
-import org.openecomp.sdc.be.dao.api.ActionStatus;
-import org.openecomp.sdc.be.resources.data.auditing.AuditingActionEnum;
-import org.openecomp.sdc.be.resources.data.auditing.AuditingGenericEvent;
-import org.openecomp.sdc.be.resources.data.auditing.AuditingTypesConstants;
-import org.openecomp.sdc.be.resources.data.auditing.ResourceAdminEvent;
-import org.openecomp.sdc.common.datastructure.AuditingFieldsKey;
-import org.openecomp.sdc.common.datastructure.ESTimeBasedEvent;
-import org.openecomp.sdc.common.log.wrappers.Logger;
-import org.springframework.stereotype.Component;
-
-import javax.annotation.PostConstruct;
-import java.util.*;
-import java.util.Map.Entry;
-
-@Component("auditingDao")
-public class AuditingDao extends ESTimeBasedDao {
-
- private static final String FAILED_TO_GET_DISTRIBUTION_STATUSES_FOR_ACTION = "failed to get distribution statuses for action {}";
- private static final String GET_SERVICE_DISTRIBUTION_STATUSES_LIST = "Get Service DistributionStatuses List";
- private static final String SERVICE_INSTANCE_ID_FIELD = AuditingFieldsKey.AUDIT_SERVICE_INSTANCE_ID
- .getDisplayName(); // "serviceInstanceId";
- private static final String STATUS_FIELD = AuditingFieldsKey.AUDIT_STATUS.getDisplayName(); // "status";
- private static final String ACTION_FIELD = AuditingFieldsKey.AUDIT_ACTION.getDisplayName(); // "action";
- private static final String DISTRIBUTION_ID_FIELD = AuditingFieldsKey.AUDIT_DISTRIBUTION_ID.getDisplayName(); // "distributionId";
- private static Logger log = Logger.getLogger(AuditingDao.class.getName());
- public static final String AUDITING_INDEX = "auditingevents";
-
- @PostConstruct
- private void init() {
- AuditingActionEnum[] values = AuditingActionEnum.values();
- for (AuditingActionEnum value : values) {
- typesToClasses.put(value.getAuditingEsType(), ESTimeBasedEvent.class);
- }
- }
-
- @Override
- public String getIndexPrefix() {
- return AUDITING_INDEX;
- }
-
- public ActionStatus addRecord(Map<AuditingFieldsKey, Object> params, String type) {
-
- // TODO rhalili - remove? check debugEnabled?
- Map<String, Object> displayFields = new HashMap<>();
- StringBuilder sb = new StringBuilder();
- for (Entry<AuditingFieldsKey, Object> entry : params.entrySet()) {
- displayFields.put(entry.getKey().getDisplayName(), entry.getValue());
- sb.append(entry.getKey().getDisplayName()).append(" = ").append(entry.getValue()).append(",");
- }
-
- // Persisiting
- // String type = clazz.getSimpleName().toLowerCase();
- AuditingGenericEvent auditingGenericEvent = new AuditingGenericEvent();
- populateCommonFields(params, auditingGenericEvent);
- auditingGenericEvent.getFields().putAll(displayFields);
-
- log.debug("Auditing: Persisting object of type {}, fields: {}", type, sb.toString());
-
- return write(type, auditingGenericEvent);
- }
-
- public ActionStatus addRecord(AuditingGenericEvent auditEvent, String type) {
-
- log.debug("Auditing: Persisting object of type {}, fields: {}", type, auditEvent.getAction());
-// auditEvent.fillFields();
- return write(type, auditEvent);
- }
-
- public Either<List<ESTimeBasedEvent>, ActionStatus> getListOfDistributionStatuses(String did) {
-
- QueryBuilder componentNameMatch = QueryBuilders.matchQuery(DISTRIBUTION_ID_FIELD, did);
- QueryBuilder componentVersionMatch = QueryBuilders.matchQuery(ACTION_FIELD,
- AuditingActionEnum.DISTRIBUTION_STATUS.getName());
- QueryBuilder remainingElementQueryBuilder = QueryBuilders.boolQuery().must(componentNameMatch)
- .must(componentVersionMatch);
- List<ESTimeBasedEvent> remainingElements = null;
- try {
- remainingElements = customFindEvent(AuditingTypesConstants.DISTRIBUTION_STATUS_EVENT_TYPE,
- remainingElementQueryBuilder, null);
- } catch (Exception e) {
- BeEcompErrorManager.getInstance().logBeDaoSystemError("Get DistributionStatuses List");
- log.debug("failed to get distribution statuses for ", e);
- return Either.right(ActionStatus.GENERAL_ERROR);
- }
- if (remainingElements != null && !remainingElements.isEmpty()) {
- return Either.left(remainingElements);
- } else {
- log.debug("not found distribution statuses for did {}", did);
- remainingElements = new ArrayList<>();
- return Either.left(remainingElements);
- }
-
- }
-
- public Either<List<ESTimeBasedEvent>, ActionStatus> getServiceDistributionStatusesList(String serviceInstanceId) {
-
- List<ESTimeBasedEvent> resList = new ArrayList<>();
- QueryBuilder componentNameMatch = QueryBuilders.matchQuery(SERVICE_INSTANCE_ID_FIELD, serviceInstanceId);
- QueryBuilder componentVersionMatch = QueryBuilders.matchQuery(ACTION_FIELD,
- AuditingActionEnum.DISTRIBUTION_STATE_CHANGE_REQUEST.getName());
- QueryBuilder remainingElementQueryBuilder = QueryBuilders.boolQuery().must(componentNameMatch)
- .must(componentVersionMatch);
- List<ESTimeBasedEvent> remainingElements = null;
- try {
- remainingElements = customFindEvent(AuditingTypesConstants.RESOURCE_ADMIN_EVENT_TYPE,
- remainingElementQueryBuilder, null);
- } catch (Exception e) {
- BeEcompErrorManager.getInstance().logBeDaoSystemError(GET_SERVICE_DISTRIBUTION_STATUSES_LIST);
- log.debug(FAILED_TO_GET_DISTRIBUTION_STATUSES_FOR_ACTION,
- AuditingActionEnum.DISTRIBUTION_STATE_CHANGE_REQUEST.getName(), e);
- return Either.right(ActionStatus.GENERAL_ERROR);
- }
- if (remainingElements != null && !remainingElements.isEmpty()) {
- resList.addAll(remainingElements);
- }
-
- componentVersionMatch = QueryBuilders.matchQuery(ACTION_FIELD,
- AuditingActionEnum.DISTRIBUTION_DEPLOY.getName());
- remainingElementQueryBuilder = QueryBuilders.boolQuery().must(componentNameMatch).must(componentVersionMatch);
- List<ESTimeBasedEvent> dResultElements = null;
- try {
- dResultElements = customFindEvent(AuditingTypesConstants.DISTRIBUTION_DEPLOY_EVENT_TYPE,
- remainingElementQueryBuilder, null);
- } catch (Exception e) {
- BeEcompErrorManager.getInstance().logBeDaoSystemError(GET_SERVICE_DISTRIBUTION_STATUSES_LIST);
- log.debug("failed to get distribution statuses for action {}",
- AuditingActionEnum.DISTRIBUTION_DEPLOY.getName(), e);
- return Either.right(ActionStatus.GENERAL_ERROR);
- }
- if (dResultElements != null && !dResultElements.isEmpty()) {
- resList.addAll(dResultElements);
- }
-
- componentVersionMatch = QueryBuilders.matchQuery(ACTION_FIELD,
- AuditingActionEnum.DISTRIBUTION_NOTIFY.getName());
- remainingElementQueryBuilder = QueryBuilders.boolQuery().must(componentNameMatch).must(componentVersionMatch);
- List<ESTimeBasedEvent> dNotifyElements = null;
- try {
- dNotifyElements = customFindEvent(AuditingTypesConstants.DISTRIBUTION_NOTIFICATION_EVENT_TYPE,
- remainingElementQueryBuilder, null);
- } catch (Exception e) {
- BeEcompErrorManager.getInstance().logBeDaoSystemError(GET_SERVICE_DISTRIBUTION_STATUSES_LIST);
- log.debug("failed to get distribution statuses for action {}",
- AuditingActionEnum.DISTRIBUTION_NOTIFY.getName(), e);
- return Either.right(ActionStatus.GENERAL_ERROR);
- }
- if (remainingElements != null && !remainingElements.isEmpty()) {
- resList.addAll(dNotifyElements);
- }
-
- return Either.left(resList);
-
- }
-
- public Either<List<ESTimeBasedEvent>, ActionStatus> getFilteredResourceAdminAuditingEvents(
- Map<AuditingFieldsKey, Object> filterMap) {
-
- Iterator<Entry<AuditingFieldsKey, Object>> filterItr = filterMap.entrySet().iterator();
- BoolQueryBuilder boolQuery = QueryBuilders.boolQuery();
- while (filterItr.hasNext()) {
- Entry<AuditingFieldsKey, Object> curr = filterItr.next();
- boolQuery = boolQuery.must(QueryBuilders.termQuery(curr.getKey().getDisplayName(), curr.getValue()));
- }
-
- try {
- List<ESTimeBasedEvent> customFindEvent = customFindEvent(
- ResourceAdminEvent.class.getSimpleName().toLowerCase(), boolQuery, null);
- return Either.left(customFindEvent);
- } catch (Exception e) {
- log.debug("Failed to query AuditRecords in es");
- return Either.right(ActionStatus.GENERAL_ERROR);
- }
-
- }
-
- public Either<List<ESTimeBasedEvent>, ActionStatus> getListOfDistributionByAction(String did, String actionType,
- String requestedStatus, Class<? extends AuditingGenericEvent> clazz) {
-
- QueryBuilder distributionIdMatch = QueryBuilders.matchQuery(DISTRIBUTION_ID_FIELD, did);
- QueryBuilder distributionActionMatch = QueryBuilders.matchQuery(ACTION_FIELD, actionType);
- QueryBuilder remainingElementQueryBuilder;
-
- if (requestedStatus != null && !requestedStatus.isEmpty()) {
- QueryBuilder statusMatch = QueryBuilders.matchQuery(STATUS_FIELD, requestedStatus);
- remainingElementQueryBuilder = QueryBuilders.boolQuery().must(distributionIdMatch)
- .must(distributionActionMatch).must(statusMatch);
- } else {
- remainingElementQueryBuilder = QueryBuilders.boolQuery().must(distributionIdMatch)
- .must(distributionActionMatch);
- }
-
- List<ESTimeBasedEvent> remainingElements = null;
- try {
- remainingElements = customFindEvent(clazz.getSimpleName().toLowerCase(), remainingElementQueryBuilder,
- null);
- } catch (Exception e) {
- BeEcompErrorManager.getInstance().logBeDaoSystemError("Get DistributionStatuses List");
- log.debug("failed to get distribution statuses for action {}", actionType, e);
- return Either.right(ActionStatus.GENERAL_ERROR);
- }
-
- return Either.left(remainingElements);
-
- }
-
- private void populateCommonFields(Map<AuditingFieldsKey, Object> params,
- AuditingGenericEvent timeBasedIndexedData) {
- String dateStr = (String) params.get(AuditingFieldsKey.AUDIT_TIMESTAMP);
- if (dateStr != null) {
- timeBasedIndexedData.setTimestamp(dateStr);
- }
- timeBasedIndexedData.setAction((String) params.get(AuditingFieldsKey.AUDIT_ACTION));
- Object statusObj = params.get(AuditingFieldsKey.AUDIT_STATUS);
- // For BC. status was Integer and is String
- if (statusObj != null) {
- timeBasedIndexedData.setStatus(String.valueOf(statusObj));
- } else {
- timeBasedIndexedData.setStatus(null);
- }
- // timeBasedIndexedData.setStatus((String)params.get(AuditingFieldsKey.AUDIT_STATUS));
- timeBasedIndexedData.setDesc((String) params.get(AuditingFieldsKey.AUDIT_DESC));
- timeBasedIndexedData
- .setServiceInstanceId((String) params.get(AuditingFieldsKey.AUDIT_SERVICE_INSTANCE_ID));
- timeBasedIndexedData.setRequestId((String) params.get(AuditingFieldsKey.AUDIT_REQUEST_ID));
- }
-
-}