Example usage for org.apache.commons.net.whois WhoisClient WhoisClient

List of usage examples for org.apache.commons.net.whois WhoisClient WhoisClient

Introduction

In this page you can find the example usage for org.apache.commons.net.whois WhoisClient WhoisClient.

Prototype

public WhoisClient() 

Source Link

Document

The default whois constructor.

Usage

From source file:org.apache.common.net.examples.unix.fwhois.java

public static final void main(String[] args) {
    int index;/*  w  ww  .  ja  v  a  2  s .c  o  m*/
    String handle, host;
    InetAddress address = null;
    WhoisClient whois;

    if (args.length != 1) {
        System.err.println("usage: fwhois handle[@<server>]");
        System.exit(1);
    }

    index = args[0].lastIndexOf("@");

    whois = new WhoisClient();
    // We want to timeout if a response takes longer than 60 seconds
    whois.setDefaultTimeout(60000);

    if (index == -1) {
        handle = args[0];
        host = WhoisClient.DEFAULT_HOST;
    } else {
        handle = args[0].substring(0, index);
        host = args[0].substring(index + 1);
    }

    try {
        address = InetAddress.getByName(host);
        System.out.println("[" + address.getHostName() + "]");
    } catch (UnknownHostException e) {
        System.err.println("Error unknown host: " + e.getMessage());
        System.exit(1);
    }

    try {
        whois.connect(address);
        System.out.print(whois.query(handle));
        whois.disconnect();
    } catch (IOException e) {
        System.err.println("Error I/O exception: " + e.getMessage());
        System.exit(1);
    }
}

From source file:org.apache.commons.net.examples.unix.fwhois.java

public static void main(String[] args) {
    int index;//from  w w w .  j  a v a  2s  . com
    String handle, host;
    InetAddress address = null;
    WhoisClient whois;

    if (args.length != 1) {
        System.err.println("usage: fwhois handle[@<server>]");
        System.exit(1);
    }

    index = args[0].lastIndexOf('@');

    whois = new WhoisClient();
    // We want to timeout if a response takes longer than 60 seconds
    whois.setDefaultTimeout(60000);

    if (index == -1) {
        handle = args[0];
        host = WhoisClient.DEFAULT_HOST;
    } else {
        handle = args[0].substring(0, index);
        host = args[0].substring(index + 1);
    }

    try {
        address = InetAddress.getByName(host);
        System.out.println("[" + address.getHostName() + "]");
    } catch (UnknownHostException e) {
        System.err.println("Error unknown host: " + e.getMessage());
        System.exit(1);
    }

    try {
        whois.connect(address);
        System.out.print(whois.query(handle));
        whois.disconnect();
    } catch (IOException e) {
        System.err.println("Error I/O exception: " + e.getMessage());
        System.exit(1);
    }
}

From source file:org.apache.nifi.processors.enrich.QueryWhois.java

protected WhoisClient createClient() {
    return new WhoisClient();
}

From source file:org.archive.modules.fetcher.FetchWhois.java

protected void fetch(CrawlURI curi, String whoisServer, String whoisQuery) {
    WhoisClient client = new WhoisClient();
    Recorder recorder = curi.getRecorder();

    try {/*from  w  w  w  .ja  va2s  .c  o m*/
        client.setConnectTimeout(getSoTimeoutMs());
        client.setDefaultTimeout(getSoTimeoutMs());

        if (curi.getUURI().getPort() > 0) {
            client.connect(whoisServer, curi.getUURI().getPort());
        } else {
            client.connect(whoisServer);
        }

        client.setSoTimeout(getSoTimeoutMs()); // must be after connect()

        curi.getData().put(CoreAttributeConstants.A_WHOIS_SERVER_IP,
                client.getRemoteAddress().getHostAddress());

        recorder.inputWrap(client.getInputStream(whoisQuery));

        // look for info about whois server in the response
        // XXX run regex on the whole thing, rather than line by line?
        BufferedReader reader = new BufferedReader(new InputStreamReader(recorder.getRecordedInput(), "ASCII"));
        for (String line = reader.readLine(); line != null; line = reader.readLine()) {
            Matcher matcher = TextUtils.getMatcher(WHOIS_SERVER_REGEX, line);
            if (matcher.find()) {
                // gets rid of "domain " for whois.verisign-grs.com queries
                String key = whoisQuery.replaceFirst("(\\S+\\s+)+", "").toLowerCase();
                referralServers.put(key, matcher.group(1).toLowerCase());
                if (logger.isLoggable(Level.FINE)) {
                    logger.fine("added referral server " + matcher.group(1) + " to server list for " + key);
                }
            }
        }

        curi.setContentType("text/plain");
        curi.setFetchStatus(S_WHOIS_SUCCESS);
    } catch (IOException e) {
        if (logger.isLoggable(Level.FINE)) {
            logger.fine("failed to connect to whois server for uri " + curi + ": " + e);
        }
        curi.getNonFatalFailures().add(e);
        curi.setFetchStatus(S_CONNECT_FAILED);
    } finally {
        recorder.close();
        curi.setContentSize(recorder.getRecordedInput().getSize());
        logger.fine(curi + ": " + recorder.getRecordedInput().getSize() + " bytes read");

        if (client != null && client.isConnected())
            try {
                client.disconnect();
            } catch (IOException e) {
                logger.fine("problem closing connection to whois server for uri " + curi + ": " + e);
            }

        urlProgress.put(curi.toString(), UrlStatus.DONE.ordinal());
    }
}

From source file:org.oucho.whois.LookupWhoisTask.java

protected String doInBackground(String... urls) {
    String url = urls[0];//from w ww. j av a  2 s  .  c  o m

    String[] parts = url.split("\\:");
    String adresse = parts[0];
    String host = parts[1];

    if ("whois.internic.net".equals(host))
        adresse = "=" + adresse;

    StringBuilder result = new StringBuilder("");

    WhoisClient whois = new WhoisClient();

    try {
        whois.connect(host);
        String whoisData1 = whois.query(adresse);
        result.append(whoisData1);
        whois.disconnect();
    } catch (SocketException e) {
        e.printStackTrace();
    } catch (IOException e) {
        e.printStackTrace();
    }

    return result.toString();
}