Class FingerClient

  • Direct Known Subclasses:
    WhoisClient

    public class FingerClient
    extends SocketClient
    The FingerClient class implements the client side of the Internet Finger Protocol defined in RFC 1288. To finger a host you create a FingerClient instance, connect to the host, query the host, and finally disconnect from the host. If the finger service you want to query is on a non-standard port, connect to the host at that port. Here's a sample use:
        FingerClient finger;
    
        finger = new FingerClient();
    
        try {
          finger.connect("foo.bar.com");
          System.out.println(finger.query("foobar", false));
          finger.disconnect();
        } catch(IOException e) {
          System.err.println("Error I/O exception: " + e.getMessage());
          return;
        }
     
    • Field Detail

      • DEFAULT_PORT

        public static final int DEFAULT_PORT
        The default FINGER port. Set to 79 according to RFC 1288.
        See Also:
        Constant Field Values
    • Constructor Detail

      • FingerClient

        public FingerClient()
        The default FingerClient constructor. Initializes the default port to DEFAULT_PORT .
    • Method Detail

      • query

        public java.lang.String query​(boolean longOutput,
                                      java.lang.String username)
                               throws java.io.IOException
        Fingers a user at the connected host and returns the output as a String. You must first connect to a finger server before calling this method, and you should disconnect afterward.
        Parameters:
        longOutput - Set to true if long output is requested, false if not.
        username - The name of the user to finger.
        Returns:
        The result of the finger query.
        Throws:
        java.io.IOException - If an I/O error occurs while reading the socket.
      • query

        public java.lang.String query​(boolean longOutput)
                               throws java.io.IOException
        Fingers the connected host and returns the output as a String. You must first connect to a finger server before calling this method, and you should disconnect afterward. This is equivalent to calling query(longOutput, "") .
        Parameters:
        longOutput - Set to true if long output is requested, false if not.
        Returns:
        The result of the finger query.
        Throws:
        java.io.IOException - If an I/O error occurs while reading the socket.
      • getInputStream

        public java.io.InputStream getInputStream​(boolean longOutput,
                                                  java.lang.String username)
                                           throws java.io.IOException
        Fingers a user and returns the input stream from the network connection of the finger query. You must first connect to a finger server before calling this method, and you should disconnect after finishing reading the stream.
        Parameters:
        longOutput - Set to true if long output is requested, false if not.
        username - The name of the user to finger.
        Returns:
        The InputStream of the network connection of the finger query. Can be read to obtain finger results.
        Throws:
        java.io.IOException - If an I/O error during the operation.
      • getInputStream

        public java.io.InputStream getInputStream​(boolean longOutput,
                                                  java.lang.String username,
                                                  java.lang.String encoding)
                                           throws java.io.IOException
        Fingers a user and returns the input stream from the network connection of the finger query. You must first connect to a finger server before calling this method, and you should disconnect after finishing reading the stream.
        Parameters:
        longOutput - Set to true if long output is requested, false if not.
        username - The name of the user to finger.
        encoding - the character encoding that should be used for the query, null for the platform's default encoding
        Returns:
        The InputStream of the network connection of the finger query. Can be read to obtain finger results.
        Throws:
        java.io.IOException - If an I/O error during the operation.
      • getInputStream

        public java.io.InputStream getInputStream​(boolean longOutput)
                                           throws java.io.IOException
        Fingers the connected host and returns the input stream from the network connection of the finger query. This is equivalent to calling getInputStream(longOutput, ""). You must first connect to a finger server before calling this method, and you should disconnect after finishing reading the stream.
        Parameters:
        longOutput - Set to true if long output is requested, false if not.
        Returns:
        The InputStream of the network connection of the finger query. Can be read to obtain finger results.
        Throws:
        java.io.IOException - If an I/O error during the operation.