Example usage for org.apache.http.protocol HTTP USER_AGENT

List of usage examples for org.apache.http.protocol HTTP USER_AGENT

Introduction

In this page you can find the example usage for org.apache.http.protocol HTTP USER_AGENT.

Prototype

String USER_AGENT

To view the source code for org.apache.http.protocol HTTP USER_AGENT.

Click Source Link

Usage

From source file:org.wso2.carbon.integrator.core.handler.IntegratorSynapseHandler.java

/**
 * In this method we are dispatching the message to tomcat transport.
 *
 * @param endpoint       Endpoint// w  ww. j a v a2s  . c o  m
 * @param uri            uri
 * @param messageContext message context
 * @return boolean
 */
private boolean dispatchMessage(String endpoint, String uri, MessageContext messageContext) {
    // Adding preserver Headers
    if (passThroughSenderManager != null && passThroughSenderManager.getSharedPassThroughHttpSender() != null) {
        try {
            passThroughSenderManager.getSharedPassThroughHttpSender().addPreserveHttpHeader(HTTP.USER_AGENT);
            // This catch is added when there is no preserve headers in the PassthoughHttpSender.
        } catch (ArrayIndexOutOfBoundsException e) {
            if (log.isDebugEnabled()) {
                log.debug("ArrayIndexOutOfBoundsException exception occurred, when adding preserve headers.");
            }
        }
    }
    if (log.isDebugEnabled()) {
        log.debug("Dispatching message to " + uri);
    }
    messageContext.setProperty(MESSAGE_DISPATCHED, "true");
    Utils.setIntegratorHeader(messageContext, uri);
    setREST_URL_POSTFIX(((Axis2MessageContext) messageContext).getAxis2MessageContext(), uri);
    sendMediator.setEndpoint(Utils.createEndpoint(endpoint, messageContext.getEnvironment()));
    return sendMediator.mediate(messageContext);
}

From source file:org.apache.synapse.rest.Resource.java

@Override
boolean canProcess(MessageContext synCtx) {
    if (synCtx.isResponse()) {
        return true;
    }//from  w w  w.j a  va  2  s.  com

    org.apache.axis2.context.MessageContext msgCtx = ((Axis2MessageContext) synCtx).getAxis2MessageContext();
    if (protocol == RESTConstants.PROTOCOL_HTTP_ONLY
            && !Constants.TRANSPORT_HTTP.equals(msgCtx.getIncomingTransportName())) {
        if (log.isDebugEnabled()) {
            log.debug("Protocol information does not match - Expected HTTP");
        }
        return false;
    }

    if (protocol == RESTConstants.PROTOCOL_HTTPS_ONLY
            && !Constants.TRANSPORT_HTTPS.equals(msgCtx.getIncomingTransportName())) {
        if (log.isDebugEnabled()) {
            log.debug("Protocol information does not match - Expected HTTPS");
        }
        return false;
    }

    String method = (String) msgCtx.getProperty(Constants.Configuration.HTTP_METHOD);
    synCtx.setProperty(RESTConstants.REST_METHOD, method);

    if (RESTConstants.METHOD_OPTIONS.equals(method)) {
        return true; // OPTIONS requests are always welcome
    } else if (!methods.isEmpty()) {
        if (!methods.contains(method)) {
            if (log.isDebugEnabled()) {
                log.debug("HTTP method does not match");
            }
            return false;
        }
    }

    Map transportHeaders = (Map) msgCtx.getProperty(org.apache.axis2.context.MessageContext.TRANSPORT_HEADERS);
    if ((contentType != null || userAgent != null) && transportHeaders == null) {
        if (log.isDebugEnabled()) {
            log.debug("Transport headers not available on the message");
        }
        return false;
    }

    boolean hasPayload = !Boolean.TRUE.equals(msgCtx.getProperty(NhttpConstants.NO_ENTITY_BODY));
    if (contentType != null && hasPayload) {
        String type = (String) transportHeaders.get(HTTP.CONTENT_TYPE);
        if (!contentType.equals(type)) {
            if (log.isDebugEnabled()) {
                log.debug("Content type does not match - Expected: " + contentType + ", " + "Found: " + type);
            }
            return false;
        }
    }

    if (userAgent != null) {
        String agent = (String) transportHeaders.get(HTTP.USER_AGENT);
        if (agent == null || !agent.matches(this.userAgent)) {
            if (log.isDebugEnabled()) {
                log.debug("User agent does not match - Expected: " + userAgent + ", " + "Found: " + agent);
            }
            return false;
        }
    }

    return true;
}

From source file:org.sonatype.nexus.repository.httpclient.HttpClientFactoryImpl.java

private void applyRequestExecutor(final Builder builder, final String userAgent, final String urlParameters) {
    if (userAgent != null || urlParameters != null) {
        builder.getHttpClientBuilder().setRequestExecutor(new HttpRequestExecutor() {
            @Override/*from  w w w  .  j  a v  a 2 s.  c  o m*/
            public void preProcess(final HttpRequest request, final HttpProcessor processor,
                    final HttpContext ctx) throws HttpException, IOException {
                if (userAgent != null) {
                    // NEXUS-7575: In case of HTTP Proxy tunnel, add generic UA while performing CONNECT
                    if (!request.containsHeader(HTTP.USER_AGENT)) {
                        request.addHeader(new BasicHeader(HTTP.USER_AGENT, userAgent));
                    }
                }
                super.preProcess(request, processor, ctx);
            }

            @Override
            public HttpResponse execute(final HttpRequest request, final HttpClientConnection conn,
                    final HttpContext context) throws IOException, HttpException {
                HttpResponse response = null;
                if (urlParameters != null) {
                    HttpRequestWrapper wrappedRequest = HttpRequestWrapper.wrap(request);
                    URI uri = wrappedRequest.getURI();
                    if (uri != null) {
                        String uriString = uri.toASCIIString();
                        try {
                            wrappedRequest.setURI(
                                    new URI(uriString + (uri.getQuery() == null ? "?" : "&") + urlParameters));
                        } catch (URISyntaxException e) {
                            throw new HttpException(
                                    "Unable to add url parameters " + urlParameters + " to " + uriString, e);
                        }
                        response = super.execute(wrappedRequest, conn, context);
                    }
                }
                if (response == null) {
                    response = super.execute(request, conn, context);
                }
                return response;
            }
        });
    }
}

From source file:ch.iterate.openstack.swift.Client.java

public void setUserAgent(String userAgent) {
    client.getParams().setParameter(HTTP.USER_AGENT, userAgent);
}

From source file:ch.iterate.openstack.swift.Client.java

public String getUserAgent() {
    return client.getParams().getParameter(HTTP.USER_AGENT).toString();
}

From source file:com.moviejukebox.tools.SearchEngineTools.java

private String requestContent(CharSequence cs) throws IOException {
    HttpGet httpGet = new HttpGet(cs.toString());
    httpGet.setHeader(HTTP.USER_AGENT,
            "Mozilla/6.0 (Windows NT 6.2; WOW64; rv:16.0.1) Gecko/20121011 Firefox/16.0.1");
    return httpClient.request(httpGet);
}

From source file:org.apache.synapse.transport.nhttp.NHttpConfiguration.java

private void populatePreserveHttpHeaders() {

    if (preserveHeaders == null) {
        preserveHeaders = new ArrayList<String>();
        String presHeaders = getStringValue(NhttpConstants.HTTP_HEADERS_PRESERVE, "");

        if (presHeaders != null && !presHeaders.isEmpty()) {
            String[] splitHeaders = presHeaders.toUpperCase().trim().split(",");

            if (splitHeaders != null && splitHeaders.length > 0) {
                preserveHeaders.addAll(Arrays.asList(splitHeaders));
            }/*from   w ww .j  a  v  a 2 s .  c  o  m*/
        }

        if (getBooleanValue(NhttpConstants.SERVER_HEADER_PRESERVE, true)
                && !preserveHeaders.contains(HTTP.SERVER_HEADER.toUpperCase())) {
            preserveHeaders.add(HTTP.SERVER_HEADER.toUpperCase());
        }

        if (getBooleanValue(NhttpConstants.USER_AGENT_HEADER_PRESERVE, false)
                && !preserveHeaders.contains(HTTP.USER_AGENT.toUpperCase())) {
            preserveHeaders.add(HTTP.USER_AGENT.toUpperCase());
        }
    }

}

From source file:org.apache.synapse.transport.nhttp.HttpCoreNIOSender.java

/**
 * Remove unwanted headers from the given header map.
 *
 * @param headers Header map/*  w  ww .  j  a  va2 s .co  m*/
 * @param nHttpConfiguration NHttp transporter base configurations
 */
private void removeUnwantedHeadersFromHeaderMap(Map headers, NHttpConfiguration nHttpConfiguration) {

    Iterator iter = headers.keySet().iterator();
    while (iter.hasNext()) {
        String headerName = (String) iter.next();
        if (HTTP.CONN_DIRECTIVE.equalsIgnoreCase(headerName)
                || HTTP.TRANSFER_ENCODING.equalsIgnoreCase(headerName)
                || HTTP.CONTENT_TYPE.equalsIgnoreCase(headerName)
                || HTTP.CONTENT_LEN.equalsIgnoreCase(headerName)) {
            iter.remove();
        }

        if (HTTP.SERVER_HEADER.equalsIgnoreCase(headerName)
                && !nHttpConfiguration.isPreserveHttpHeader(HTTP.SERVER_HEADER)) {
            iter.remove();
        }

        if (HTTP.USER_AGENT.equalsIgnoreCase(headerName)
                && !nHttpConfiguration.isPreserveHttpHeader(HTTP.USER_AGENT)) {
            iter.remove();
        }

        if (HTTP.DATE_HEADER.equalsIgnoreCase(headerName)
                && !nHttpConfiguration.isPreserveHttpHeader(HTTP.DATE_HEADER)) {
            iter.remove();
        }

    }
}

From source file:org.apache.synapse.message.senders.blocking.BlockingMsgSenderUtils.java

private static boolean isSkipTransportHeader(String headerName) {

    return HTTP.CONN_DIRECTIVE.equalsIgnoreCase(headerName)
            || HTTP.TRANSFER_ENCODING.equalsIgnoreCase(headerName)
            || HTTP.DATE_HEADER.equalsIgnoreCase(headerName) || HTTP.CONTENT_TYPE.equalsIgnoreCase(headerName)
            || HTTP.CONTENT_LEN.equalsIgnoreCase(headerName) || HTTP.SERVER_HEADER.equalsIgnoreCase(headerName)
            || HTTP.USER_AGENT.equalsIgnoreCase(headerName) || "SOAPAction".equalsIgnoreCase(headerName);

}