All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.rx.net.support.IPSearcher Maven / Gradle / Ivy

package org.rx.net.support;

import org.rx.net.http.HttpClient;

public interface IPSearcher {
    IPSearcher DEFAULT = new ComboIPSearcher();

    static String godaddyDns(String ssoKey, String domain, String name) {
        return godaddyDns(ssoKey, domain, name, DEFAULT.currentIp());
    }

    static String godaddyDns(String ssoKey, String domain, String name, String ip) {
        String url = String.format("https://api.godaddy.com/v1/domains/%s/records/A/%s", domain, name);
        HttpClient client = new HttpClient();
        client.getRequestHeaders().add("Authorization", "sso-key " + ssoKey);
        return client.putJson(url, String.format("[\n" +
                "  {\n" +
                "    \"data\": \"%s\",\n" +
                "    \"ttl\": 600\n" +
                "  }\n" +
                "]", ip)).toString();
    }

    String currentIp();

    IPAddress searchCurrent();

    default IPAddress search(String host) {
        return search(host, false);
    }

    IPAddress search(String host, boolean resolveHostRemotely);
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy