home *** CD-ROM | disk | FTP | other *** search
/ Sky at Night 2007 June / SAN CD 6-2007 CD-ROM 25.iso / pc / Software / AstroGrav_Win / Java / jre1.6.0 / lib / rt.jar / java / net / Inet4AddressImpl.class (.txt) < prev    next >
Encoding:
Java Class File  |  2006-11-29  |  1.3 KB  |  53 lines

  1. package java.net;
  2.  
  3. import java.io.IOException;
  4. import java.util.Enumeration;
  5.  
  6. class Inet4AddressImpl implements InetAddressImpl {
  7.    private InetAddress anyLocalAddress;
  8.    private InetAddress loopbackAddress;
  9.  
  10.    public native String getLocalHostName() throws UnknownHostException;
  11.  
  12.    public native InetAddress[] lookupAllHostAddr(String var1) throws UnknownHostException;
  13.  
  14.    public native String getHostByAddr(byte[] var1) throws UnknownHostException;
  15.  
  16.    private native boolean isReachable0(byte[] var1, int var2, byte[] var3, int var4) throws IOException;
  17.  
  18.    public synchronized InetAddress anyLocalAddress() {
  19.       if (this.anyLocalAddress == null) {
  20.          this.anyLocalAddress = new Inet4Address();
  21.          this.anyLocalAddress.hostName = "0.0.0.0";
  22.       }
  23.  
  24.       return this.anyLocalAddress;
  25.    }
  26.  
  27.    public synchronized InetAddress loopbackAddress() {
  28.       if (this.loopbackAddress == null) {
  29.          byte[] var1 = new byte[]{127, 0, 0, 1};
  30.          this.loopbackAddress = new Inet4Address("localhost", var1);
  31.       }
  32.  
  33.       return this.loopbackAddress;
  34.    }
  35.  
  36.    public boolean isReachable(InetAddress var1, int var2, NetworkInterface var3, int var4) throws IOException {
  37.       byte[] var5 = null;
  38.       if (var3 != null) {
  39.          Enumeration var6 = var3.getInetAddresses();
  40.  
  41.          InetAddress var7;
  42.          for(var7 = null; !(var7 instanceof Inet4Address) && var6.hasMoreElements(); var7 = (InetAddress)var6.nextElement()) {
  43.          }
  44.  
  45.          if (var7 instanceof Inet4Address) {
  46.             var5 = var7.getAddress();
  47.          }
  48.       }
  49.  
  50.       return this.isReachable0(var1.getAddress(), var2, var5, var4);
  51.    }
  52. }
  53.