home *** CD-ROM | disk | FTP | other *** search
/ PC User 1998 October / Image.iso / BROWSER / CLASSES.ZIP / JAVA / NET / DatagramSocket.class (.txt) < prev    next >
Encoding:
Java Class File  |  1997-04-14  |  1.5 KB  |  76 lines

  1. package java.net;
  2.  
  3. import java.io.FileDescriptor;
  4. import java.io.IOException;
  5.  
  6. public class DatagramSocket {
  7.    private int localPort;
  8.    // $FF: renamed from: fd java.io.FileDescriptor
  9.    private FileDescriptor field_0;
  10.  
  11.    public DatagramSocket() throws SocketException {
  12.       this.field_0 = new FileDescriptor();
  13.       this.datagramSocketCreate();
  14.       this.localPort = this.datagramSocketBind(0);
  15.    }
  16.  
  17.    public DatagramSocket(int var1) throws SocketException {
  18.       SecurityManager var2 = System.getSecurityManager();
  19.       if (var2 != null) {
  20.          var2.checkListen(var1);
  21.       }
  22.  
  23.       this.field_0 = new FileDescriptor();
  24.       this.datagramSocketCreate();
  25.       this.localPort = this.datagramSocketBind(var1);
  26.    }
  27.  
  28.    public void send(DatagramPacket var1) throws IOException {
  29.       SecurityManager var2 = System.getSecurityManager();
  30.       if (var2 != null) {
  31.          var2.checkConnect(var1.getAddress().getHostAddress(), var1.getPort());
  32.       }
  33.  
  34.       this.datagramSocketSend(var1);
  35.    }
  36.  
  37.    public synchronized void receive(DatagramPacket var1) throws IOException {
  38.       SecurityManager var2 = System.getSecurityManager();
  39.       if (var2 != null) {
  40.          InetAddress var3 = new InetAddress();
  41.          int var4 = this.datagramSocketPeek(var3);
  42.          var2.checkConnect(var3.getHostAddress(), var4);
  43.       }
  44.  
  45.       this.datagramSocketReceive(var1);
  46.    }
  47.  
  48.    public int getLocalPort() {
  49.       return this.localPort;
  50.    }
  51.  
  52.    public synchronized void close() {
  53.       this.datagramSocketClose();
  54.    }
  55.  
  56.    protected synchronized void finalize() {
  57.       this.datagramSocketClose();
  58.    }
  59.  
  60.    private native void datagramSocketCreate();
  61.  
  62.    private native int datagramSocketBind(int var1);
  63.  
  64.    private native void datagramSocketSend(DatagramPacket var1);
  65.  
  66.    private native int datagramSocketPeek(InetAddress var1);
  67.  
  68.    private native void datagramSocketReceive(DatagramPacket var1);
  69.  
  70.    private native void datagramSocketClose();
  71.  
  72.    static {
  73.       System.loadLibrary("net");
  74.    }
  75. }
  76.