X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=networkmodel%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Ftransportpce%2Fnetworkmodel%2FNetworkUtilsImpl.java;h=1d799ada4ff093e42cb4ffa9b6176a7d194fce8f;hb=refs%2Fchanges%2F46%2F100646%2F27;hp=afadd0ff57513691d919722e7fc191729c0f32ab;hpb=0779ad5796bb645690874959c9a891c42e2f7175;p=transportpce.git
diff --git a/networkmodel/src/main/java/org/opendaylight/transportpce/networkmodel/NetworkUtilsImpl.java b/networkmodel/src/main/java/org/opendaylight/transportpce/networkmodel/NetworkUtilsImpl.java
index afadd0ff5..1d799ada4 100644
--- a/networkmodel/src/main/java/org/opendaylight/transportpce/networkmodel/NetworkUtilsImpl.java
+++ b/networkmodel/src/main/java/org/opendaylight/transportpce/networkmodel/NetworkUtilsImpl.java
@@ -7,15 +7,14 @@
*/
package org.opendaylight.transportpce.networkmodel;
-import com.google.common.base.Optional;
import com.google.common.util.concurrent.ListenableFuture;
+import java.util.Optional;
import java.util.concurrent.ExecutionException;
-import org.opendaylight.controller.md.sal.binding.api.DataBroker;
-import org.opendaylight.controller.md.sal.binding.api.ReadOnlyTransaction;
-import org.opendaylight.controller.md.sal.binding.api.WriteTransaction;
-import org.opendaylight.controller.md.sal.common.api.data.LogicalDatastoreType;
+import org.opendaylight.mdsal.binding.api.DataBroker;
+import org.opendaylight.mdsal.binding.api.ReadTransaction;
+import org.opendaylight.mdsal.binding.api.WriteTransaction;
+import org.opendaylight.mdsal.common.api.LogicalDatastoreType;
import org.opendaylight.transportpce.common.NetworkUtils;
-import org.opendaylight.transportpce.networkmodel.util.OpenRoadmTopology;
import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.networkutils.rev170818.DeleteLinkInput;
import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.networkutils.rev170818.DeleteLinkOutput;
import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.networkutils.rev170818.DeleteLinkOutputBuilder;
@@ -29,13 +28,14 @@ import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.networkut
import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.networkutils.rev170818.InitXpdrRdmLinksOutput;
import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.networkutils.rev170818.InitXpdrRdmLinksOutputBuilder;
import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.networkutils.rev170818.TransportpceNetworkutilsService;
-import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.rev150608.Network;
-import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.rev150608.NetworkId;
-import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.rev150608.NetworkKey;
-import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.topology.rev150608.LinkId;
-import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.topology.rev150608.Network1;
-import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.topology.rev150608.network.Link;
-import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.topology.rev150608.network.LinkKey;
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.rev180226.NetworkId;
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.rev180226.Networks;
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.rev180226.networks.Network;
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.rev180226.networks.NetworkKey;
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.topology.rev180226.LinkId;
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.topology.rev180226.Network1;
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.topology.rev180226.networks.network.Link;
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.topology.rev180226.networks.network.LinkKey;
import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
import org.opendaylight.yangtools.yang.common.RpcResult;
import org.opendaylight.yangtools.yang.common.RpcResultBuilder;
@@ -46,11 +46,9 @@ public class NetworkUtilsImpl implements TransportpceNetworkutilsService {
private static final Logger LOG = LoggerFactory.getLogger(NetworkUtilsImpl.class);
private final DataBroker dataBroker;
- private final OpenRoadmTopology openRoadmTopology;
- public NetworkUtilsImpl(DataBroker dataBroker, OpenRoadmTopology openRoadmTopology) {
+ public NetworkUtilsImpl(DataBroker dataBroker) {
this.dataBroker = dataBroker;
- this.openRoadmTopology = openRoadmTopology;
}
@Override
@@ -58,39 +56,37 @@ public class NetworkUtilsImpl implements TransportpceNetworkutilsService {
LinkId linkId = new LinkId(input.getLinkId());
// Building link instance identifier
- InstanceIdentifier.InstanceIdentifierBuilder linkIID = InstanceIdentifier.builder(Network.class,
- new NetworkKey(new NetworkId(NetworkUtils.OVERLAY_NETWORK_ID)))
- .augmentation(Network1.class).child(Link.class, new LinkKey(linkId));
+ InstanceIdentifier.InstanceIdentifierBuilder linkIID = InstanceIdentifier.builder(Networks.class)
+ .child(Network.class, new NetworkKey(new NetworkId(NetworkUtils.OVERLAY_NETWORK_ID)))
+ .augmentation(Network1.class).child(Link.class, new LinkKey(linkId));
+
//Check if link exists
try {
- ReadOnlyTransaction readOnlyTransaction = dataBroker.newReadOnlyTransaction();
+ ReadTransaction readOnlyTransaction = dataBroker.newReadOnlyTransaction();
Optional linkOptional = readOnlyTransaction.read(LogicalDatastoreType.CONFIGURATION, linkIID.build())
.get();
if (!linkOptional.isPresent()) {
LOG.info("Link not present");
return RpcResultBuilder
- .success(new DeleteLinkOutputBuilder().setResult(
- "Fail"))
+ .success(new DeleteLinkOutputBuilder().setResult("Fail").build())
.buildFuture();
}
} catch (ExecutionException | InterruptedException e) {
LOG.error("readMdSal: Error reading link {}", input.getLinkId());
return RpcResultBuilder
- .success(new DeleteLinkOutputBuilder().setResult(
- "Fail"))
+ .success(new DeleteLinkOutputBuilder().setResult("Fail").build())
.buildFuture();
}
WriteTransaction writeTransaction = dataBroker.newWriteOnlyTransaction();
writeTransaction.delete(LogicalDatastoreType.CONFIGURATION, linkIID.build());
try {
- writeTransaction.submit().get();
+ writeTransaction.commit().get();
LOG.info("Link with linkId: {} deleted from {} layer.",
input.getLinkId(), NetworkUtils.OVERLAY_NETWORK_ID);
return RpcResultBuilder
- .success(new DeleteLinkOutputBuilder().setResult(
- "Link {} deleted successfully"))
+ .success(new DeleteLinkOutputBuilder().setResult("Link {} deleted successfully").build())
.buildFuture();
} catch (InterruptedException | ExecutionException e) {
return RpcResultBuilder.failed().buildFuture();
@@ -99,12 +95,12 @@ public class NetworkUtilsImpl implements TransportpceNetworkutilsService {
@Override
public ListenableFuture> initRoadmNodes(InitRoadmNodesInput input) {
- boolean createRdmLinks = OrdLink.createRdm2RdmLinks(input,
- this.openRoadmTopology,this.dataBroker);
+ boolean createRdmLinks = OrdLink.createRdm2RdmLinks(input, this.dataBroker);
if (createRdmLinks) {
return RpcResultBuilder
- .success(new InitRoadmNodesOutputBuilder().setResult(
- "Unidirectional Roadm-to-Roadm Link created successfully"))
+ .success(new InitRoadmNodesOutputBuilder()
+ .setResult("Unidirectional Roadm-to-Roadm Link created successfully")
+ .build())
.buildFuture();
} else {
return RpcResultBuilder.failed().buildFuture();
@@ -114,26 +110,32 @@ public class NetworkUtilsImpl implements TransportpceNetworkutilsService {
@Override
public ListenableFuture> initXpdrRdmLinks(InitXpdrRdmLinksInput input) {
// Assigns user provided input in init-network-view RPC to nodeId
- boolean createXpdrRdmLinks = Rdm2XpdrLink.createXpdrRdmLinks(input.getLinksInput(),
- this.openRoadmTopology,this.dataBroker);
+ LOG.info("Xpdr to Roadm links rpc called");
+ boolean createXpdrRdmLinks = Rdm2XpdrLink.createXpdrRdmLinks(input.getLinksInput(), this.dataBroker);
if (createXpdrRdmLinks) {
return RpcResultBuilder
- .success(new InitXpdrRdmLinksOutputBuilder().setResult("Xponder Roadm Link created successfully"))
+ .success(new InitXpdrRdmLinksOutputBuilder()
+ .setResult("Xponder Roadm Link created successfully")
+ .build())
.buildFuture();
} else {
+ LOG.error("init-xpdr-rdm-links rpc failed due to a bad input parameter");
return RpcResultBuilder.failed().buildFuture();
}
}
@Override
public ListenableFuture> initRdmXpdrLinks(InitRdmXpdrLinksInput input) {
- boolean createRdmXpdrLinks = Rdm2XpdrLink.createRdmXpdrLinks(input.getLinksInput(),
- this.openRoadmTopology,this.dataBroker);
+ LOG.info("Roadm to Xpdr links rpc called");
+ boolean createRdmXpdrLinks = Rdm2XpdrLink.createRdmXpdrLinks(input.getLinksInput(), this.dataBroker);
if (createRdmXpdrLinks) {
return RpcResultBuilder
- .success(new InitRdmXpdrLinksOutputBuilder().setResult("Roadm Xponder links created successfully"))
+ .success(new InitRdmXpdrLinksOutputBuilder()
+ .setResult("Roadm Xponder links created successfully")
+ .build())
.buildFuture();
} else {
+ LOG.error("init-rdm-xpdr-links rpc failed due to a bad input parameter");
return RpcResultBuilder.failed().buildFuture();
}
}