diff options
Diffstat (limited to 'catalog-model/src/main/java/org/openecomp/sdc/be/model/operations/impl/ConsumerOperation.java')
-rw-r--r-- | catalog-model/src/main/java/org/openecomp/sdc/be/model/operations/impl/ConsumerOperation.java | 248 |
1 files changed, 123 insertions, 125 deletions
diff --git a/catalog-model/src/main/java/org/openecomp/sdc/be/model/operations/impl/ConsumerOperation.java b/catalog-model/src/main/java/org/openecomp/sdc/be/model/operations/impl/ConsumerOperation.java index 198ad99ecb..c173b59020 100644 --- a/catalog-model/src/main/java/org/openecomp/sdc/be/model/operations/impl/ConsumerOperation.java +++ b/catalog-model/src/main/java/org/openecomp/sdc/be/model/operations/impl/ConsumerOperation.java @@ -20,9 +20,7 @@ package org.openecomp.sdc.be.model.operations.impl; -import java.util.Collections; -import java.util.List; - +import fj.data.Either; import org.openecomp.sdc.be.dao.neo4j.GraphPropertiesDictionary; import org.openecomp.sdc.be.dao.titan.TitanGenericDao; import org.openecomp.sdc.be.dao.titan.TitanOperationStatus; @@ -30,134 +28,134 @@ import org.openecomp.sdc.be.datatypes.enums.NodeTypeEnum; import org.openecomp.sdc.be.model.operations.api.IConsumerOperation; import org.openecomp.sdc.be.model.operations.api.StorageOperationStatus; import org.openecomp.sdc.be.resources.data.ConsumerData; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; +import org.openecomp.sdc.common.log.wrappers.Logger; import org.springframework.beans.factory.annotation.Qualifier; import org.springframework.stereotype.Component; -import fj.data.Either; +import java.util.Collections; +import java.util.List; @Component("consumer-operation") public class ConsumerOperation implements IConsumerOperation { - private TitanGenericDao titanGenericDao; - - private static Logger log = LoggerFactory.getLogger(ConsumerOperation.class.getName()); - - public ConsumerOperation(@Qualifier("titan-generic-dao") TitanGenericDao titanGenericDao) { - this.titanGenericDao = titanGenericDao; - } - - @Override - public Either<ConsumerData, StorageOperationStatus> getCredentials(String consumerName) { - Either<ConsumerData, StorageOperationStatus> result = null; - log.debug("retriving Credentials for: {}", consumerName); - Either<ConsumerData, TitanOperationStatus> getNode = titanGenericDao.getNode(GraphPropertiesDictionary.CONSUMER_NAME.getProperty(), consumerName, ConsumerData.class); - if (getNode.isRight()) { - TitanOperationStatus status = getNode.right().value(); - log.error("Error returned after get Consumer Data node {}. status returned is {}", consumerName, status); - result = Either.right(DaoStatusConverter.convertTitanStatusToStorageStatus(status)); - return result; - } - ConsumerData consumerData = getNode.left().value(); - return Either.left(consumerData); - } - - @Override - public Either<List<ConsumerData>, StorageOperationStatus> getAll() { - log.debug("retrieving all consumers"); - return titanGenericDao.getByCriteria(NodeTypeEnum.ConsumerCredentials, Collections.emptyMap(), ConsumerData.class) - .right().map(DaoStatusConverter::convertTitanStatusToStorageStatus); - } - - @Override - public Either<ConsumerData, StorageOperationStatus> createCredentials(ConsumerData consumerData) { - return createCredentials(consumerData, false); - } - - @Override - public Either<ConsumerData, StorageOperationStatus> createCredentials(ConsumerData consumerData, boolean inTransaction) { - Either<ConsumerData, StorageOperationStatus> result = null; - try { - log.debug("creating Credentials for: {}", consumerData.getUniqueId()); - Either<ConsumerData, TitanOperationStatus> createNode = titanGenericDao.createNode(consumerData, ConsumerData.class); - if (createNode.isRight()) { - TitanOperationStatus status = createNode.right().value(); - log.error("Error returned after creating Consumer Data node {}. status returned is {}", consumerData.getUniqueId(), status); - result = Either.right(DaoStatusConverter.convertTitanStatusToStorageStatus(status)); - return result; - } - ConsumerData createdConsumerData = createNode.left().value(); - result = Either.left(createdConsumerData); - return result; - } finally { - handleTransaction(inTransaction, result); - } - } - - @Override - public Either<ConsumerData, StorageOperationStatus> deleteCredentials(String consumerName) { - return deleteCredentials(consumerName, false); - } - - @Override - public Either<ConsumerData, StorageOperationStatus> deleteCredentials(String consumerName, boolean inTransaction) { - Either<ConsumerData, StorageOperationStatus> result = null; - try { - log.debug("delete Credentials for: {}", consumerName); - Either<ConsumerData, TitanOperationStatus> deleteNode = titanGenericDao.deleteNode(GraphPropertiesDictionary.CONSUMER_NAME.getProperty(), consumerName, ConsumerData.class); - if (deleteNode.isRight()) { - TitanOperationStatus status = deleteNode.right().value(); - log.error("Error returned after delete Consumer Data node {}. status returned is {}", consumerName, status); - result = Either.right(DaoStatusConverter.convertTitanStatusToStorageStatus(status)); - return result; - } - - ConsumerData deletedConsumerData = deleteNode.left().value(); - result = Either.left(deletedConsumerData); - return result; - } finally { - handleTransaction(inTransaction, result); - } - - } - - @Override - public Either<ConsumerData, StorageOperationStatus> updateCredentials(ConsumerData consumerData) { - return updateCredentials(consumerData, false); - } - - @Override - public Either<ConsumerData, StorageOperationStatus> updateCredentials(ConsumerData consumerData, boolean inTransaction) { - - Either<ConsumerData, StorageOperationStatus> result = null; - try { - log.debug("update Credentials for: {}", consumerData.getUniqueId()); - Either<ConsumerData, TitanOperationStatus> updateNode = titanGenericDao.updateNode(consumerData, ConsumerData.class); - if (updateNode.isRight()) { - TitanOperationStatus status = updateNode.right().value(); - log.error("Error returned after delete Consumer Data node {}. status returned is {}", consumerData.getUniqueId(), status); - result = Either.right(DaoStatusConverter.convertTitanStatusToStorageStatus(status)); - return result; - } - ConsumerData updatedConsumerData = updateNode.left().value(); - result = Either.left(updatedConsumerData); - return result; - } finally { - handleTransaction(inTransaction, result); - } - } - - private void handleTransaction(boolean inTransaction, Either<ConsumerData, StorageOperationStatus> result) { - if (false == inTransaction) { - if (result == null || result.isRight()) { - log.error("Going to execute rollback on graph."); - titanGenericDao.rollback(); - } else { - log.debug("Going to execute commit on graph."); - titanGenericDao.commit(); - } - } - } + private TitanGenericDao titanGenericDao; + + private static final Logger log = Logger.getLogger(ConsumerOperation.class.getName()); + + public ConsumerOperation(@Qualifier("titan-generic-dao") TitanGenericDao titanGenericDao) { + this.titanGenericDao = titanGenericDao; + } + + @Override + public Either<ConsumerData, StorageOperationStatus> getCredentials(String consumerName) { + Either<ConsumerData, StorageOperationStatus> result = null; + log.debug("retriving Credentials for: {}", consumerName); + Either<ConsumerData, TitanOperationStatus> getNode = titanGenericDao.getNode(GraphPropertiesDictionary.CONSUMER_NAME.getProperty(), consumerName, ConsumerData.class); + if (getNode.isRight()) { + TitanOperationStatus status = getNode.right().value(); + log.error("Error returned after get Consumer Data node {}. status returned is {}", consumerName, status); + result = Either.right(DaoStatusConverter.convertTitanStatusToStorageStatus(status)); + return result; + } + ConsumerData consumerData = getNode.left().value(); + return Either.left(consumerData); + } + + @Override + public Either<List<ConsumerData>, StorageOperationStatus> getAll() { + log.debug("retrieving all consumers"); + return titanGenericDao.getByCriteria(NodeTypeEnum.ConsumerCredentials, Collections.emptyMap(), ConsumerData.class) + .right().map(DaoStatusConverter::convertTitanStatusToStorageStatus); + } + + @Override + public Either<ConsumerData, StorageOperationStatus> createCredentials(ConsumerData consumerData) { + return createCredentials(consumerData, false); + } + + @Override + public Either<ConsumerData, StorageOperationStatus> createCredentials(ConsumerData consumerData, boolean inTransaction) { + Either<ConsumerData, StorageOperationStatus> result = null; + try { + log.debug("creating Credentials for: {}", consumerData.getUniqueId()); + Either<ConsumerData, TitanOperationStatus> createNode = titanGenericDao.createNode(consumerData, ConsumerData.class); + if (createNode.isRight()) { + TitanOperationStatus status = createNode.right().value(); + log.error("Error returned after creating Consumer Data node {}. status returned is {}", consumerData.getUniqueId(), status); + result = Either.right(DaoStatusConverter.convertTitanStatusToStorageStatus(status)); + return result; + } + ConsumerData createdConsumerData = createNode.left().value(); + result = Either.left(createdConsumerData); + return result; + } finally { + handleTransaction(inTransaction, result); + } + } + + @Override + public Either<ConsumerData, StorageOperationStatus> deleteCredentials(String consumerName) { + return deleteCredentials(consumerName, false); + } + + @Override + public Either<ConsumerData, StorageOperationStatus> deleteCredentials(String consumerName, boolean inTransaction) { + Either<ConsumerData, StorageOperationStatus> result = null; + try { + log.debug("delete Credentials for: {}", consumerName); + Either<ConsumerData, TitanOperationStatus> deleteNode = titanGenericDao.deleteNode(GraphPropertiesDictionary.CONSUMER_NAME.getProperty(), consumerName, ConsumerData.class); + if (deleteNode.isRight()) { + TitanOperationStatus status = deleteNode.right().value(); + log.error("Error returned after delete Consumer Data node {}. status returned is {}", consumerName, status); + result = Either.right(DaoStatusConverter.convertTitanStatusToStorageStatus(status)); + return result; + } + + ConsumerData deletedConsumerData = deleteNode.left().value(); + result = Either.left(deletedConsumerData); + return result; + } finally { + handleTransaction(inTransaction, result); + } + + } + + @Override + public Either<ConsumerData, StorageOperationStatus> updateCredentials(ConsumerData consumerData) { + return updateCredentials(consumerData, false); + } + + @Override + public Either<ConsumerData, StorageOperationStatus> updateCredentials(ConsumerData consumerData, boolean inTransaction) { + + Either<ConsumerData, StorageOperationStatus> result = null; + try { + log.debug("update Credentials for: {}", consumerData.getUniqueId()); + Either<ConsumerData, TitanOperationStatus> updateNode = titanGenericDao.updateNode(consumerData, ConsumerData.class); + if (updateNode.isRight()) { + TitanOperationStatus status = updateNode.right().value(); + log.error("Error returned after delete Consumer Data node {}. status returned is {}", consumerData.getUniqueId(), status); + result = Either.right(DaoStatusConverter.convertTitanStatusToStorageStatus(status)); + return result; + } + ConsumerData updatedConsumerData = updateNode.left().value(); + result = Either.left(updatedConsumerData); + return result; + } finally { + handleTransaction(inTransaction, result); + } + } + + private void handleTransaction(boolean inTransaction, Either<ConsumerData, StorageOperationStatus> result) { + if (!inTransaction) { + if (result == null || result.isRight()) { + log.error("Going to execute rollback on graph."); + titanGenericDao.rollback(); + } else { + log.debug("Going to execute commit on graph."); + titanGenericDao.commit(); + } + } + } } |