[ONOS-5267] Rewrite LISP bootstrap class to use UDP rather than TCP
- Try to use MessageToMessageDecoder to decode DatagramPacket
- Use Bootstrap instead of ServerBootstrap in a way to use UDP
- Add a dummy LispController interface
- Remove unnecessary handlers from LispChannelInitializer
- Rename LispController to LispControllerBootstrap
Change-Id: I7d930f46ffb87d88b3449ba78e066d8b1c065093
diff --git a/protocols/lisp/ctl/src/test/java/org/onosproject/lisp/ctl/LispMessageDecoderTest.java b/protocols/lisp/ctl/src/test/java/org/onosproject/lisp/ctl/LispMessageDecoderTest.java
index 025181e..5e9be94 100644
--- a/protocols/lisp/ctl/src/test/java/org/onosproject/lisp/ctl/LispMessageDecoderTest.java
+++ b/protocols/lisp/ctl/src/test/java/org/onosproject/lisp/ctl/LispMessageDecoderTest.java
@@ -18,12 +18,14 @@
import com.google.common.collect.Lists;
import io.netty.buffer.ByteBuf;
import io.netty.buffer.Unpooled;
+import io.netty.channel.socket.DatagramPacket;
import org.junit.Test;
import org.onosproject.lisp.msg.protocols.LispMapNotify;
import org.onosproject.lisp.msg.protocols.LispMapRegister;
import org.onosproject.lisp.msg.protocols.LispMapReply;
import org.onosproject.lisp.msg.protocols.LispMapRequest;
+import java.net.InetSocketAddress;
import java.util.List;
import static org.hamcrest.MatcherAssert.assertThat;
@@ -114,21 +116,27 @@
return buffer;
}
+ private DatagramPacket convToDatagram(ByteBuf byteBuf) {
+ InetSocketAddress source = new InetSocketAddress(0);
+ return new DatagramPacket(byteBuf, source);
+ }
+
@Test(expected = IllegalArgumentException.class)
public void testDecodeNoChannel() throws Exception {
LispMessageDecoder decoder = new LispMessageDecoder();
List<Object> list = Lists.newArrayList();
- decoder.decode(new ChannelHandlerContextAdapter(), Unpooled.buffer(), list);
+ decoder.decode(new ChannelHandlerContextAdapter(),
+ convToDatagram(Unpooled.buffer()), list);
}
@Test
public void testDecode() throws Exception {
LispMessageDecoder decoder = new LispMessageDecoder();
- ByteBuf requestBuff = getLispMapRequestBuffer();
- ByteBuf replyBuff = getLispMapReplyBuffer();
- ByteBuf registerBuff = getLispMapRegisterBuffer();
- ByteBuf notifyBuff = getLispMapNotifyBuffer();
+ DatagramPacket requestBuff = convToDatagram(getLispMapRequestBuffer());
+ DatagramPacket replyBuff = convToDatagram(getLispMapReplyBuffer());
+ DatagramPacket registerBuff = convToDatagram(getLispMapRegisterBuffer());
+ DatagramPacket notifyBuff = convToDatagram(getLispMapNotifyBuffer());
List<Object> list = Lists.newArrayList();
decoder.decode(new ChannelHandlerContextAdapter(), requestBuff, list);