From e53fd4aa22451a9ca8e432c82c3afcdac8234545 Mon Sep 17 00:00:00 2001 From: "Jackson, John (LT)" <jrjackso1@nps.edu> Date: Fri, 14 Sep 2018 12:15:41 -0700 Subject: [PATCH] Hw3 submission --- .../homework3/Jackson_UdpReceiver.java | 52 +++++++++++++++++++ 1 file changed, 52 insertions(+) create mode 100644 deliverables/src/MV3500Cohort2018JulySeptember/homework3/Jackson_UdpReceiver.java diff --git a/deliverables/src/MV3500Cohort2018JulySeptember/homework3/Jackson_UdpReceiver.java b/deliverables/src/MV3500Cohort2018JulySeptember/homework3/Jackson_UdpReceiver.java new file mode 100644 index 0000000000..b7311cc8d5 --- /dev/null +++ b/deliverables/src/MV3500Cohort2018JulySeptember/homework3/Jackson_UdpReceiver.java @@ -0,0 +1,52 @@ +package MV3500Cohort2018JulySeptember.homework3; + +import java.io.*; +import java.net.*; +/** + * An example of receiving UDP packets. Since very often both the + * sender and receiver are on the same host we use different ports + * for each. This prevents complaints from the localhost. + * + * @author mcgredo + */ +public class Jackson_UdpReceiver +{ + public static final int SENDING_PORT = 1414; + public static final int RECEIVING_PORT = 1415; + public static final String DESINATION_HOST = "localhost"; + + /** + * @param args the command line arguments + */ + public static void main(String[] args) + { + try + { + System.out.println("UdpReceiver started..."); + // Create a UDP socket + DatagramSocket udpSocket = new DatagramSocket(RECEIVING_PORT); + + // You need a new receiving packet to read from every packet received + while (true) + { + byte[] receiveBuffer = new byte[15000]; + DatagramPacket receivePacket = new DatagramPacket(receiveBuffer, receiveBuffer.length); + udpSocket.receive(receivePacket); + + // Decode the contents by extracting the data from the packet + ByteArrayInputStream bais = new ByteArrayInputStream(receivePacket.getData()); + DataInputStream dis = new DataInputStream(bais); + + // What happens if you read an integer? Two double values? *** + String first = dis.readUTF(); // alternatives: readFloat(); readInt(); dis.readUTF(); + //String second = dis.readUTF(); + System.out.println(first);// + " second value: " + second); + } + } + catch(IOException e) + { + System.out.println("Problem with UdpReceiver, see exception trace:"); + System.out.println(e); + } + } +} -- GitLab