Advertisement
Guest User

Untitled

a guest
Jul 17th, 2018
58
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.73 KB | None | 0 0
  1. package net.heartnetwork.hubplugin;
  2.  
  3. import java.io.DataInputStream;
  4. import java.io.DataOutputStream;
  5. import java.net.InetSocketAddress;
  6. import java.net.Socket;
  7.  
  8. import java.io.IOException;
  9. import java.io.InputStream;
  10. import java.io.OutputStream;
  11. import java.net.InetSocketAddress;
  12. import java.net.Socket;
  13.  
  14. public class PingServer {
  15.  
  16.     public static boolean online;
  17.     private String host = null;
  18.     private int port = 0;
  19.     private Socket socket = new Socket();
  20.     private String[] data = new String[999];
  21.  
  22.     public PingServer(String host,int port){
  23.         this.host = host;
  24.         this.port = port;
  25.  
  26.         try{
  27.             socket.connect(new InetSocketAddress(host,port));
  28.             OutputStream out = socket.getOutputStream();
  29.             InputStream in = socket.getInputStream();
  30.             out.write(0xFE);
  31.  
  32.             int b;
  33.             StringBuffer str = new StringBuffer();
  34.             while((b = in.read()) != -1){
  35.                 if(b != 0 && b > 16 && b != 255 && b != 23 && b != 24){
  36.                     str.append((char)b);
  37.                 }
  38.             }
  39.  
  40.             data = str.toString().split("§");
  41.             data[0] = data[0].substring(1,data[0].length());
  42.         }catch(IOException e){
  43.             e.printStackTrace();
  44.         }
  45.     }
  46.  
  47.     public String getMotd(){
  48.         return data[0];
  49.     }
  50.  
  51.     public int getOnline(){
  52.         return Integer.parseInt(data[1]);
  53.     }
  54.  
  55.     public int getMax(){
  56.         return Integer.parseInt(data[2]);
  57.     }
  58.  
  59.  
  60.     public void update(){
  61.         try{
  62.             socket.close();
  63.             socket = new Socket();
  64.             socket.connect(new InetSocketAddress(host,port));
  65.             OutputStream out = socket.getOutputStream();
  66.             InputStream in = socket.getInputStream();
  67.             out.write(0xFE);
  68.  
  69.             int b;
  70.             StringBuffer str = new StringBuffer();
  71.             while((b = in.read()) != -1){
  72.                 if(b != 0 && b > 16 && b != 255 && b != 23 && b != 24){
  73.                     str.append((char)b);
  74.                 }
  75.             }
  76.  
  77.             data = str.toString().split("§");
  78.             data[0] = data[0].substring(1,data[0].length());
  79.         }catch(IOException e){
  80.             e.printStackTrace();
  81.         }
  82.     }
  83.  
  84.     public int getPort(){ return port; }
  85.  
  86.     public String getIP(){ return host; }
  87.  
  88.     public static boolean isOnline(String ip, int port) {
  89.  
  90.         try{
  91.  
  92.             InetSocketAddress sa = new InetSocketAddress(ip, port);
  93.             Socket ss = new Socket();
  94.             ss.connect(sa, 1);
  95.             ss.close();
  96.             online = true;
  97.         }catch(Exception e) {
  98.             online = false;
  99.  
  100.         }
  101.         return online;
  102.     }
  103.  
  104.  
  105.  
  106. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement