Example usage for org.apache.http.protocol HttpContext getAttribute

List of usage examples for org.apache.http.protocol HttpContext getAttribute

Introduction

In this page you can find the example usage for org.apache.http.protocol HttpContext getAttribute.

Prototype

Object getAttribute(String str);

Source Link

Usage

From source file:com.bytelightning.opensource.pokerface.RequestHandler.java

/**
 * {@inheritDoc}//from   w ww .  j a  va 2  s  . c o  m
 * Our <code>processRequest</code> method always returns an instance of <code>HttpAsyncRequestConsumer<ResponseProducer></code> and the <code>ResponseProducer<code> part of that is passed as the first parameter to this method.
 * This method simply arms the <code>HttpAsyncExchange</code> response trigger with our asynchronous <code>Producer</code>.
 */
@Override
public void handle(ResponseProducer producer, HttpAsyncExchange responseTrigger, HttpContext context)
        throws HttpException, IOException {
    if (producer.setTrigger(responseTrigger)) {
        String id = (String) context.getAttribute("pokerface.txId");
        Logger.trace("[client<-proxy] " + id + " response triggered");
    }
}

From source file:mobi.jenkinsci.ci.client.JenkinsFormAuthHttpClient.java

private IOException getSsoExceptionFromFormResults(final HttpContext httpContext, final HttpResponse response) {
    final HttpHost host = (HttpHost) httpContext.getAttribute(ExecutionContext.HTTP_TARGET_HOST);
    final SsoHandler errorHandler = getSsoErrorHandler(host);
    return errorHandler.getException(response);
}

From source file:com.alibaba.openapi.client.rpc.AliNHttpRequstExecutionHandler.java

public ConsumingNHttpEntity responseEntity(final HttpResponse httpResponse, final HttpContext context)
        throws IOException {
    //System.out.println("AliNHttpRequstExecutionHandler responseEntity");

    LoggerHelper.getClientLogger().finer("Enter request handler's response entity.");
    final InvokeContext invokeContext = (InvokeContext) context.getAttribute(CONTEXT_ATTACHMENT);
    final Response response = protocolProvider
            .getResponseParser(invokeContext.getPolicy().getResponseProtocol())
            .initResponse(httpResponse, invokeContext);
    //ConsumingNHttpEntityTemplateContentListener??
    ContentListener contentListener = new ContentListener() {
        private final SimpleInputBuffer buffer = new SimpleInputBuffer(2048, allocator);

        @SuppressWarnings("unchecked")
        public void finished() {
            InputStream istream = new ContentInputStream(this.buffer);
            protocolProvider.getResponseParser(invokeContext.getPolicy().getResponseProtocol())
                    .parseResponse(httpResponse, istream, response, invokeContext);
            invokeContext.completed();/*from w w w.  j  a  v a 2 s .  c  om*/
            if (response.getException() != null) {
                invokeContext.failed(response.getException());
            } else {
                try {
                    ((FutureCallback<Object>) invokeContext.getCallback()).completed(response.getResult());
                } catch (RuntimeException e) {
                    invokeContext.failed(e);
                }
            }
        }

        //TODO ??,??
        public void contentAvailable(ContentDecoder decoder, IOControl ioctrl) throws IOException {
            this.buffer.consumeContent(decoder);
            LoggerHelper.getClientLogger().finer("content Listener " + this.buffer.available());
        }
    };
    HttpEntity entity = httpResponse.getEntity();
    return new ConsumingNHttpEntityTemplate(entity, contentListener);
}

From source file:org.cee.net.impl.HttpWebResponse.java

private void executeRequest() throws IOException {
    HttpGet httpGet = new HttpGet(getUrlWithoutHash(originalLocation));
    HttpContext context = new BasicHttpContext();
    HttpResponse response = httpClient.execute(httpGet, context);
    entity = response.getEntity();/*from   w  w  w  . j  av  a2  s . co m*/
    if (entity == null) {
        throw new IOException("No entity received for " + originalLocation.toExternalForm());
    }
    URL redirectUrl = (URL) context.getAttribute(HttpClientFactory.LAST_REDIRECT_URL);
    if (redirectUrl != null) {
        location = redirectUrl;
    }
}

From source file:com.woonoz.proxy.servlet.ProxyServlet.java

public void init(ProxyServletConfig config) {
    targetServer = config.getTargetUrl();
    if (targetServer != null) {
        SchemeRegistry schemeRegistry = new SchemeRegistry();
        schemeRegistry.register(new Scheme(targetServer.getProtocol(), getPortOrDefault(targetServer.getPort()),
                PlainSocketFactory.getSocketFactory()));
        BasicHttpParams httpParams = new BasicHttpParams();
        HttpConnectionParams.setConnectionTimeout(httpParams, config.getConnectionTimeout());
        HttpConnectionParams.setSoTimeout(httpParams, config.getSocketTimeout());
        ThreadSafeClientConnManager cm = new ThreadSafeClientConnManager(schemeRegistry);
        cm.setDefaultMaxPerRoute(config.getMaxConnections());
        cm.setMaxTotal(config.getMaxConnections());
        client = new DefaultHttpClient(cm, httpParams);
        client.removeResponseInterceptorByClass(ResponseProcessCookies.class);
        client.removeRequestInterceptorByClass(RequestAddCookies.class);

        final String remoteUserHeader = config.getRemoteUserHeader();
        if (null != remoteUserHeader) {
            client.addRequestInterceptor(new HttpRequestInterceptor() {

                @Override/*from w  ww  .j av a  2  s. co m*/
                public void process(HttpRequest request, HttpContext context)
                        throws HttpException, IOException {
                    request.removeHeaders(remoteUserHeader);
                    HttpRequestHandler handler;
                    if (context != null && (handler = (HttpRequestHandler) context
                            .getAttribute(HttpRequestHandler.class.getName())) != null) {
                        String remoteUser = handler.getRequest().getRemoteUser();
                        if (remoteUser != null) {
                            request.addHeader(remoteUserHeader, remoteUser);
                        }
                    }
                }
            });
        }
    }
}

From source file:com.soundcloud.playerapi.OAuth2HttpRequestInterceptor.java

@Override
public void process(HttpRequest request, HttpContext context) throws HttpException, IOException {
    if (request == null)
        throw new IllegalArgumentException("HTTP request may not be null");
    if (context == null)
        throw new IllegalArgumentException("HTTP context may not be null");

    if (!request.getRequestLine().getMethod().equalsIgnoreCase("CONNECT")) {
        AuthState authState = (AuthState) context.getAttribute(ClientContext.TARGET_AUTH_STATE);
        if (authState != null) {
            AuthScheme authScheme = authState.getAuthScheme();
            if (authScheme != null && !authScheme.isConnectionBased()) {
                try {
                    request.setHeader(authScheme.authenticate(null, request));
                } catch (AuthenticationException ignored) {
                    // ignored
                }/*from   w w  w. j av a2 s  .  c  o  m*/
            }
        }
    }
}

From source file:com.eviware.soapui.impl.wsdl.submit.transports.http.HttpClientRequestTransport.java

private void saveRequestHeaders(ExtendedHttpMethod httpMethod, HttpContext httpContext) {
    List<Header> requestHeaders = (List<Header>) httpContext
            .getAttribute(HeaderRequestInterceptor.SOAPUI_REQUEST_HEADERS);

    if (requestHeaders != null) {
        for (Header header : requestHeaders) {
            Header[] existingHeaders = httpMethod.getHeaders(header.getName());

            int c = 0;
            for (; c < existingHeaders.length; c++)
                if (existingHeaders[c].getValue().equals(header.getValue()))
                    break;

            if (c == existingHeaders.length)
                httpMethod.addHeader(header);
        }/*from  ww w  . ja va  2  s.  c o  m*/
    }
}

From source file:org.apache.axis2.transport.http.server.ResponseSessionCookie.java

public void process(final HttpResponse response, final HttpContext context) throws HttpException, IOException {
    if (response == null) {
        throw new IllegalArgumentException("HTTP response may not be null");
    }/*from w w  w  .ja v a 2s .c  om*/
    if (context == null) {
        throw new IllegalArgumentException("HTTP context may not be null");
    }

    String sessionCookie = null;
    MessageContext msgctx = (MessageContext) context.getAttribute(AxisParams.MESSAGE_CONTEXT);
    if (msgctx != null) {
        sessionCookie = (String) msgctx.getProperty(HTTPConstants.COOKIE_STRING);
    }
    if (sessionCookie == null) {
        sessionCookie = (String) context.getAttribute(HTTPConstants.COOKIE_STRING);
    }
    if (sessionCookie != null) {
        // Generate Netscape style cookie header
        CharArrayBuffer buffer1 = new CharArrayBuffer(sessionCookie.length() + 40);
        buffer1.append(HTTPConstants.HEADER_SET_COOKIE);
        buffer1.append(": ");
        buffer1.append(Constants.SESSION_COOKIE_JSESSIONID);
        buffer1.append("=");
        buffer1.append(sessionCookie);
        response.addHeader(new BufferedHeader(buffer1));

        // Generate RFC2965 cookie2 header
        CharArrayBuffer buffer2 = new CharArrayBuffer(sessionCookie.length() + 50);
        buffer2.append(HTTPConstants.HEADER_SET_COOKIE2);
        buffer2.append(": ");
        buffer2.append(Constants.SESSION_COOKIE_JSESSIONID);
        buffer2.append("=");
        buffer2.append(sessionCookie);
        buffer2.append("; ");
        int port = response.getParams().getIntParameter(AxisParams.LISTENER_PORT, 0);
        if (port > 0) {
            buffer2.append("Port=\"");
            buffer2.append(Integer.toString(port));
            buffer2.append("\"; ");
        }
        buffer2.append("Version=1");
        response.addHeader(new BufferedHeader(buffer2));
    }
}