Example usage for org.apache.http.client.utils URIBuilder setPort

List of usage examples for org.apache.http.client.utils URIBuilder setPort

Introduction

In this page you can find the example usage for org.apache.http.client.utils URIBuilder setPort.

Prototype

public URIBuilder setPort(final int port) 

Source Link

Document

Sets URI port.

Usage

From source file:org.apache.ambari.server.controller.AmbariManagementControllerImpl.java

@Override
public String getAmbariServerURI(String path) {
    if (masterProtocol == null || masterHostname == null || masterPort == null) {
        return null;
    }/*w  w w . j ava  2 s . c  o m*/

    URIBuilder uriBuilder = new URIBuilder();
    uriBuilder.setScheme(masterProtocol);
    uriBuilder.setHost(masterHostname);
    uriBuilder.setPort(masterPort);
    uriBuilder.setPath(path);

    return uriBuilder.toString();
}

From source file:org.opennms.netmgt.capsd.plugins.WebPlugin.java

/** {@inheritDoc} */
@Override/*from  w  w  w .  j  a va 2  s .c o  m*/
public boolean isProtocolSupported(final InetAddress address, final Map<String, Object> map) {
    boolean retval = false;

    final HttpClientWrapper clientWrapper = HttpClientWrapper.create();

    try {
        final URIBuilder ub = new URIBuilder();
        ub.setScheme(ParameterMap.getKeyedString(map, "scheme", DEFAULT_SCHEME));
        ub.setHost(InetAddressUtils.str(address));
        ub.setPort(ParameterMap.getKeyedInteger(map, "port", DEFAULT_PORT));
        ub.setPath(ParameterMap.getKeyedString(map, "path", DEFAULT_PATH));
        final HttpGet getMethod = new HttpGet(ub.build());

        clientWrapper.setConnectionTimeout(ParameterMap.getKeyedInteger(map, "timeout", DEFAULT_TIMEOUT))
                .setSocketTimeout(ParameterMap.getKeyedInteger(map, "timeout", DEFAULT_TIMEOUT))
                .setUserAgent(ParameterMap.getKeyedString(map, "user-agent", DEFAULT_USER_AGENT))
                .setVirtualHost(
                        ParameterMap.getKeyedString(map, "virtual-host", InetAddressUtils.str(address)));

        if (ParameterMap.getKeyedBoolean(map, "http-1.0", false)) {
            getMethod.setProtocolVersion(HttpVersion.HTTP_1_0);
        }

        for (final Object okey : map.keySet()) {
            final String key = okey.toString();
            if (key.matches("header_[0-9]+$")) {
                String headerName = ParameterMap.getKeyedString(map, key, null);
                String headerValue = ParameterMap.getKeyedString(map, key + "_value", null);
                getMethod.setHeader(headerName, headerValue);
            }
        }

        if (ParameterMap.getKeyedBoolean(map, "auth-enabled", false)) {
            clientWrapper.addBasicCredentials(ParameterMap.getKeyedString(map, "auth-user", DEFAULT_USER),
                    ParameterMap.getKeyedString(map, "auth-password", DEFAULT_PASSWORD));
            if (ParameterMap.getKeyedBoolean(map, "auth-preemptive", true)) {
                clientWrapper.usePreemptiveAuth();
            }
        }

        final CloseableHttpResponse response = clientWrapper.execute(getMethod);
        final Integer statusCode = response.getStatusLine().getStatusCode();

        final String expectedText = ParameterMap.getKeyedString(map, "response-text", null);

        if (!inRange(ParameterMap.getKeyedString(map, "response-range", DEFAULT_HTTP_STATUS_RANGE),
                statusCode)) {
            retval = false;
        } else {
            retval = true;
        }

        if (expectedText != null) {
            String responseText = EntityUtils.toString(response.getEntity());
            if (expectedText.charAt(0) == '~') {
                if (!responseText.matches(expectedText.substring(1)))
                    retval = false;
                else
                    retval = true;
            } else {

                if (responseText.equals(expectedText)) {
                    retval = true;
                } else
                    retval = false;
            }

        }

    } catch (final IOException e) {
        LOG.info(e.getMessage(), e);
        retval = false;
    } catch (final URISyntaxException e) {
        LOG.info(e.getMessage(), e);
        retval = false;
    } finally {
        IOUtils.closeQuietly(clientWrapper);
    }

    return retval;
}

From source file:org.opennms.netmgt.collectd.HttpCollector.java

private static URI buildUri(final HttpCollectionSet collectionSet) throws URISyntaxException {
    HashMap<String, String> substitutions = new HashMap<String, String>();
    substitutions.put("ipaddr", InetAddressUtils.str(collectionSet.getAgent().getAddress()));
    substitutions.put("nodeid", Integer.toString(collectionSet.getAgent().getNodeId()));

    final URIBuilder ub = new URIBuilder();
    ub.setScheme(collectionSet.getUriDef().getUrl().getScheme());
    ub.setHost(substituteKeywords(substitutions, collectionSet.getUriDef().getUrl().getHost(), "getHost"));
    ub.setPort(collectionSet.getPort());
    ub.setPath(substituteKeywords(substitutions, collectionSet.getUriDef().getUrl().getPath(), "getURL"));

    final String query = substituteKeywords(substitutions, collectionSet.getUriDef().getUrl().getQuery(),
            "getQuery");
    final List<NameValuePair> params = URLEncodedUtils.parse(query, Charset.forName("UTF-8"));
    ub.setParameters(params);//  w w w. jav a 2  s  . com

    ub.setFragment(
            substituteKeywords(substitutions, collectionSet.getUriDef().getUrl().getFragment(), "getFragment"));
    return ub.build();
}

From source file:org.opennms.netmgt.poller.monitors.WebMonitor.java

/** {@inheritDoc} */
@Override//  www  .ja v a  2  s. com
public PollStatus poll(MonitoredService svc, Map<String, Object> map) {
    PollStatus pollStatus = PollStatus.unresponsive();
    HttpClientWrapper clientWrapper = HttpClientWrapper.create();

    try {
        final String hostAddress = InetAddressUtils.str(svc.getAddress());

        URIBuilder ub = new URIBuilder();
        ub.setScheme(ParameterMap.getKeyedString(map, "scheme", DEFAULT_SCHEME));
        ub.setHost(hostAddress);
        ub.setPort(ParameterMap.getKeyedInteger(map, "port", DEFAULT_PORT));
        ub.setPath(ParameterMap.getKeyedString(map, "path", DEFAULT_PATH));

        String queryString = ParameterMap.getKeyedString(map, "queryString", null);
        if (queryString != null && !queryString.trim().isEmpty()) {
            final List<NameValuePair> params = URLEncodedUtils.parse(queryString, Charset.forName("UTF-8"));
            if (!params.isEmpty()) {
                ub.setParameters(params);
            }
        }

        final HttpGet getMethod = new HttpGet(ub.build());
        clientWrapper.setConnectionTimeout(ParameterMap.getKeyedInteger(map, "timeout", DEFAULT_TIMEOUT))
                .setSocketTimeout(ParameterMap.getKeyedInteger(map, "timeout", DEFAULT_TIMEOUT));

        final String userAgent = ParameterMap.getKeyedString(map, "user-agent", DEFAULT_USER_AGENT);
        if (userAgent != null && !userAgent.trim().isEmpty()) {
            clientWrapper.setUserAgent(userAgent);
        }

        final String virtualHost = ParameterMap.getKeyedString(map, "virtual-host", hostAddress);
        if (virtualHost != null && !virtualHost.trim().isEmpty()) {
            clientWrapper.setVirtualHost(virtualHost);
        }

        if (ParameterMap.getKeyedBoolean(map, "http-1.0", false)) {
            clientWrapper.setVersion(HttpVersion.HTTP_1_0);
        }

        for (final Object okey : map.keySet()) {
            final String key = okey.toString();
            if (key.matches("header_[0-9]+$")) {
                final String headerName = ParameterMap.getKeyedString(map, key, null);
                final String headerValue = ParameterMap.getKeyedString(map, key + "_value", null);
                getMethod.setHeader(headerName, headerValue);
            }
        }

        if (ParameterMap.getKeyedBoolean(map, "use-ssl-filter", false)) {
            clientWrapper.trustSelfSigned(ParameterMap.getKeyedString(map, "scheme", DEFAULT_SCHEME));
        }

        if (ParameterMap.getKeyedBoolean(map, "auth-enabled", false)) {
            clientWrapper.addBasicCredentials(ParameterMap.getKeyedString(map, "auth-user", DEFAULT_USER),
                    ParameterMap.getKeyedString(map, "auth-password", DEFAULT_PASSWORD));
            if (ParameterMap.getKeyedBoolean(map, "auth-preemptive", true)) {
                clientWrapper.usePreemptiveAuth();
            }
        }

        LOG.debug("getMethod parameters: {}", getMethod);
        CloseableHttpResponse response = clientWrapper.execute(getMethod);
        int statusCode = response.getStatusLine().getStatusCode();
        String statusText = response.getStatusLine().getReasonPhrase();
        String expectedText = ParameterMap.getKeyedString(map, "response-text", null);

        LOG.debug("returned results are:");

        if (!inRange(ParameterMap.getKeyedString(map, "response-range", DEFAULT_HTTP_STATUS_RANGE),
                statusCode)) {
            pollStatus = PollStatus.unavailable(statusText);
        } else {
            pollStatus = PollStatus.available();
        }

        if (expectedText != null) {
            String responseText = EntityUtils.toString(response.getEntity());
            if (expectedText.charAt(0) == '~') {
                if (!responseText.matches(expectedText.substring(1))) {
                    pollStatus = PollStatus.unavailable("Regex Failed");
                } else
                    pollStatus = PollStatus.available();
            } else {
                if (expectedText.equals(responseText))
                    pollStatus = PollStatus.available();
                else
                    pollStatus = PollStatus.unavailable("Did not find expected Text");
            }
        }

    } catch (IOException e) {
        LOG.info(e.getMessage());
        pollStatus = PollStatus.unavailable(e.getMessage());
    } catch (URISyntaxException e) {
        LOG.info(e.getMessage());
        pollStatus = PollStatus.unavailable(e.getMessage());
    } catch (GeneralSecurityException e) {
        LOG.error("Unable to set SSL trust to allow self-signed certificates", e);
        pollStatus = PollStatus.unavailable("Unable to set SSL trust to allow self-signed certificates");
    } catch (Throwable e) {
        LOG.error("Unexpected exception while running " + getClass().getName(), e);
        pollStatus = PollStatus.unavailable("Unexpected exception: " + e.getMessage());
    } finally {
        IOUtils.closeQuietly(clientWrapper);
    }
    return pollStatus;
}

From source file:org.opennms.netmgt.provision.detector.web.client.WebClient.java

@Override
public void connect(InetAddress address, int port, int timeout) throws IOException, Exception {
    final URIBuilder ub = new URIBuilder();
    ub.setScheme(m_schema);/*from  www . j a v  a  2  s . c o  m*/
    ub.setHost(InetAddressUtils.str(address));
    ub.setPort(port);
    ub.setPath(m_path);
    if (m_queryString != null && m_queryString.trim().length() > 0) {
        final List<NameValuePair> params = URLEncodedUtils.parse(m_queryString, Charset.forName("UTF-8"));
        if (!params.isEmpty()) {
            ub.setParameters(params);
        }
    }

    m_httpMethod = new HttpGet(ub.build());
    m_httpMethod.setProtocolVersion(m_version);

    m_httpClientWrapper = HttpClientWrapper.create();
    if (m_overrideSSL) {
        try {
            m_httpClientWrapper.trustSelfSigned("https");
        } catch (final Exception e) {
            LOG.warn("Failed to create relaxed SSL client.", e);
        }
    }
    if (m_userAgent != null && !m_userAgent.trim().isEmpty()) {
        m_httpClientWrapper.setUserAgent(m_userAgent);
    }
    if (timeout > 0) {
        m_httpClientWrapper.setConnectionTimeout(timeout);
        m_httpClientWrapper.setSocketTimeout(timeout);
    }
    if (m_virtualHost != null && !m_virtualHost.trim().isEmpty()) {
        m_httpClientWrapper.setVirtualHost(m_virtualHost);
    }
    if (m_userName != null && !m_userName.trim().isEmpty()) {
        m_httpClientWrapper.addBasicCredentials(m_userName, m_password);
    }
    if (m_authPreemptive) {
        m_httpClientWrapper.usePreemptiveAuth();
    }
}

From source file:org.opennms.protocols.http.HttpUrlConnection.java

@Override
public InputStream getInputStream() throws IOException {
    try {//from w ww .  jav  a 2 s.  co m
        if (m_clientWrapper == null) {
            connect();
        }

        // Build URL
        int port = m_url.getPort() > 0 ? m_url.getPort() : m_url.getDefaultPort();
        URIBuilder ub = new URIBuilder();
        ub.setPort(port);
        ub.setScheme(m_url.getProtocol());
        ub.setHost(m_url.getHost());
        ub.setPath(m_url.getPath());
        if (m_url.getQuery() != null && !m_url.getQuery().trim().isEmpty()) {
            final List<NameValuePair> params = URLEncodedUtils.parse(m_url.getQuery(),
                    Charset.forName("UTF-8"));
            if (!params.isEmpty()) {
                ub.addParameters(params);
            }
        }

        // Build Request
        HttpRequestBase request = null;
        if (m_request != null && m_request.getMethod().equalsIgnoreCase("post")) {
            final Content cnt = m_request.getContent();
            HttpPost post = new HttpPost(ub.build());
            ContentType contentType = ContentType.create(cnt.getType());
            LOG.info("Processing POST request for {}", contentType);
            if (contentType.getMimeType().equals(ContentType.APPLICATION_FORM_URLENCODED.getMimeType())) {
                FormFields fields = JaxbUtils.unmarshal(FormFields.class, cnt.getData());
                post.setEntity(fields.getEntity());
            } else {
                StringEntity entity = new StringEntity(cnt.getData(), contentType);
                post.setEntity(entity);
            }
            request = post;
        } else {
            request = new HttpGet(ub.build());
        }

        if (m_request != null) {
            // Add Custom Headers
            for (final Header header : m_request.getHeaders()) {
                request.addHeader(header.getName(), header.getValue());
            }
        }

        // Get Response
        CloseableHttpResponse response = m_clientWrapper.execute(request);
        return response.getEntity().getContent();
    } catch (Exception e) {
        throw new IOException(
                "Can't retrieve " + m_url.getPath() + " from " + m_url.getHost() + " because " + e.getMessage(),
                e);
    }
}