Merge dev/fluorine work across to master
[unimgr.git] / impl / src / main / java / org / opendaylight / unimgr / command / UniRemoveCommand.java
diff --git a/impl/src/main/java/org/opendaylight/unimgr/command/UniRemoveCommand.java b/impl/src/main/java/org/opendaylight/unimgr/command/UniRemoveCommand.java
deleted file mode 100644 (file)
index 5b0a4fd..0000000
+++ /dev/null
@@ -1,93 +0,0 @@
-/*
- * Copyright (c) 2016 CableLabs 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.unimgr.command;
-
-import java.util.List;
-
-import org.opendaylight.controller.md.sal.binding.api.DataBroker;
-import org.opendaylight.controller.md.sal.binding.api.DataTreeModification;
-import org.opendaylight.controller.md.sal.common.api.data.LogicalDatastoreType;
-import org.opendaylight.unimgr.api.AbstractCommand;
-import org.opendaylight.unimgr.impl.UnimgrMapper;
-import org.opendaylight.unimgr.utils.MdsalUtils;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.OvsdbNodeAugmentation;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.OvsdbNodeRef;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.ovsdb.node.attributes.QosEntries;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.ovsdb.node.attributes.QosEntriesKey;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.ovsdb.node.attributes.Queues;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.ovsdb.node.attributes.QueuesKey;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.unimgr.rev151012.UniAugmentation;
-import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node;
-import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import com.google.common.base.Optional;
-
-public class UniRemoveCommand extends AbstractCommand<Node> {
-
-    private static final Logger LOG = LoggerFactory.getLogger(UniRemoveCommand.class);
-
-    public UniRemoveCommand(final DataBroker dataBroker, final DataTreeModification<Node> removedUniNode) {
-        super(dataBroker, removedUniNode);
-    }
-
-    @Override
-    public void execute() {
-        final Node uniNode = dataObject.getRootNode().getDataBefore();
-        final UniAugmentation uniAugmentation = uniNode.getAugmentation(UniAugmentation.class);
-        final InstanceIdentifier<?> removedUniIid = dataObject.getRootPath().getRootIdentifier()
-                                                                    .firstIdentifierOf(UniAugmentation.class);
-        if (uniAugmentation != null) {
-            final OvsdbNodeRef ovsNodedRef = uniAugmentation.getOvsdbNodeRef();
-            if (ovsNodedRef != null) {
-                final InstanceIdentifier<Node> ovsdbNodeIid = ovsNodedRef.getValue().firstIdentifierOf(Node.class);
-                final Optional<Node> optionalNode = MdsalUtils.readNode(dataBroker,
-                        LogicalDatastoreType.OPERATIONAL,
-                        ovsdbNodeIid);
-                if (optionalNode.isPresent()) {
-                    final Node ovsdbNode = optionalNode.get();
-                    LOG.info("Delete QoS and Queues entries");
-                    List<QosEntries> qosList = ovsdbNode
-                            .getAugmentation(OvsdbNodeAugmentation.class)
-                            .getQosEntries();
-                    QosEntriesKey qosEntryKey = null;
-                    for (final QosEntries qosEntry : qosList) {
-                        qosEntryKey = qosEntry.getKey();
-                        InstanceIdentifier<QosEntries> qosIid =
-                                UnimgrMapper.getOvsdbQoSEntriesIid(ovsdbNode, qosEntryKey);
-                        MdsalUtils.deleteNode(dataBroker, qosIid, LogicalDatastoreType.CONFIGURATION);
-                    }
-                    List<Queues> queuesList = ovsdbNode
-                            .getAugmentation(OvsdbNodeAugmentation.class)
-                            .getQueues();
-                    QueuesKey queuesKey = null;
-                    for (final Queues queue : queuesList) {
-                        queuesKey = queue.getKey();
-                        InstanceIdentifier<Queues> queuesIid = UnimgrMapper.getOvsdbQueuesIid(ovsdbNode, queuesKey);
-                        MdsalUtils.deleteNode(dataBroker, queuesIid, LogicalDatastoreType.CONFIGURATION);
-                    }
-                    LOG.info("Delete bride node");
-                    final InstanceIdentifier<Node> bridgeIid = UnimgrMapper.getOvsdbBridgeNodeIid(ovsdbNode);
-                    MdsalUtils.deleteNode(dataBroker, bridgeIid, LogicalDatastoreType.CONFIGURATION);
-                }
-                final InstanceIdentifier<Node> iidUni = UnimgrMapper.getUniIid(dataBroker,
-                        uniAugmentation.getIpAddress(),
-                        LogicalDatastoreType.OPERATIONAL);
-                if (iidUni != null) {
-                    MdsalUtils.deleteNode(dataBroker, iidUni, LogicalDatastoreType.OPERATIONAL);
-                }
-            } else {
-                LOG.info("Received Uni Augmentation has null ovsdb node ref: {}", removedUniIid);
-            }
-        } else {
-            LOG.info("Received Uni Augmentation is null: {}", removedUniIid);
-        }
-    }
-}