Module jcifs

Class UniAddress

java.lang.Object
org.codelibs.jcifs.smb.netbios.UniAddress
All Implemented Interfaces:
Address

public class UniAddress extends Object implements Address

Under normal conditions it is not necessary to use this class to use jCIFS properly. Name resolusion is handled internally to the org.codelibs.jcifs.smb.impl package.

This class is a wrapper for both NbtAddress and InetAddress. The name resolution mechanisms used will systematically query all available configured resolution services including WINS, broadcasts, DNS, and LMHOSTS. See Setting Name Resolution Properties and the org.codelibs.jcifs.smb.resolveOrder property. Changing jCIFS name resolution properties can greatly affect the behavior of the client and may be necessary for proper operation.

This class should be used in favor of InetAddress to resolve hostnames on LANs and WANs that support a mixture of NetBIOS/WINS and DNS resolvable hosts.

  • Constructor Details

    • UniAddress

      public UniAddress(Object addr)
      Create a UniAddress by wrapping an InetAddress or NbtAddress.
      Parameters:
      addr - wrapped address
  • Method Details

    • isDotQuadIP

      public static boolean isDotQuadIP(String hostname)
      Check whether a hostname is actually an ip address
      Parameters:
      hostname - the hostname to check
      Returns:
      whether this is an IP address
    • hashCode

      public int hashCode()
      Return the IP address of this address as a 32 bit integer.
      Overrides:
      hashCode in class Object
    • equals

      public boolean equals(Object obj)
      Compare two addresses for equality. Two UniAddresss are equal if they are both UniAddress' and refer to the same IP address.
      Overrides:
      equals in class Object
    • firstCalledName

      public String firstCalledName()
      Guess first called name to try for session establishment. This method is used exclusively by the org.codelibs.jcifs.smb.impl package.
      Specified by:
      firstCalledName in interface Address
      Returns:
      the guessed name
    • nextCalledName

      public String nextCalledName(CIFSContext tc)
      Guess next called name to try for session establishment. This method is used exclusively by the org.codelibs.jcifs.smb.impl package.
      Specified by:
      nextCalledName in interface Address
      Parameters:
      tc - context to use
      Returns:
      guessed alternate name
    • getAddress

      public Object getAddress()
      Return the underlying NbtAddress or InetAddress.
      Returns:
      wrapped address
    • getHostName

      public String getHostName()
      Return the hostname of this address such as "MYCOMPUTER".
      Specified by:
      getHostName in interface Address
      Returns:
      the hostname associated with the address
    • getHostAddress

      public String getHostAddress()
      Return the IP address as text such as "192.168.1.15".
      Specified by:
      getHostAddress in interface Address
      Returns:
      the ip address
    • toInetAddress

      public InetAddress toInetAddress() throws UnknownHostException
      Converts this address to an InetAddress.
      Specified by:
      toInetAddress in interface Address
      Returns:
      this address as an InetAddress
      Throws:
      UnknownHostException - if the host cannot be resolved
      See Also:
    • unwrap

      public <T extends Address> T unwrap(Class<T> type)
      Unwrap the address to a specific type
      Specified by:
      unwrap in interface Address
      Type Parameters:
      T - the type to unwrap to
      Parameters:
      type - the target type to unwrap to
      Returns:
      instance for type, null if the type cannot be unwrapped
      See Also:
    • toString

      public String toString()
      Return the a text representation of this address such as MYCOMPUTER/192.168.1.15.
      Overrides:
      toString in class Object