private void createLogicLink(FabricId fabricid, NodeId routeId, NodeId swId, WriteTransaction trans, TpId tpid1, TpId tpid2, LinkId lid) { final LinkId linkid = lid == null ? new LinkId(UUID.randomUUID().toString()) : lid; LinkBuilder linkBuilder = new LinkBuilder(); linkBuilder.setLinkId(linkid); linkBuilder.setKey(new LinkKey(linkid)); SourceBuilder srcBuilder = new SourceBuilder(); srcBuilder.setSourceNode(routeId); srcBuilder.setSourceTp(tpid1); linkBuilder.setSource(srcBuilder.build()); DestinationBuilder destBuilder = new DestinationBuilder(); destBuilder.setDestNode(swId); destBuilder.setDestTp(tpid2); linkBuilder.setDestination(destBuilder.build()); InstanceIdentifier<Link> linkIId = MdSalUtils.createLinkIId(fabricid, linkid); trans.put(LogicalDatastoreType.OPERATIONAL,linkIId, linkBuilder.build()); }
final LinkBuilder linkBuilder = new LinkBuilder(); linkBuilder.setKey(link.getKey()); linkBuilder.setLinkId(link.getLinkId()); linkBuilder.setDestination(link.getDestination()); linkBuilder.setSource(link.getSource());
public static List<Link> createLinks(NodeId srcNId, TpId srcTpId, NodeId dstNId, TpId dstTpId) { List<Link> links = new ArrayList(); LinkBuilder srcdst = new LinkBuilder()// .setSource(new SourceBuilder()// .setSourceNode(srcNId)// .setSourceTp(srcTpId).build())// .setDestination(new DestinationBuilder()// .setDestNode(dstNId).setDestTp(dstTpId).build())// .setLinkId(new LinkId(srcTpId.getValue() + "/" + dstTpId.getValue())); srcdst.setKey(new LinkKey(srcdst.getLinkId())); LinkBuilder dstsrc = new LinkBuilder()// .setSource(new SourceBuilder()// .setSourceNode(dstNId)// .setSourceTp(dstTpId).build())// .setDestination(new DestinationBuilder()// .setDestNode(srcNId).setDestTp(srcTpId).build())// .setLinkId(new LinkId(dstTpId.getValue() + "/" + srcTpId.getValue())); dstsrc.setKey(new LinkKey(dstsrc.getLinkId())); links.add(dstsrc.build()); links.add(srcdst.build()); return links; }
@Override public Future<RpcResult<AddFabricLinkOutput>> addFabricLink(AddFabricLinkInput input) { FabricId fabric1 = input.getSourceFabric(); FabricId fabric2 = input.getDestFabric(); TpId tp1 = input.getSourceFabricPort(); TpId tp2 = input.getDestFabricPort(); final LinkId lnkId = new LinkId(UUID.randomUUID().toString()); InstanceIdentifier<Link> path = MdSalUtils.createInterFabricLinkIId(lnkId); Link data = new LinkBuilder() .setSource( new SourceBuilder().setSourceNode(fabric1).setSourceTp(tp1).build()) .setDestination( new DestinationBuilder().setDestNode(fabric2).setDestTp(tp2).build()) .setLinkId(lnkId) .build(); WriteTransaction wt = dataBroker.newWriteOnlyTransaction(); wt.put(LogicalDatastoreType.CONFIGURATION, path, data); wt.put(LogicalDatastoreType.OPERATIONAL, path, data); CheckedFuture<Void,TransactionCommitFailedException> future = wt.submit(); return Futures.transform(future, new AsyncFunction<Void, RpcResult<AddFabricLinkOutput>>() { @Override public ListenableFuture<RpcResult<AddFabricLinkOutput>> apply(Void submitResult) throws Exception { RpcResultBuilder<AddFabricLinkOutput> resultBuilder = RpcResultBuilder.<AddFabricLinkOutput>success(); AddFabricLinkOutput output = new AddFabricLinkOutputBuilder().setLinkId(lnkId).build(); return Futures.immediateFuture(resultBuilder.withResult(output).build()); } }); }
lb.setLinkId(buildLinkId(base, l)); lb.addAugmentation(Link1.class, new Link1Builder().setIgpLinkAttributes(ilab.build()).build());
public static Link createBasicVcLink(Node ldNode, Node netNode) { LinkId linkId = new LinkId(VC_LINK_NAME); LinkKey linkKey = new LinkKey(linkId); LinkBuilder linkBuilder = new LinkBuilder(); linkBuilder.setLinkId(linkId); linkBuilder.setKey(linkKey); DestinationBuilder destBuilder = new DestinationBuilder(); NodeId ldNodeId = ldNode.getNodeId(); destBuilder.setDestNode(ldNodeId); TpId sourceTpId = new TpId(VC_NODE_TP_WEST); destBuilder.setDestTp(sourceTpId); linkBuilder.setDestination(destBuilder.build()); SourceBuilder sourceBuilder = new SourceBuilder(); NodeId netNodeId = netNode.getNodeId(); sourceBuilder.setSourceNode(netNodeId); TpId destTpId = new TpId(VC_NODE_TP_EAST); sourceBuilder.setSourceTp(destTpId); linkBuilder.setSource(sourceBuilder.build()); return linkBuilder.build(); }
public static Link toTopologyLink( final org.opendaylight.yang.gen.v1.urn.opendaylight.flow.topology.discovery.rev130819.Link link) { return new LinkBuilder() .setSource(new SourceBuilder() .setSourceNode(toTopologyNodeId(link.getSource())) .setSourceTp(toTerminationPointId(link.getSource())) .build()) .setDestination(new DestinationBuilder() .setDestNode(toTopologyNodeId(link.getDestination())) .setDestTp(toTerminationPointId(link.getDestination())) .build()) .setLinkId(new LinkId(getNodeConnectorKey(link.getSource()).getId())) .build(); } }
/** * Create a new inter-switch link in the network topology. * * @param port An {@link OfPort} instance that specifies the source * port of the link. * @param peer The MD-SAL port identifier that specifies the * destination port of the link. * @return A link in the network topology. */ public static Link newLink(OfPort port, String peer) { String pid = port.getPortIdentifier(); String srcNode = port.getNodeIdentifier(); String dstNode = OfMockUtils.getNodeIdentifier(peer); SourceBuilder sb = new SourceBuilder(). setSourceNode(new NodeId(srcNode)). setSourceTp(new TpId(pid)); DestinationBuilder db = new DestinationBuilder(). setDestNode(new NodeId(dstNode)). setDestTp(new TpId(peer)); return new LinkBuilder(). setLinkId(new LinkId(pid)). setSource(sb.build()). setDestination(db.build()). build(); }