Package org.glassfish.jersey.client

Examples of org.glassfish.jersey.client.ClientConfig


    public void testAutoDiscoverableGlobalEnabledServerDisabled() throws Exception {
        _test("Disabled", false, true);
    }

    private void _test(final String response, final Boolean globalDisable, final Boolean clientDisable) throws Exception {
        final ClientConfig config = new ClientConfig();
        config.register(Filter.class);

        if (globalDisable != null) {
            config.property(CommonProperties.JSON_PROCESSING_FEATURE_DISABLE, globalDisable);
        }
        if (clientDisable != null) {
            config.property(ClientProperties.JSON_PROCESSING_FEATURE_DISABLE, clientDisable);
        }

        final Client client = ClientBuilder.newClient(config);
        final Invocation.Builder request = client.target("").request();
View Full Code Here


     * @param clientConfig test client default configuration. May be {@code null}.
     * @return A Client instance.
     */
    private Client getClient(ClientConfig clientConfig) {
        if (clientConfig == null) {
            clientConfig = new ClientConfig();
        }

        //check if logging is required
        if (isEnabled(TestProperties.LOG_TRAFFIC)) {
            clientConfig.register(new LoggingFilter(LOGGER, isEnabled(TestProperties.DUMP_ENTITY)));
View Full Code Here

    }

    @Test
    public void testAsyncClientRequests() throws InterruptedException {
        HttpClientConnectionManager connectionManager = new PoolingHttpClientConnectionManager();
        ClientConfig cc = new ClientConfig();
        cc.property(ApacheClientProperties.CONNECTION_MANAGER, connectionManager);
        cc.connectorProvider(new ApacheConnectorProvider());
        Client client = ClientBuilder.newClient(cc);
        WebTarget target = client.target(getBaseUri());
        final int REQUESTS = 20;
        final CountDownLatch latch = new CountDownLatch(REQUESTS);
        final long tic = System.currentTimeMillis();
View Full Code Here

    @Test
    public void testConnectionClosingOnExceptionsForErrorResponses() {
        final BasicClientConnectionManager cm = new BasicClientConnectionManager();
        final AtomicInteger connectionCounter = new AtomicInteger(0);

        final ClientConfig config = new ClientConfig().property(ApacheClientProperties.CONNECTION_MANAGER,
                new ClientConnectionManager() {
                    @Override
                    public SchemeRegistry getSchemeRegistry() {
                        return cm.getSchemeRegistry();
                    }

                    @Override
                    public ClientConnectionRequest requestConnection(final HttpRoute route, final Object state) {
                        connectionCounter.incrementAndGet();

                        final ClientConnectionRequest wrappedRequest = cm.requestConnection(route, state);

                        /**
                         * To explain the following long piece of code:
                         *
                         * All the code does is to just create a wrapper implementations
                         * for the AHC connection management interfaces.
                         *
                         * The only really important piece of code is the
                         * {@link org.apache.http.conn.ManagedClientConnection#releaseConnection()} implementation,
                         * where the connectionCounter is decremented when a managed connection instance
                         * is released by AHC runtime. In our test, this is expected to happen
                         * as soon as the exception is created for an error response
                         * (as the error response entity gets buffered in
                         * {@link org.glassfish.jersey.client.JerseyInvocation#convertToException(javax.ws.rs.core.Response)}).
                         */
                        return new ClientConnectionRequest() {
                            @Override
                            public ManagedClientConnection getConnection(long timeout, TimeUnit tunit)
                                    throws InterruptedException, ConnectionPoolTimeoutException {

                                final ManagedClientConnection wrappedConnection = wrappedRequest.getConnection(timeout, tunit);

                                return new ManagedClientConnection() {
                                    @Override
                                    public boolean isSecure() {
                                        return wrappedConnection.isSecure();
                                    }

                                    @Override
                                    public HttpRoute getRoute() {
                                        return wrappedConnection.getRoute();
                                    }

                                    @Override
                                    public SSLSession getSSLSession() {
                                        return wrappedConnection.getSSLSession();
                                    }

                                    @Override
                                    public void open(HttpRoute route, HttpContext context, HttpParams params) throws IOException {
                                        wrappedConnection.open(route, context, params);
                                    }

                                    @Override
                                    public void tunnelTarget(boolean secure, HttpParams params) throws IOException {
                                        wrappedConnection.tunnelTarget(secure, params);
                                    }

                                    @Override
                                    public void tunnelProxy(HttpHost next, boolean secure, HttpParams params) throws IOException {
                                        wrappedConnection.tunnelProxy(next, secure, params);
                                    }

                                    @Override
                                    public void layerProtocol(HttpContext context, HttpParams params) throws IOException {
                                        wrappedConnection.layerProtocol(context, params);
                                    }

                                    @Override
                                    public void markReusable() {
                                        wrappedConnection.markReusable();
                                    }

                                    @Override
                                    public void unmarkReusable() {
                                        wrappedConnection.unmarkReusable();
                                    }

                                    @Override
                                    public boolean isMarkedReusable() {
                                        return wrappedConnection.isMarkedReusable();
                                    }

                                    @Override
                                    public void setState(Object state) {
                                        wrappedConnection.setState(state);
                                    }

                                    @Override
                                    public Object getState() {
                                        return wrappedConnection.getState();
                                    }

                                    @Override
                                    public void setIdleDuration(long duration, TimeUnit unit) {
                                        wrappedConnection.setIdleDuration(duration, unit);
                                    }

                                    @Override
                                    public boolean isResponseAvailable(int timeout) throws IOException {
                                        return wrappedConnection.isResponseAvailable(timeout);
                                    }

                                    @Override
                                    public void sendRequestHeader(HttpRequest request) throws HttpException, IOException {
                                        wrappedConnection.sendRequestHeader(request);
                                    }

                                    @Override
                                    public void sendRequestEntity(HttpEntityEnclosingRequest request)
                                            throws HttpException, IOException {
                                        wrappedConnection.sendRequestEntity(request);
                                    }

                                    @Override
                                    public HttpResponse receiveResponseHeader() throws HttpException, IOException {
                                        return wrappedConnection.receiveResponseHeader();
                                    }

                                    @Override
                                    public void receiveResponseEntity(HttpResponse response) throws HttpException, IOException {
                                        wrappedConnection.receiveResponseEntity(response);
                                    }

                                    @Override
                                    public void flush() throws IOException {
                                        wrappedConnection.flush();
                                    }

                                    @Override
                                    public void close() throws IOException {
                                        wrappedConnection.close();
                                    }

                                    @Override
                                    public boolean isOpen() {
                                        return wrappedConnection.isOpen();
                                    }

                                    @Override
                                    public boolean isStale() {
                                        return wrappedConnection.isStale();
                                    }

                                    @Override
                                    public void setSocketTimeout(int timeout) {
                                        wrappedConnection.setSocketTimeout(timeout);
                                    }

                                    @Override
                                    public int getSocketTimeout() {
                                        return wrappedConnection.getSocketTimeout();
                                    }

                                    @Override
                                    public void shutdown() throws IOException {
                                        wrappedConnection.shutdown();
                                    }

                                    @Override
                                    public HttpConnectionMetrics getMetrics() {
                                        return wrappedConnection.getMetrics();
                                    }

                                    @Override
                                    public InetAddress getLocalAddress() {
                                        return wrappedConnection.getLocalAddress();
                                    }

                                    @Override
                                    public int getLocalPort() {
                                        return wrappedConnection.getLocalPort();
                                    }

                                    @Override
                                    public InetAddress getRemoteAddress() {
                                        return wrappedConnection.getRemoteAddress();
                                    }

                                    @Override
                                    public int getRemotePort() {
                                        return wrappedConnection.getRemotePort();
                                    }

                                    @Override
                                    public void releaseConnection() throws IOException {
                                        connectionCounter.decrementAndGet();
                                        wrappedConnection.releaseConnection();
                                    }

                                    @Override
                                    public void abortConnection() throws IOException {
                                        wrappedConnection.abortConnection();
                                    }

                                    @Override
                                    public String getId() {
                                        return wrappedConnection.getId();
                                    }

                                    @Override
                                    public void bind(Socket socket) throws IOException {
                                        wrappedConnection.bind(socket);
                                    }

                                    @Override
                                    public Socket getSocket() {
                                        return wrappedConnection.getSocket();
                                    }
                                };
                            }

                            @Override
                            public void abortRequest() {
                                wrappedRequest.abortRequest();
                            }
                        };
                    }

                    @Override
                    public void releaseConnection(ManagedClientConnection conn, long keepalive, TimeUnit tunit) {
                        cm.releaseConnection(conn, keepalive, tunit);
                    }

                    @Override
                    public void closeExpiredConnections() {
                        cm.closeExpiredConnections();
                    }

                    @Override
                    public void closeIdleConnections(long idletime, TimeUnit tunit) {
                        cm.closeIdleConnections(idletime, tunit);
                    }

                    @Override
                    public void shutdown() {
                        cm.shutdown();
                    }
                });
        config.connectorProvider(new ApacheConnectorProvider());

        final Client client = ClientBuilder.newClient(config);
        final WebTarget rootTarget = client.target(getBaseUri()).path(ROOT_PATH);

        // Test that connection is getting closed properly for error responses.
View Full Code Here

    /**
     * Verifier of JERSEY-2424 fix.
     */
    @Test
    public void testHttpClientInstanceAccess() {
        final Client client = ClientBuilder.newClient(new ClientConfig().connectorProvider(new JettyConnectorProvider()));
        final HttpClient hcOnClient = JettyConnectorProvider.getHttpClient(client);
        // important: the web target instance in this test must be only created AFTER the client has been pre-initialized
        // (see org.glassfish.jersey.client.Initializable.preInitialize method). This is here achieved by calling the
        // connector provider's static getHttpClient method above.
        final WebTarget target = client.target("http://localhost/");
View Full Code Here

        return config;
    }

    @Test
    public void testCookieResource() {
        ClientConfig config = new ClientConfig();
        config.connectorProvider(new JettyConnectorProvider());
        Client client = ClientBuilder.newClient(config);
        WebTarget r = client.target(getBaseUri());


        assertEquals("NO-COOKIE", r.request().get(String.class));
View Full Code Here

        client.close();
    }

    @Test
    public void testDisabledCookies() {
        ClientConfig cc = new ClientConfig();
        cc.property(JettyClientProperties.DISABLE_COOKIES, true);
        cc.connectorProvider(new JettyConnectorProvider());
        JerseyClient client = JerseyClientBuilder.createClient(cc);
        WebTarget r = client.target(getBaseUri());

        assertEquals("NO-COOKIE", r.request().get(String.class));
        assertEquals("NO-COOKIE", r.request().get(String.class));
View Full Code Here

        client.close();
    }

    @Test
    public void testCookies() {
        ClientConfig cc = new ClientConfig();
        cc.connectorProvider(new JettyConnectorProvider());
        JerseyClient client = JerseyClientBuilder.createClient(cc);
        WebTarget r = client.target(getBaseUri());

        assertEquals("NO-COOKIE", r.request().get(String.class));
        assertEquals("value", r.request().get(String.class));
View Full Code Here

    }

    @Test
    public void testDoFollow() {
        final URI u = target().getUri();
        ClientConfig config = new ClientConfig().property(ClientProperties.FOLLOW_REDIRECTS, true);
        config.connectorProvider(new JettyConnectorProvider());
        Client c = ClientBuilder.newClient(config);
        WebTarget t = c.target(u);
        Response r = t.path("test/redirect")
                .register(RedirectTestFilter.class)
                .request().get();
View Full Code Here

    }

    @Test
    public void testDontFollowPerRequestOverride() {
        final URI u = target().getUri();
        ClientConfig config = new ClientConfig().property(ClientProperties.FOLLOW_REDIRECTS, true);
        config.connectorProvider(new JettyConnectorProvider());
        Client client = ClientBuilder.newClient(config);
        WebTarget t = client.target(u);
        t.property(ClientProperties.FOLLOW_REDIRECTS, false);
        Response r = t.path("test/redirect").request().get();
        assertEquals(303, r.getStatus());
View Full Code Here

TOP

Related Classes of org.glassfish.jersey.client.ClientConfig

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.