package seng302; import seng302.Networking.BinaryMesageEncoder; import seng302.Networking.BinaryMessageDecoder; import seng302.Networking.MessageEncoders.XMLMessageEncoder; import seng302.Networking.Utils.MessageType; import java.io.*; import java.net.*; /** * TCP client to recive information from AC35 data source */ public class TCPClient { public static void main(String argv[]) throws Exception { // String sentence; // String modifiedSentence; // BufferedReader inFromUser = new BufferedReader( new InputStreamReader(System.in)); // Socket clientSocket = new Socket("localhost", 6789); // DataOutputStream outToServer = new DataOutputStream(clientSocket.getOutputStream()); // BufferedReader inFromServer = new BufferedReader(new InputStreamReader(clientSocket.getInputStream())); // sentence = inFromUser.readLine(); // outToServer.writeBytes(sentence + '\n'); // modifiedSentence = inFromServer.readLine(); // System.out.println("FROM SERVER: " + modifiedSentence); // clientSocket.close(); TCPClient client = new TCPClient(); } TCPClient() throws IOException{ StringBuilder xmlString; BufferedReader br = new BufferedReader(new InputStreamReader( this.getClass().getResourceAsStream(("/raceXML/Regatta.xml")))); String line; xmlString = new StringBuilder(); while((line=br.readLine())!= null){ xmlString.append(line.trim()); } XMLMessageEncoder encodedMessage = new XMLMessageEncoder((byte)1, (short)1, System.currentTimeMillis(), (byte)7, (short)1, (short)xmlString.length(), xmlString.toString()); byte[] encodedXML = encodedMessage.encode(); BinaryMesageEncoder binaryMesageEncoder = new BinaryMesageEncoder(MessageType.XMLMESSAGE, System.currentTimeMillis(), 1, (short)encodedXML.length, encodedXML); /**************sockets*******************/ //socket port 4942 as 4940 is ac35 live port and 4941 is ac35 test port Socket mockSocket = new Socket("localhost", 4942); while(true) { DataOutputStream outToVisualiser = new DataOutputStream(mockSocket.getOutputStream()); outToVisualiser.write(binaryMesageEncoder.getFullMessage()); } /**************sockets*******************/ } }