Search in sources :

Example 1 with HttpRequestHandlerChain

use of org.apache.commons.httpclient.server.HttpRequestHandlerChain in project ecf by eclipse.

the class TestProxy method testPostInteractiveProxyAuthHostAuthConnKeepAlive.

/**
 * Tests POST via non-authenticating proxy + interactive host auth + connection keep-alive
 */
public void testPostInteractiveProxyAuthHostAuthConnKeepAlive() throws Exception {
    UsernamePasswordCredentials creds = new UsernamePasswordCredentials("testuser", "testpass");
    this.client.getParams().setParameter(CredentialsProvider.PROVIDER, new GetItWrongThenGetItRight());
    HttpRequestHandlerChain handlerchain = new HttpRequestHandlerChain();
    handlerchain.appendHandler(new AuthRequestHandler(creds, "test", true));
    handlerchain.appendHandler(new HttpServiceHandler(new FeedbackService()));
    this.server.setRequestHandler(handlerchain);
    this.proxy.requireAuthentication(creds, "test", true);
    PostMethod post = new PostMethod("/");
    post.setRequestEntity(new StringRequestEntity("Like tons of stuff"));
    try {
        this.client.executeMethod(post);
        assertEquals(HttpStatus.SC_OK, post.getStatusCode());
        assertNotNull(post.getResponseBodyAsString());
    } finally {
        post.releaseConnection();
    }
}
Also used : StringRequestEntity(org.apache.commons.httpclient.methods.StringRequestEntity) HttpServiceHandler(org.apache.commons.httpclient.server.HttpServiceHandler) PostMethod(org.apache.commons.httpclient.methods.PostMethod) HttpRequestHandlerChain(org.apache.commons.httpclient.server.HttpRequestHandlerChain) AuthRequestHandler(org.apache.commons.httpclient.server.AuthRequestHandler)

Example 2 with HttpRequestHandlerChain

use of org.apache.commons.httpclient.server.HttpRequestHandlerChain in project ecf by eclipse.

the class TestProxy method testGetProxyAuthHostAuthConnKeepAlive.

/**
 * Tests GET via authenticating proxy + host auth + connection keep-alive
 */
public void testGetProxyAuthHostAuthConnKeepAlive() throws Exception {
    UsernamePasswordCredentials creds = new UsernamePasswordCredentials("testuser", "testpass");
    this.client.getState().setCredentials(AuthScope.ANY, creds);
    this.client.getState().setProxyCredentials(AuthScope.ANY, creds);
    HttpRequestHandlerChain handlerchain = new HttpRequestHandlerChain();
    handlerchain.appendHandler(new AuthRequestHandler(creds, "test", true));
    handlerchain.appendHandler(new HttpServiceHandler(new FeedbackService()));
    this.server.setRequestHandler(handlerchain);
    this.proxy.requireAuthentication(creds, "test", true);
    GetMethod get = new GetMethod("/");
    try {
        this.client.executeMethod(get);
        assertEquals(HttpStatus.SC_OK, get.getStatusCode());
    } finally {
        get.releaseConnection();
    }
}
Also used : HttpServiceHandler(org.apache.commons.httpclient.server.HttpServiceHandler) HttpRequestHandlerChain(org.apache.commons.httpclient.server.HttpRequestHandlerChain) GetMethod(org.apache.commons.httpclient.methods.GetMethod) AuthRequestHandler(org.apache.commons.httpclient.server.AuthRequestHandler)

Example 3 with HttpRequestHandlerChain

use of org.apache.commons.httpclient.server.HttpRequestHandlerChain in project ecf by eclipse.

the class TestProxy method testPostProxyAuthHostAuthConnKeepAlive.

/**
 * Tests POST via authenticating proxy + host auth + connection keep-alive
 */
public void testPostProxyAuthHostAuthConnKeepAlive() throws Exception {
    UsernamePasswordCredentials creds = new UsernamePasswordCredentials("testuser", "testpass");
    this.client.getState().setCredentials(AuthScope.ANY, creds);
    this.client.getState().setProxyCredentials(AuthScope.ANY, creds);
    HttpRequestHandlerChain handlerchain = new HttpRequestHandlerChain();
    handlerchain.appendHandler(new AuthRequestHandler(creds, "test", true));
    handlerchain.appendHandler(new HttpServiceHandler(new FeedbackService()));
    this.server.setRequestHandler(handlerchain);
    this.proxy.requireAuthentication(creds, "test", true);
    PostMethod post = new PostMethod("/");
    post.setRequestEntity(new StringRequestEntity("Like tons of stuff"));
    try {
        this.client.executeMethod(post);
        assertEquals(HttpStatus.SC_OK, post.getStatusCode());
        assertNotNull(post.getResponseBodyAsString());
    } finally {
        post.releaseConnection();
    }
}
Also used : StringRequestEntity(org.apache.commons.httpclient.methods.StringRequestEntity) HttpServiceHandler(org.apache.commons.httpclient.server.HttpServiceHandler) PostMethod(org.apache.commons.httpclient.methods.PostMethod) HttpRequestHandlerChain(org.apache.commons.httpclient.server.HttpRequestHandlerChain) AuthRequestHandler(org.apache.commons.httpclient.server.AuthRequestHandler)

Example 4 with HttpRequestHandlerChain

use of org.apache.commons.httpclient.server.HttpRequestHandlerChain in project ecf by eclipse.

the class TestProxy method testGetInteractiveHostAuthConnKeepAlive.

/**
 * Tests GET via non-authenticating proxy + interactive host auth + connection keep-alive
 */
public void testGetInteractiveHostAuthConnKeepAlive() throws Exception {
    UsernamePasswordCredentials creds = new UsernamePasswordCredentials("testuser", "testpass");
    this.client.getParams().setParameter(CredentialsProvider.PROVIDER, new GetItWrongThenGetItRight());
    HttpRequestHandlerChain handlerchain = new HttpRequestHandlerChain();
    handlerchain.appendHandler(new AuthRequestHandler(creds, "test", true));
    handlerchain.appendHandler(new HttpServiceHandler(new FeedbackService()));
    this.server.setRequestHandler(handlerchain);
    GetMethod get = new GetMethod("/");
    try {
        this.client.executeMethod(get);
        assertEquals(HttpStatus.SC_OK, get.getStatusCode());
    } finally {
        get.releaseConnection();
    }
}
Also used : HttpServiceHandler(org.apache.commons.httpclient.server.HttpServiceHandler) HttpRequestHandlerChain(org.apache.commons.httpclient.server.HttpRequestHandlerChain) GetMethod(org.apache.commons.httpclient.methods.GetMethod) AuthRequestHandler(org.apache.commons.httpclient.server.AuthRequestHandler)

Example 5 with HttpRequestHandlerChain

use of org.apache.commons.httpclient.server.HttpRequestHandlerChain in project ecf by eclipse.

the class TestProxy method testPostInteractiveHostAuthConnKeepAlive.

/**
 * Tests POST via non-authenticating proxy + interactive host auth + connection keep-alive
 */
public void testPostInteractiveHostAuthConnKeepAlive() throws Exception {
    UsernamePasswordCredentials creds = new UsernamePasswordCredentials("testuser", "testpass");
    this.client.getParams().setParameter(CredentialsProvider.PROVIDER, new GetItWrongThenGetItRight());
    HttpRequestHandlerChain handlerchain = new HttpRequestHandlerChain();
    handlerchain.appendHandler(new AuthRequestHandler(creds, "test", true));
    handlerchain.appendHandler(new HttpServiceHandler(new FeedbackService()));
    this.server.setRequestHandler(handlerchain);
    PostMethod post = new PostMethod("/");
    post.setRequestEntity(new StringRequestEntity("Like tons of stuff"));
    try {
        this.client.executeMethod(post);
        assertEquals(HttpStatus.SC_OK, post.getStatusCode());
        assertNotNull(post.getResponseBodyAsString());
    } finally {
        post.releaseConnection();
    }
}
Also used : StringRequestEntity(org.apache.commons.httpclient.methods.StringRequestEntity) HttpServiceHandler(org.apache.commons.httpclient.server.HttpServiceHandler) PostMethod(org.apache.commons.httpclient.methods.PostMethod) HttpRequestHandlerChain(org.apache.commons.httpclient.server.HttpRequestHandlerChain) AuthRequestHandler(org.apache.commons.httpclient.server.AuthRequestHandler)

Aggregations

AuthRequestHandler (org.apache.commons.httpclient.server.AuthRequestHandler)37 HttpRequestHandlerChain (org.apache.commons.httpclient.server.HttpRequestHandlerChain)37 HttpServiceHandler (org.apache.commons.httpclient.server.HttpServiceHandler)37 GetMethod (org.apache.commons.httpclient.methods.GetMethod)22 UsernamePasswordCredentials (org.apache.commons.httpclient.UsernamePasswordCredentials)14 StringRequestEntity (org.apache.commons.httpclient.methods.StringRequestEntity)14 PostMethod (org.apache.commons.httpclient.methods.PostMethod)13 FeedbackService (org.apache.commons.httpclient.FeedbackService)12 HttpState (org.apache.commons.httpclient.HttpState)11 Header (org.apache.commons.httpclient.Header)10 ByteArrayInputStream (java.io.ByteArrayInputStream)2 InputStream (java.io.InputStream)2 EchoService (org.apache.commons.httpclient.EchoService)2 InputStreamRequestEntity (org.apache.commons.httpclient.methods.InputStreamRequestEntity)2 RequestEntity (org.apache.commons.httpclient.methods.RequestEntity)2 HeadMethod (org.apache.commons.httpclient.methods.HeadMethod)1 PutMethod (org.apache.commons.httpclient.methods.PutMethod)1