From 7c20c1aee34fc3d7377619e37844511b6c0f6d42 Mon Sep 17 00:00:00 2001 From: Stephen Kitt Date: Fri, 23 Jun 2017 15:43:27 +0200 Subject: [PATCH] Remove sfc-translator MdsalUtils::put() Replace MdsalUtils::put() with SingleTransactionDataBroker::syncWrite(). MdsalUtils is no longer used at all and can be removed. Change-Id: I7237b60fe63534591991bf4c2e559ab796f30aac Signed-off-by: Stephen Kitt --- .../netvirt/sfc/translator/MdsalUtils.java | 55 ------------------- .../sfc/translator/SfcMdsalHelper.java | 45 ++++++++------- 2 files changed, 26 insertions(+), 74 deletions(-) delete mode 100644 vpnservice/sfc/translator/src/main/java/org/opendaylight/netvirt/sfc/translator/MdsalUtils.java diff --git a/vpnservice/sfc/translator/src/main/java/org/opendaylight/netvirt/sfc/translator/MdsalUtils.java b/vpnservice/sfc/translator/src/main/java/org/opendaylight/netvirt/sfc/translator/MdsalUtils.java deleted file mode 100644 index b19e745ac8..0000000000 --- a/vpnservice/sfc/translator/src/main/java/org/opendaylight/netvirt/sfc/translator/MdsalUtils.java +++ /dev/null @@ -1,55 +0,0 @@ -/* - * Copyright (c) 2016, 2017 Brocade Communications Systems, Inc. and others. All rights reserved. - * - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License v1.0 which accompanies this distribution, - * and is available at http://www.eclipse.org/legal/epl-v10.html - */ - -package org.opendaylight.netvirt.sfc.translator; - -import com.google.common.util.concurrent.CheckedFuture; -import org.opendaylight.controller.md.sal.binding.api.DataBroker; -import org.opendaylight.controller.md.sal.binding.api.WriteTransaction; -import org.opendaylight.controller.md.sal.common.api.data.LogicalDatastoreType; -import org.opendaylight.controller.md.sal.common.api.data.TransactionCommitFailedException; -import org.opendaylight.yangtools.yang.binding.InstanceIdentifier; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -public class MdsalUtils { - private static final Logger LOG = LoggerFactory.getLogger(MdsalUtils.class); - private DataBroker databroker = null; - - /** - * Class constructor setting the data broker. - * - * @param dataBroker the {@link DataBroker} - */ - public MdsalUtils(DataBroker dataBroker) { - this.databroker = dataBroker; - } - - /** - * Executes put as a blocking transaction. - * - * @param logicalDatastoreType {@link LogicalDatastoreType} which should be modified - * @param path {@link InstanceIdentifier} for path to read - * @param the data object type - * @return the result of the request - */ - public boolean put( - final LogicalDatastoreType logicalDatastoreType, final InstanceIdentifier path, D data) { - boolean result = false; - final WriteTransaction transaction = databroker.newWriteOnlyTransaction(); - transaction.put(logicalDatastoreType, path, data, WriteTransaction.CREATE_MISSING_PARENTS); - CheckedFuture future = transaction.submit(); - try { - future.checkedGet(); - result = true; - } catch (TransactionCommitFailedException e) { - LOG.warn("Failed to put {} ", path, e); - } - return result; - } -} diff --git a/vpnservice/sfc/translator/src/main/java/org/opendaylight/netvirt/sfc/translator/SfcMdsalHelper.java b/vpnservice/sfc/translator/src/main/java/org/opendaylight/netvirt/sfc/translator/SfcMdsalHelper.java index 3ca2bdb8eb..053aa0db0c 100644 --- a/vpnservice/sfc/translator/src/main/java/org/opendaylight/netvirt/sfc/translator/SfcMdsalHelper.java +++ b/vpnservice/sfc/translator/src/main/java/org/opendaylight/netvirt/sfc/translator/SfcMdsalHelper.java @@ -29,7 +29,6 @@ import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.cont import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev160218.access.lists.Acl; import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev160218.access.lists.AclKey; import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.Ipv4Address; -import org.opendaylight.yangtools.yang.binding.DataObject; import org.opendaylight.yangtools.yang.binding.InstanceIdentifier; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -49,18 +48,21 @@ public class SfcMdsalHelper { = InstanceIdentifier.create(ServiceFunctionPaths.class); private final DataBroker dataBroker; - private final MdsalUtils mdsalUtils; public SfcMdsalHelper(DataBroker dataBroker) { this.dataBroker = dataBroker; - mdsalUtils = new MdsalUtils(this.dataBroker); } //ACL Flow Classifier data store utility methods public void addAclFlowClassifier(Acl aclFlowClassifier) { InstanceIdentifier aclIid = getAclPath(aclFlowClassifier.getKey()); LOG.info("Write ACL FlowClassifier {} to config data store at {}",aclFlowClassifier, aclIid); - mdsalPutWrapper(LogicalDatastoreType.CONFIGURATION, aclIid, aclFlowClassifier); + try { + SingleTransactionDataBroker.syncWrite(dataBroker, LogicalDatastoreType.CONFIGURATION, aclIid, + aclFlowClassifier); + } catch (TransactionCommitFailedException e) { + LOG.error("Error writing {} to {}", aclFlowClassifier, aclIid, e); + } } public void updateAclFlowClassifier(Acl aclFlowClassifier) { @@ -95,7 +97,11 @@ public class SfcMdsalHelper { public void addServiceFunction(ServiceFunction sf) { InstanceIdentifier sfIid = getSFPath(sf.getKey()); LOG.info("Write Service Function {} to config data store at {}",sf, sfIid); - mdsalPutWrapper(LogicalDatastoreType.CONFIGURATION, sfIid, sf); + try { + SingleTransactionDataBroker.syncWrite(dataBroker, LogicalDatastoreType.CONFIGURATION, sfIid, sf); + } catch (TransactionCommitFailedException e) { + LOG.error("Error writing {} to {}", sf, sfIid, e); + } } public void updateServiceFunction(ServiceFunction sf) { @@ -129,7 +135,11 @@ public class SfcMdsalHelper { public void addServiceFunctionForwarder(ServiceFunctionForwarder sff) { InstanceIdentifier sffIid = getSFFPath(sff.getKey()); LOG.info("Write Service Function Forwarder {} to config data store at {}",sff, sffIid); - mdsalPutWrapper(LogicalDatastoreType.CONFIGURATION, sffIid, sff); + try { + SingleTransactionDataBroker.syncWrite(dataBroker, LogicalDatastoreType.CONFIGURATION, sffIid, sff); + } catch (TransactionCommitFailedException e) { + LOG.error("Error writing {} to {}", sff, sffIid, e); + } } public void deleteServiceFunctionForwarder(ServiceFunctionForwarderKey sffKey) { @@ -145,7 +155,11 @@ public class SfcMdsalHelper { public void addServiceFunctionChain(ServiceFunctionChain sfc) { InstanceIdentifier sfcIid = getSFCPath(sfc.getKey()); LOG.info("Write Service Function Chain {} to config data store at {}",sfc, sfcIid); - mdsalPutWrapper(LogicalDatastoreType.CONFIGURATION, sfcIid, sfc); + try { + SingleTransactionDataBroker.syncWrite(dataBroker, LogicalDatastoreType.CONFIGURATION, sfcIid, sfc); + } catch (TransactionCommitFailedException e) { + LOG.error("Error writing {} to {}", sfc, sfcIid, e); + } } public void deleteServiceFunctionChain(ServiceFunctionChainKey sfcKey) { @@ -161,7 +175,11 @@ public class SfcMdsalHelper { public void addServiceFunctionPath(ServiceFunctionPath sfp) { InstanceIdentifier sfpIid = getSFPPath(sfp.getKey()); LOG.info("Write Service Function Path {} to config data store at {}",sfp, sfpIid); - mdsalPutWrapper(LogicalDatastoreType.CONFIGURATION, sfpIid, sfp); + try { + SingleTransactionDataBroker.syncWrite(dataBroker, LogicalDatastoreType.CONFIGURATION, sfpIid, sfp); + } catch (TransactionCommitFailedException e) { + LOG.error("Error writing {} to {}", sfp, sfpIid, e); + } } public void deleteServiceFunctionPath(ServiceFunctionPathKey sfpKey) { @@ -211,15 +229,4 @@ public class SfcMdsalHelper { } return null; } - - // TODO Clean up the exception handling - @SuppressWarnings("checkstyle:IllegalCatch") - private void mdsalPutWrapper(LogicalDatastoreType dataStore, - InstanceIdentifier iid, D data) { - try { - mdsalUtils.put(dataStore, iid, data); - } catch (Exception e) { - LOG.error("Exception while putting data in data store {} : {}",iid, data, e); - } - } } -- 2.36.6