Advertisement
Guest User

Untitled

a guest
May 20th, 2018
112
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.29 KB | None | 0 0
  1. private static DatagramSocket sock;
  2. private int portNumber;
  3.  
  4. public UdpSrv(int portNumber) {
  5. this.portNumber = portNumber;
  6. }
  7.  
  8. public void run() {
  9. byte[] data = new byte[300];
  10. int i, len;
  11. String message;
  12.  
  13. // if (args.length < 1) {
  14. // System.out.println("Need to have port number as argument");
  15. // System.exit(1);
  16. // }
  17. try {
  18. // portNumber = Integer.parseInt(args[0]);
  19. sock = new DatagramSocket(portNumber);
  20. } catch (BindException ex) {
  21. System.out.println("Bind to local port failed");
  22. System.exit(1);
  23. } catch (SocketException ex) {
  24. Logger.getLogger(UdpSrv.class.getName()).log(Level.SEVERE, null, ex);
  25. }
  26.  
  27. DatagramPacket udpPacket = new DatagramPacket(data, data.length);
  28.  
  29. System.out.println("Listening for UDP requests (IPv6/IPv4). Use CTRL+C to terminate the server");
  30. while (true) {
  31. udpPacket.setData(data);
  32. udpPacket.setLength(data.length);
  33. try {
  34. sock.receive(udpPacket);
  35.  
  36. len = udpPacket.getLength();
  37. message = new String(udpPacket.getData(), 0, udpPacket.getLength());
  38. System.out.println("Request from: " + udpPacket.getAddress().getHostAddress()
  39. + " port: " + udpPacket.getPort() + " message: " + message);
  40.  
  41. udpPacket.setData(message.getBytes());
  42. udpPacket.setLength(message.length());
  43. sock.send(udpPacket);
  44. } catch (IOException ex) {
  45. Logger.getLogger(UdpSrv.class.getName()).log(Level.SEVERE, null, ex);
  46. }
  47. }
  48. }
  49.  
  50. public boolean addMessage(String mensagem) {
  51. mensagem = mensagem.trim();
  52. if(mensagem.charAt(0) == '@'){
  53. String mensagemArr[] = mensagem.split(" ");
  54. String mensagemAux = "";
  55. String wall = mensagemArr[0];
  56. for(int i = 1; i < mensagemArr.length; i++) {
  57. mensagemAux += mensagemArr[i] + " ";
  58. }
  59. HttpServerWall.addMessageToWall(wall, mensagemAux);
  60. return true;
  61. }else {
  62. return false;
  63. }
  64. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement