aboutsummaryrefslogtreecommitdiffstats
path: root/src/main/java/org/openecomp/dcae/inventory/daos/DCAEServiceTransactionDAO.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/org/openecomp/dcae/inventory/daos/DCAEServiceTransactionDAO.java')
-rw-r--r--src/main/java/org/openecomp/dcae/inventory/daos/DCAEServiceTransactionDAO.java158
1 files changed, 0 insertions, 158 deletions
diff --git a/src/main/java/org/openecomp/dcae/inventory/daos/DCAEServiceTransactionDAO.java b/src/main/java/org/openecomp/dcae/inventory/daos/DCAEServiceTransactionDAO.java
deleted file mode 100644
index c9d6dc8..0000000
--- a/src/main/java/org/openecomp/dcae/inventory/daos/DCAEServiceTransactionDAO.java
+++ /dev/null
@@ -1,158 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * dcae-inventory
- * ================================================================================
- * 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.dcae.inventory.daos;
-
-import org.openecomp.dcae.inventory.dbthings.models.DCAEServiceComponentObject;
-import org.openecomp.dcae.inventory.dbthings.models.DCAEServiceObject;
-import org.joda.time.DateTime;
-import org.skife.jdbi.v2.sqlobject.CreateSqlObject;
-import org.skife.jdbi.v2.sqlobject.Transaction;
-
-import java.util.ArrayList;
-import java.util.List;
-
-/**
- * This is based-off of this blog post.
- * http://manikandan-k.github.io/2015/05/10/Transactions_in_jdbi.html
- *
- * Created by mhwang on 4/21/16.
- */
-public abstract class DCAEServiceTransactionDAO {
-
- public static class DCAEServiceTransactionContext {
-
- private final String serviceId;
- private final DateTime modified;
- private DCAEServiceObject serviceObjectToInsert;
- private DCAEServiceObject serviceObjectToUpdate;
- private List<DCAEServiceComponentObject> componentObjectsToInsert;
- private List<DCAEServiceComponentObject> componentObjectsToUpdate;
- private List<String> mappingsToInsert;
- private List<String> mappingsToDelete;
-
- public String getServiceId() {
- return serviceId;
- }
-
- public DateTime getModified() {
- return modified;
- }
-
- public DCAEServiceObject getServiceObjectToInsert() {
- return serviceObjectToInsert;
- }
-
- public void setServiceObjectToInsert(DCAEServiceObject serviceObjectToInsert) {
- this.serviceObjectToInsert = serviceObjectToInsert;
- }
-
- public DCAEServiceObject getServiceObjectToUpdate() {
- return serviceObjectToUpdate;
- }
-
- public void setServiceObjectToUpdate(DCAEServiceObject serviceObjectToUpdate) {
- this.serviceObjectToUpdate = serviceObjectToUpdate;
- }
-
- public List<DCAEServiceComponentObject> getComponentObjectsToInsert() {
- return componentObjectsToInsert;
- }
-
- public List<DCAEServiceComponentObject> addComponentObjectToInsert(DCAEServiceComponentObject componentObject) {
- this.componentObjectsToInsert.add(componentObject);
- return this.componentObjectsToInsert;
- }
-
- public List<DCAEServiceComponentObject> getComponentObjectsToUpdate() {
- return componentObjectsToUpdate;
- }
-
- public List<DCAEServiceComponentObject> addComponentObjectToUpdate(DCAEServiceComponentObject componentObject) {
- this.componentObjectsToUpdate.add(componentObject);
- return this.componentObjectsToUpdate;
- }
-
- public List<String> getMappingsToInsert() {
- return mappingsToInsert;
- }
-
- public List<String> addMappingsToInsert(String componentId) {
- this.mappingsToInsert.add(componentId);
- return this.mappingsToInsert;
- }
-
- public List<String> getMappingsToDelete() {
- return mappingsToDelete;
- }
-
- public List<String> addMappingsToDelete(String componentId) {
- this.mappingsToDelete.add(componentId);
- return this.mappingsToDelete;
- }
-
- public DCAEServiceTransactionContext(String serviceId, DateTime modified) {
- this.serviceId = serviceId;
- this.modified = modified;
- this.componentObjectsToInsert = new ArrayList<>();
- this.componentObjectsToUpdate = new ArrayList<>();
- this.mappingsToInsert = new ArrayList<>();
- this.mappingsToDelete = new ArrayList<>();
- }
-
- }
-
- @CreateSqlObject
- abstract public DCAEServicesDAO getServicesDAO();
-
- @CreateSqlObject
- abstract public DCAEServicesComponentsMapsDAO getServicesComponentsMappingDAO();
-
- @CreateSqlObject
- abstract public DCAEServiceComponentsDAO getComponentsDAO();
-
- @Transaction
- public void insert(DCAEServiceTransactionContext context) {
- if (context.getServiceObjectToInsert() != null) {
- this.getServicesDAO().insert(context.getServiceObjectToInsert());
- }
-
- if (context.getServiceObjectToUpdate() != null) {
- this.getServicesDAO().update(context.getServiceObjectToUpdate());
- }
-
- for (DCAEServiceComponentObject sco : context.getComponentObjectsToInsert()) {
- this.getComponentsDAO().insert(sco);
- }
-
- for (DCAEServiceComponentObject sco : context.getComponentObjectsToUpdate()) {
- this.getComponentsDAO().update(sco);
- }
-
- for (String componentId : context.getMappingsToInsert()) {
- this.getServicesComponentsMappingDAO().insert(context.getServiceId(), componentId, context.getModified());
- }
-
- for (String componentId : context.getMappingsToDelete()) {
- this.getServicesComponentsMappingDAO().delete(context.serviceId, componentId);
- }
- }
-
-}