diff --git a/src/bgpls_speaker/Dockerfile b/src/bgpls_speaker/Dockerfile index d8722934d38583c41eea8c0adbad1d22bf184887..d90ebf82b0d7d1949471db51ca0e1dd5c4ed1e80 100644 --- a/src/bgpls_speaker/Dockerfile +++ b/src/bgpls_speaker/Dockerfile @@ -62,8 +62,8 @@ COPY src/bgpls_speaker/service/java/netphony-topology/pom.xml pom.xml WORKDIR /var/teraflow/bgpls/service/java/netphony-topology/ -RUN mvn clean compile -DskipTests -Dmaven.repo.local=$HOME/.m2/es/tid/netphony/network-protocols -RUN mvn package -P bgp-ls-speaker assembly:single -DskipTests +# RUN mvn clean compile -DskipTests -Dmaven.repo.local=$HOME/.m2/es/tid/netphony/network-protocols +# RUN mvn package -P bgp-ls-speaker assembly:single -DskipTests # ENTRYPOINT [ "ls","-R" ] # ------------------------------------------- diff --git a/src/bgpls_speaker/service/java/bgp_ls.jar b/src/bgpls_speaker/service/java/bgp_ls.jar index d858ce37af1efc469db682b03b85d9e9123d764a..c0dc2454b3b977bce716ade9605b438ef8730b65 100644 Binary files a/src/bgpls_speaker/service/java/bgp_ls.jar and b/src/bgpls_speaker/service/java/bgp_ls.jar differ diff --git a/src/bgpls_speaker/service/java/netphony-topology/src/main/java/eu/teraflow/tid/bgp4Peer/grpc/grpcClient.java b/src/bgpls_speaker/service/java/netphony-topology/src/main/java/eu/teraflow/tid/bgp4Peer/grpc/grpcClient.java index 1d360c870b4d93153f21df292f96c1a8ceca46aa..a4720e77c1f226c8c3d97fca5e827d13e3b453df 100644 --- a/src/bgpls_speaker/service/java/netphony-topology/src/main/java/eu/teraflow/tid/bgp4Peer/grpc/grpcClient.java +++ b/src/bgpls_speaker/service/java/netphony-topology/src/main/java/eu/teraflow/tid/bgp4Peer/grpc/grpcClient.java @@ -39,19 +39,21 @@ public class grpcClient { nodeInfo n=null; linkInfo unic=null; List <linkInfo> l = new ArrayList<>(); - if(update.getNode()==null && update.linkCheck()==false){ + List <nodeInfo> nodes = new ArrayList<>(); + if(update.nodeCheck()==false && update.linkCheck()==false){ return; } // Build node for grpc message - if(update.getNode()!=null) { - - n = nodeInfo.newBuilder().setNodeName(update.getNode().getNodeName()). - setIgpID(update.getNode().getRouterID()). - setBgplsID(update.getNode().getLocalBgplsID()). - setAsID(InetAddresses.coerceToInteger(update.getNode().getAs_number())). - setLearntFrom(update.getNode().getLearntFrom()). + if(update.nodeCheck()!=false) { + for(NodeNLRIMsg node : update.getNodeList()){ + n = nodeInfo.newBuilder().setNodeName(node.getNodeName()). + setIgpID(node.getRouterID()). + setBgplsID(node.getLocalBgplsID()). + setAsID(InetAddresses.coerceToInteger(node.getAs_number())). + setLearntFrom(node.getLearntFrom()). buildPartial(); - + nodes.add(n); + } } for(LinkNLRIMsg link : update.getLinkList()) { @@ -103,10 +105,10 @@ public class grpcClient { setRemoteIPv4ID(ipv4R). setLocal(NodeDescriptors.newBuilder(). setAsNumber(link.getLocalDomainID().toString()). - setBgplsID(link.localIGPID())). + setBgplsID(link.getLocalBgplsID())). setRemote(NodeDescriptors.newBuilder(). setAsNumber(link.getRemoteDomainID().toString()). - setBgplsID(link.remoteIGPID())). + setBgplsID(link.getRemoteBgplsID())). setAvailableBw(link.getAvailableBw()). setResidualBw(link.getResidualBw()).setUtilized(link.getUtilizedBw()). setMinLinkDelay(link.getMinDelay()).setMaxLinkDelay(link.getMaxDelay()). @@ -116,18 +118,18 @@ public class grpcClient { l.add(unic); } - if(n==null && l.size()>0) { + if(nodes.size()==0 && l.size()>0) { request=updateRequest.newBuilder(). setNextHop(update.getNextHop().toString()). setAddressFamilyID(Integer.toString(update.getAFI())). setAsPathSegment(Integer.toString(update.getAsPathSegment())). addAllLink(l).build(); - }else if(n!=null&& l.size()==0) { + }else if(nodes.size()>0&& l.size()==0) { request=updateRequest.newBuilder(). setNextHop(update.getNextHop().toString()). setAddressFamilyID(Integer.toString(update.getAFI())). setAsPathSegment(Integer.toString(update.getAsPathSegment())). - addNode(n).build(); + addAllNode(nodes).build(); }else { //Error if node name is null // TODO: handle seng grpc error? @@ -135,7 +137,7 @@ public class grpcClient { setNextHop("-"+update.getNextHop().toString()). setAddressFamilyID(Integer.toString(update.getAFI())). setAsPathSegment(Integer.toString(update.getAsPathSegment())). - addNode(n).addAllLink(l).build(); + addAllNode(nodes).addAllLink(l).build(); } final ManagedChannel channel = ManagedChannelBuilder.forAddress("localhost",2021).usePlaintext().build();