Example usage for org.apache.http.protocol ImmutableHttpProcessor ImmutableHttpProcessor

List of usage examples for org.apache.http.protocol ImmutableHttpProcessor ImmutableHttpProcessor

Introduction

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

Prototype

public ImmutableHttpProcessor(HttpResponseInterceptor... httpResponseInterceptorArr) 

Source Link

Usage

From source file:org.siddhiesb.transport.passthru.config.TargetConfiguration.java

public TargetConfiguration(WorkerPool workerPool, ProxyAuthenticator proxyAuthenticator) {
    super(workerPool);

    httpProcessor = new ImmutableHttpProcessor(
            new HttpRequestInterceptor[] { new RequestContent(), new RequestTargetHost(),
                    new RequestConnControl(), new RequestUserAgent(), new RequestExpectContinue() });
    this.proxyAuthenticator = proxyAuthenticator;
}

From source file:se.ginkou.interfaceio.InterfaceServer.java

public static void startServer() throws Exception {
    // HTTP parameters for the server
    HttpParams params = new SyncBasicHttpParams();
    params.setIntParameter(CoreConnectionPNames.SO_TIMEOUT, 5000)
            .setIntParameter(CoreConnectionPNames.SOCKET_BUFFER_SIZE, 8 * 1024)
            .setBooleanParameter(CoreConnectionPNames.TCP_NODELAY, true)
            .setParameter(CoreProtocolPNames.ORIGIN_SERVER, "HttpComponents/1.1");

    // Create HTTP protocol processing chain
    HttpProcessor httpproc = new ImmutableHttpProcessor(new HttpResponseInterceptor[] {
            // Use standard server-side protocol interceptors
            new ResponseDate(), new ResponseServer(), new ResponseContent(), new ResponseConnControl() });

    // Set up request handlers
    HttpAsyncRequestHandlerRegistry reqistry = new HttpAsyncRequestHandlerRegistry();
    reqistry.register("*/datatables", new DataTablesHandler());
    reqistry.register("*/loginmodules", new RuleFileHandler());
    reqistry.register("*/login", new LoginHandler());
    reqistry.register("*", new HttpFileHandler(new File("website")));
    reqistry.register("*/ping", new TestHandler());

    // Create server-side HTTP protocol handler
    HttpAsyncService protocolHandler = new HttpAsyncService(httpproc, new DefaultConnectionReuseStrategy(),
            reqistry, params) {/*from   w  ww . j  a va 2s.  c o  m*/

        @Override
        public void connected(final NHttpServerConnection conn) {
            System.out.println(conn + ": connection open");
            super.connected(conn);
        }

        @Override
        public void closed(final NHttpServerConnection conn) {
            System.out.println(conn + ": connection closed");
            super.closed(conn);
        }
    };
    // Create HTTP connection factory
    NHttpConnectionFactory<DefaultNHttpServerConnection> connFactory;

    //        // Initialize SSL context
    //        ClassLoader cl = NHttpServer.class.getClassLoader();
    //        URL url = cl.getResource("my.keystore");
    //        if (url == null) {
    //            System.out.println("Keystore not found");
    //            System.exit(1);
    //        }
    //        KeyStore keystore  = KeyStore.getInstance("jks");
    //        keystore.load(url.openStream(), "secret".toCharArray());
    //        KeyManagerFactory kmfactory = KeyManagerFactory.getInstance(
    //                KeyManagerFactory.getDefaultAlgorithm());
    //        kmfactory.init(keystore, "secret".toCharArray());
    //        KeyManager[] keymanagers = kmfactory.getKeyManagers();
    //        SSLContext sslcontext = SSLContext.getInstance("TLS");
    //        sslcontext.init(keymanagers, null, null);
    //        connFactory = new SSLNHttpServerConnectionFactory(sslcontext, null, params);
    connFactory = new DefaultNHttpServerConnectionFactory(params);

    // Create server-side I/O event dispatch
    IOEventDispatch ioEventDispatch = new DefaultHttpServerIODispatch(protocolHandler, connFactory);
    // Create server-side I/O reactor
    ListeningIOReactor ioReactor = new DefaultListeningIOReactor();
    try {
        // Listen of the given port
        ioReactor.listen(new InetSocketAddress(PORT));
        // Ready to go!
        ioReactor.execute(ioEventDispatch);
    } catch (InterruptedIOException ex) {
        System.err.println("Interrupted");
    } catch (IOException e) {
        System.err.println("I/O error: " + e.getMessage());
    }
    System.out.println("Shutdown");
}

From source file:org.apache.synapse.transport.passthru.config.TargetConfiguration.java

public TargetConfiguration(ConfigurationContext configurationContext, ParameterInclude parameters,
        WorkerPool pool, PassThroughTransportMetricsCollector metrics, ProxyAuthenticator proxyAuthenticator) {
    super(configurationContext, parameters, pool, metrics);

    httpProcessor = new ImmutableHttpProcessor(
            new HttpRequestInterceptor[] { new RequestContent(), new RequestTargetHost(),
                    new RequestConnControl(), new RequestUserAgent(), new RequestExpectContinue() });
    this.connectionTimeoutConfiguration = new ConnectionTimeoutConfiguration(conf.getConnectionIdleTime(),
            conf.getMaximumConnectionLifespan());
    this.proxyAuthenticator = proxyAuthenticator;
}

From source file:org.siddhiesb.transport.passthru.config.SourceConfiguration.java

public SourceConfiguration(Scheme scheme, WorkerPool workerPool) {
    super(workerPool);
    this.scheme = scheme;
    httpProcessor = new ImmutableHttpProcessor(new HttpResponseInterceptor[] { new ResponseDate(),
            new ResponseServer(), new ResponseContent(), new ResponseConnControl() });

    responseFactory = new DefaultHttpResponseFactory();

    sourceConnections = new SourceConnections();
}

From source file:niproxy.NiProxy.java

/**
 * Setups a monitoring http proxy and starts a non blocking listening
 * service based on a {@link NiProxyConfig}. This is based on the Apache 
 * Software Foundation's example code "Basic non-blocking HTTP server" that 
 * can be found from http://hc.apache.org/httpcomponents-core-ga/examples.html. 
 *///from   ww w. j  a  va  2 s .  c  om
public NiProxy() {
    HttpParams params = new SyncBasicHttpParams();
    params.setIntParameter(CoreConnectionPNames.SO_TIMEOUT, NiProxyConfig.getHttpConnectionTimeout())
            .setIntParameter(CoreConnectionPNames.SOCKET_BUFFER_SIZE, 8 * 1024)
            .setBooleanParameter(CoreConnectionPNames.STALE_CONNECTION_CHECK, false)
            .setBooleanParameter(CoreConnectionPNames.TCP_NODELAY, true);

    HttpProcessor httpproc = new ImmutableHttpProcessor(new HttpResponseInterceptor[] { new ResponseDate(),
            new ResponseServer(), new ResponseContent(), new ResponseConnControl() });

    AsyncNHttpServiceHandler handler = new AsyncNHttpServiceHandler(httpproc, new DefaultHttpResponseFactory(),
            new DefaultConnectionReuseStrategy(), params);

    // Set up request handlers
    NHttpRequestHandlerRegistry registry = new NHttpRequestHandlerRegistry();
    registry.register("*", NiProxyMonitor.get());

    handler.setHandlerResolver(registry);

    // Provide an event logger
    handler.setEventListener(new EventLogger());

    IOEventDispatch ioEventDispatch = new DefaultServerIOEventDispatch(handler, params);
    try {
        logger.info("Setting up " + NiProxyConfig.getIOReactorWorkersCount() + " IOReactor workers");
        ListeningIOReactor ioReactor = new DefaultListeningIOReactor(NiProxyConfig.getIOReactorWorkersCount(),
                params);
        String host = NiProxyConfig.getNiProxyHost();
        int port = NiProxyConfig.getNiProxyPort();
        logger.info("Listening for connections at " + host + ":" + port);
        ioReactor.listen(new InetSocketAddress(host, port));
        logger.info("NiProxy set up done. Launching event dispatch...");
        ioReactor.execute(ioEventDispatch);
    } catch (Exception e) {
        logger.error("I/O reactor was interrupted. Exception: " + e);
        e.printStackTrace();
    }
    logger.info("NiProxy server shutdown.");
}

From source file:org.apache.synapse.transport.passthru.config.SourceConfiguration.java

public SourceConfiguration(ConfigurationContext configurationContext, TransportInDescription description,
        Scheme scheme, WorkerPool pool, PassThroughTransportMetricsCollector metrics) {
    super(configurationContext, description, pool, metrics);
    this.inDescription = description;
    this.scheme = scheme;
    httpProcessor = new ImmutableHttpProcessor(new HttpResponseInterceptor[] { new ResponseDate(),
            new ResponseServer(), new ResponseContent(), new ResponseConnControl() });

    responseFactory = new DefaultHttpResponseFactory();

    sourceConnections = new SourceConnections();
}

From source file:com.k42b3.aletheia.protocol.http.HttpProtocol.java

public HttpProtocol() {
    // http settings
    params = new SyncBasicHttpParams();
    HttpProtocolParams.setVersion(params, HttpVersion.HTTP_1_1);
    HttpProtocolParams.setContentCharset(params, "UTF-8");
    HttpProtocolParams.setUseExpectContinue(params, true);

    HttpRequestInterceptor[] interceptors = { new RequestContent(true), new RequestTargetHost(),
            new RequestConnControl(), new RequestExpectContinue() };

    httpproc = new ImmutableHttpProcessor(interceptors);
    httpexecutor = new HttpRequestExecutor();
}

From source file:com.couchbase.client.ClusterManager.java

/**
 * Creates a connection to the Couchbase REST interface.
 *
 * @param uris A list of servers in the cluster.
 * @param username The cluster admin user name.
 * @param password The cluster admin password.
 *//*from   w  w  w . ja  v  a2  s  .  co  m*/
public ClusterManager(List<URI> uris, String username, String password) {
    addrs = uris;
    user = username;
    pass = password;

    httpproc = new ImmutableHttpProcessor(
            new HttpRequestInterceptor[] { new RequestContent(), new RequestTargetHost(),
                    new RequestConnControl(), new RequestUserAgent(), new RequestExpectContinue() });

    httpexecutor = new HttpRequestExecutor();
    context = new BasicHttpContext(null);
    conn = new DefaultHttpClientConnection();
}

From source file:org.cytoscape.app.internal.net.server.CyHttpdFactoryImpl.java

public CyHttpdImpl(final ServerSocketFactory serverSocketFactory) {
    if (serverSocketFactory == null)
        throw new IllegalArgumentException("serverSocketFactory == null");
    this.serverSocketFactory = serverSocketFactory;

    // Setup params

    params = (new SyncBasicHttpParams()).setIntParameter(CoreConnectionPNames.SO_TIMEOUT, 5000)
            .setIntParameter(CoreConnectionPNames.SOCKET_BUFFER_SIZE, 8 * 1024)
            .setBooleanParameter(CoreConnectionPNames.STALE_CONNECTION_CHECK, false)
            .setBooleanParameter(CoreConnectionPNames.TCP_NODELAY, true)
            .setParameter(CoreProtocolPNames.ORIGIN_SERVER, "HttpComponents/1.1");

    // Setup service

    final HttpProcessor proc = new ImmutableHttpProcessor(new HttpResponseInterceptor[] { new ResponseDate(),
            new ResponseServer(), new ResponseContent(), new ResponseConnControl() });

    final HttpRequestHandlerRegistry registry = new HttpRequestHandlerRegistry();
    registry.register("*", new RequestHandlerDispatcher());

    service = new HttpService(proc, new DefaultConnectionReuseStrategy(), new DefaultHttpResponseFactory(),
            registry, params);//from w  ww. ja  v a 2  s  .  c om
}

From source file:net.spy.memcached.CouchbaseConnection.java

private List<CouchbaseNode> createConnections(List<InetSocketAddress> addrs) throws IOException {
    List<CouchbaseNode> nodeList = new LinkedList<CouchbaseNode>();

    for (InetSocketAddress a : addrs) {
        HttpParams params = new SyncBasicHttpParams();
        params.setIntParameter(CoreConnectionPNames.SO_TIMEOUT, 5000)
                .setIntParameter(CoreConnectionPNames.CONNECTION_TIMEOUT, 5000)
                .setIntParameter(CoreConnectionPNames.SOCKET_BUFFER_SIZE, 8 * 1024)
                .setBooleanParameter(CoreConnectionPNames.STALE_CONNECTION_CHECK, false)
                .setBooleanParameter(CoreConnectionPNames.TCP_NODELAY, true)
                .setParameter(CoreProtocolPNames.USER_AGENT, "Spymemcached Client/1.1");

        HttpProcessor httpproc = new ImmutableHttpProcessor(
                new HttpRequestInterceptor[] { new RequestContent(), new RequestTargetHost(),
                        new RequestConnControl(), new RequestUserAgent(), new RequestExpectContinue(), });

        AsyncNHttpClientHandler protocolHandler = new AsyncNHttpClientHandler(httpproc,
                new MyHttpRequestExecutionHandler(), new DefaultConnectionReuseStrategy(),
                new DirectByteBufferAllocator(), params);
        protocolHandler.setEventListener(new EventLogger());

        AsyncConnectionManager connMgr = new AsyncConnectionManager(new HttpHost(a.getHostName(), a.getPort()),
                NUM_CONNS, protocolHandler, params);
        getLogger().info("Added %s to connect queue", a);

        CouchbaseNode node = connFactory.createCouchDBNode(a, connMgr);
        node.init();/*from   ww w .  j  a  va2 s  . co  m*/
        nodeList.add(node);
    }

    return nodeList;
}