Search in sources :

Example 6 with BridgeRefEntry

use of org.opendaylight.yang.gen.v1.urn.opendaylight.genius.interfacemanager.meta.rev160406.bridge.ref.info.BridgeRefEntry in project genius by opendaylight.

the class InterfaceMetaUtils method deleteBridgeRefEntry.

public static void deleteBridgeRefEntry(BigInteger dpnId, WriteTransaction tx) {
    LOG.debug("Deleting bridge ref entry for dpn: {}", dpnId);
    BridgeRefEntryKey bridgeRefEntryKey = new BridgeRefEntryKey(dpnId);
    InstanceIdentifier<BridgeRefEntry> bridgeEntryId = InterfaceMetaUtils.getBridgeRefEntryIdentifier(bridgeRefEntryKey);
    tx.delete(LogicalDatastoreType.OPERATIONAL, bridgeEntryId);
}
Also used : BridgeRefEntry(org.opendaylight.yang.gen.v1.urn.opendaylight.genius.interfacemanager.meta.rev160406.bridge.ref.info.BridgeRefEntry) BridgeRefEntryKey(org.opendaylight.yang.gen.v1.urn.opendaylight.genius.interfacemanager.meta.rev160406.bridge.ref.info.BridgeRefEntryKey)

Example 7 with BridgeRefEntry

use of org.opendaylight.yang.gen.v1.urn.opendaylight.genius.interfacemanager.meta.rev160406.bridge.ref.info.BridgeRefEntry in project genius by opendaylight.

the class InterfaceMetaUtils method getTerminationPointsOnBridge.

public List<TerminationPoint> getTerminationPointsOnBridge(BigInteger dpnId) {
    BridgeRefEntry bridgeRefEntry = getBridgeRefEntryFromOperDS(dpnId);
    if (bridgeRefEntry == null || bridgeRefEntry.getBridgeReference() == null) {
        LOG.debug("BridgeRefEntry for DPNID {} not found", dpnId);
        return Collections.emptyList();
    }
    InstanceIdentifier<Node> nodeIid = bridgeRefEntry.getBridgeReference().getValue().firstIdentifierOf(Node.class);
    com.google.common.base.Optional<Node> optNode = IfmUtil.read(LogicalDatastoreType.OPERATIONAL, nodeIid, dataBroker);
    if (optNode.isPresent()) {
        return optNode.get().getTerminationPoint();
    }
    return Collections.emptyList();
}
Also used : BridgeRefEntry(org.opendaylight.yang.gen.v1.urn.opendaylight.genius.interfacemanager.meta.rev160406.bridge.ref.info.BridgeRefEntry) Node(org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node)

Example 8 with BridgeRefEntry

use of org.opendaylight.yang.gen.v1.urn.opendaylight.genius.interfacemanager.meta.rev160406.bridge.ref.info.BridgeRefEntry in project genius by opendaylight.

the class InterfaceMetaUtils method getBridgeRefEntryFromOperationalDS.

public BridgeRefEntry getBridgeRefEntryFromOperationalDS(BigInteger dpId) {
    BridgeRefEntryKey bridgeRefEntryKey = new BridgeRefEntryKey(dpId);
    InstanceIdentifier<BridgeRefEntry> bridgeRefEntryIid = InterfaceMetaUtils.getBridgeRefEntryIdentifier(bridgeRefEntryKey);
    BridgeRefEntry bridgeRefEntry = IfmUtil.read(LogicalDatastoreType.OPERATIONAL, bridgeRefEntryIid, dataBroker).orNull();
    if (bridgeRefEntry != null) {
        addBridgeRefEntryToCache(dpId, bridgeRefEntry);
    }
    return bridgeRefEntry;
}
Also used : BridgeRefEntry(org.opendaylight.yang.gen.v1.urn.opendaylight.genius.interfacemanager.meta.rev160406.bridge.ref.info.BridgeRefEntry) BridgeRefEntryKey(org.opendaylight.yang.gen.v1.urn.opendaylight.genius.interfacemanager.meta.rev160406.bridge.ref.info.BridgeRefEntryKey)

Example 9 with BridgeRefEntry

use of org.opendaylight.yang.gen.v1.urn.opendaylight.genius.interfacemanager.meta.rev160406.bridge.ref.info.BridgeRefEntry in project genius by opendaylight.

the class InterfaceMetaUtils method getBridgeRefEntryFromOperDS.

public BridgeRefEntry getBridgeRefEntryFromOperDS(BigInteger dpId) {
    BridgeRefEntry bridgeRefEntry = getBridgeRefEntryFromCache(dpId);
    if (bridgeRefEntry != null) {
        return bridgeRefEntry;
    }
    BridgeRefEntryKey bridgeRefEntryKey = new BridgeRefEntryKey(dpId);
    InstanceIdentifier<BridgeRefEntry> bridgeRefEntryIid = InterfaceMetaUtils.getBridgeRefEntryIdentifier(bridgeRefEntryKey);
    bridgeRefEntry = IfmUtil.read(LogicalDatastoreType.OPERATIONAL, bridgeRefEntryIid, dataBroker).orNull();
    if (bridgeRefEntry != null) {
        addBridgeRefEntryToCache(dpId, bridgeRefEntry);
    }
    return bridgeRefEntry;
}
Also used : BridgeRefEntry(org.opendaylight.yang.gen.v1.urn.opendaylight.genius.interfacemanager.meta.rev160406.bridge.ref.info.BridgeRefEntry) BridgeRefEntryKey(org.opendaylight.yang.gen.v1.urn.opendaylight.genius.interfacemanager.meta.rev160406.bridge.ref.info.BridgeRefEntryKey)

Example 10 with BridgeRefEntry

use of org.opendaylight.yang.gen.v1.urn.opendaylight.genius.interfacemanager.meta.rev160406.bridge.ref.info.BridgeRefEntry in project netvirt by opendaylight.

the class TransportZoneNotificationUtil method getPortsNode.

@SuppressWarnings("unchecked")
private Optional<Node> getPortsNode(BigInteger dpnId, ReadTransaction tx) throws ReadFailedException {
    InstanceIdentifier<BridgeRefEntry> bridgeRefInfoPath = InstanceIdentifier.create(BridgeRefInfo.class).child(BridgeRefEntry.class, new BridgeRefEntryKey(dpnId));
    // FIXME: Read this through a cache
    Optional<BridgeRefEntry> optionalBridgeRefEntry = tx.read(LogicalDatastoreType.OPERATIONAL, bridgeRefInfoPath).checkedGet();
    if (!optionalBridgeRefEntry.isPresent()) {
        LOG.error("no bridge ref entry found for dpnId {}", dpnId);
        return Optional.absent();
    }
    InstanceIdentifier<Node> nodeId = optionalBridgeRefEntry.get().getBridgeReference().getValue().firstIdentifierOf(Node.class);
    // FIXME: Read this through a cache
    Optional<Node> optionalNode = tx.read(LogicalDatastoreType.OPERATIONAL, nodeId).checkedGet();
    if (!optionalNode.isPresent()) {
        LOG.error("missing node for dpnId {}", dpnId);
    }
    return optionalNode;
}
Also used : BridgeRefInfo(org.opendaylight.yang.gen.v1.urn.opendaylight.genius.interfacemanager.meta.rev160406.BridgeRefInfo) BridgeRefEntry(org.opendaylight.yang.gen.v1.urn.opendaylight.genius.interfacemanager.meta.rev160406.bridge.ref.info.BridgeRefEntry) Node(org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node) BridgeRefEntryKey(org.opendaylight.yang.gen.v1.urn.opendaylight.genius.interfacemanager.meta.rev160406.bridge.ref.info.BridgeRefEntryKey)

Aggregations

BridgeRefEntry (org.opendaylight.yang.gen.v1.urn.opendaylight.genius.interfacemanager.meta.rev160406.bridge.ref.info.BridgeRefEntry)13 BridgeRefEntryKey (org.opendaylight.yang.gen.v1.urn.opendaylight.genius.interfacemanager.meta.rev160406.bridge.ref.info.BridgeRefEntryKey)10 Node (org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node)4 BigInteger (java.math.BigInteger)3 BridgeRefInfo (org.opendaylight.yang.gen.v1.urn.opendaylight.genius.interfacemanager.meta.rev160406.BridgeRefInfo)2 BridgeEntry (org.opendaylight.yang.gen.v1.urn.opendaylight.genius.interfacemanager.meta.rev160406.bridge._interface.info.BridgeEntry)2 ParentRefs (org.opendaylight.yang.gen.v1.urn.opendaylight.genius.interfacemanager.rev160406.ParentRefs)2 OvsdbBridgeRef (org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.OvsdbBridgeRef)2 TerminationPoint (org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.node.TerminationPoint)2 Collections (java.util.Collections)1 ExecutionException (java.util.concurrent.ExecutionException)1 Nullable (javax.annotation.Nullable)1 Ignore (org.junit.Ignore)1 Test (org.junit.Test)1 ExpectedTerminationPoint (org.opendaylight.genius.interfacemanager.test.xtend.ExpectedTerminationPoint)1 AssertDataObjects.assertEqualBeans (org.opendaylight.mdsal.binding.testutils.AssertDataObjects.assertEqualBeans)1 Tunnel (org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.iana._if.type.rev140508.Tunnel)1 Interface (org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.interfaces.rev140508.interfaces.state.Interface)1 FlowCapableNode (org.opendaylight.yang.gen.v1.urn.opendaylight.flow.inventory.rev130819.FlowCapableNode)1 BridgeEntryKey (org.opendaylight.yang.gen.v1.urn.opendaylight.genius.interfacemanager.meta.rev160406.bridge._interface.info.BridgeEntryKey)1