Search in sources :

Example 1 with HttpResponseMessageImpl

use of com.netflix.zuul.message.http.HttpResponseMessageImpl in project zuul by Netflix.

the class ZuulFilterChainRunnerTest method before.

@Before
public void before() {
    SessionContext context = new SessionContext();
    Headers headers = new Headers();
    ChannelHandlerContext chc = mock(ChannelHandlerContext.class);
    when(chc.executor()).thenReturn(ImmediateEventExecutor.INSTANCE);
    context.put(NETTY_SERVER_CHANNEL_HANDLER_CONTEXT, chc);
    request = new HttpRequestMessageImpl(context, "http", "GET", "/foo/bar", new HttpQueryParams(), headers, "127.0.0.1", "http", 8080, "server123");
    request.storeInboundRequest();
    response = new HttpResponseMessageImpl(context, request, 200);
}
Also used : Headers(com.netflix.zuul.message.Headers) HttpQueryParams(com.netflix.zuul.message.http.HttpQueryParams) HttpResponseMessageImpl(com.netflix.zuul.message.http.HttpResponseMessageImpl) SessionContext(com.netflix.zuul.context.SessionContext) ChannelHandlerContext(io.netty.channel.ChannelHandlerContext) HttpRequestMessageImpl(com.netflix.zuul.message.http.HttpRequestMessageImpl) Before(org.junit.Before)

Example 2 with HttpResponseMessageImpl

use of com.netflix.zuul.message.http.HttpResponseMessageImpl in project zuul by Netflix.

the class HttpUtilsTest method getBodySizeIfKnown_returnsResponseBodySize.

@Test
public void getBodySizeIfKnown_returnsResponseBodySize() {
    SessionContext context = new SessionContext();
    Headers headers = new Headers();
    HttpQueryParams queryParams = new HttpQueryParams();
    HttpRequestMessage request = new HttpRequestMessageImpl(context, "http", "GET", "/path", queryParams, headers, "127.0.0.1", "scheme", 6666, "server-name");
    request.storeInboundRequest();
    HttpResponseMessage response = new HttpResponseMessageImpl(context, request, 200);
    response.setBodyAsText("Hello world");
    assertThat(HttpUtils.getBodySizeIfKnown(response)).isEqualTo(Integer.valueOf(11));
}
Also used : HttpResponseMessage(com.netflix.zuul.message.http.HttpResponseMessage) Headers(com.netflix.zuul.message.Headers) HttpRequestMessage(com.netflix.zuul.message.http.HttpRequestMessage) HttpQueryParams(com.netflix.zuul.message.http.HttpQueryParams) HttpResponseMessageImpl(com.netflix.zuul.message.http.HttpResponseMessageImpl) SessionContext(com.netflix.zuul.context.SessionContext) HttpRequestMessageImpl(com.netflix.zuul.message.http.HttpRequestMessageImpl) Test(org.junit.Test)

Example 3 with HttpResponseMessageImpl

use of com.netflix.zuul.message.http.HttpResponseMessageImpl in project zuul by Netflix.

the class DebugTest method setup.

@Before
public void setup() {
    ctx = new SessionContext();
    headers = new Headers();
    headers.add("lah", "deda");
    params = new HttpQueryParams();
    params.add("k1", "v1");
    request = new HttpRequestBuilder(ctx).withMethod(HttpMethod.POST).withUri("/some/where").withHeaders(headers).withQueryParams(params).build();
    request.setBodyAsText("some text");
    request.storeInboundRequest();
    response = new HttpResponseMessageImpl(ctx, headers, request, 200);
    response.setBodyAsText("response text");
}
Also used : Headers(com.netflix.zuul.message.Headers) HttpQueryParams(com.netflix.zuul.message.http.HttpQueryParams) HttpResponseMessageImpl(com.netflix.zuul.message.http.HttpResponseMessageImpl) HttpRequestBuilder(com.netflix.zuul.message.util.HttpRequestBuilder) Before(org.junit.Before)

Example 4 with HttpResponseMessageImpl

use of com.netflix.zuul.message.http.HttpResponseMessageImpl in project zuul by Netflix.

the class ProxyEndpoint method handleError.

private void handleError(final Throwable cause) {
    final ZuulException ze = (cause instanceof ZuulException) ? (ZuulException) cause : requestAttemptFactory.mapNettyToOutboundException(cause, context);
    LOG.debug("Proxy endpoint failed.", cause);
    if (!startedSendingResponseToClient) {
        startedSendingResponseToClient = true;
        zuulResponse = new HttpResponseMessageImpl(context, zuulRequest, ze.getStatusCode());
        // TODO - why close the connection? maybe don't always want this to happen ...
        zuulResponse.getHeaders().add("Connection", "close");
        zuulResponse.finishBufferedBodyIfIncomplete();
        invokeNext(zuulResponse);
    } else {
        channelCtx.fireExceptionCaught(ze);
    }
}
Also used : HttpResponseMessageImpl(com.netflix.zuul.message.http.HttpResponseMessageImpl) ZuulException(com.netflix.zuul.exception.ZuulException)

Example 5 with HttpResponseMessageImpl

use of com.netflix.zuul.message.http.HttpResponseMessageImpl in project zuul by Netflix.

the class ProxyEndpoint method handleNoOriginSelected.

private void handleNoOriginSelected() {
    StatusCategoryUtils.setStatusCategory(context, SUCCESS_LOCAL_NO_ROUTE);
    startedSendingResponseToClient = true;
    zuulResponse = new HttpResponseMessageImpl(context, zuulRequest, 404);
    zuulResponse.finishBufferedBodyIfIncomplete();
    invokeNext(zuulResponse);
}
Also used : HttpResponseMessageImpl(com.netflix.zuul.message.http.HttpResponseMessageImpl)

Aggregations

HttpResponseMessageImpl (com.netflix.zuul.message.http.HttpResponseMessageImpl)9 SessionContext (com.netflix.zuul.context.SessionContext)5 Headers (com.netflix.zuul.message.Headers)5 HttpQueryParams (com.netflix.zuul.message.http.HttpQueryParams)3 HttpResponseMessage (com.netflix.zuul.message.http.HttpResponseMessage)3 Before (org.junit.Before)3 ZuulException (com.netflix.zuul.exception.ZuulException)2 HttpRequestMessageImpl (com.netflix.zuul.message.http.HttpRequestMessageImpl)2 ClientException (com.netflix.client.ClientException)1 HttpRequestMessage (com.netflix.zuul.message.http.HttpRequestMessage)1 HttpRequestBuilder (com.netflix.zuul.message.util.HttpRequestBuilder)1 ByteBuf (io.netty.buffer.ByteBuf)1 ChannelHandlerContext (io.netty.channel.ChannelHandlerContext)1 DefaultFullHttpResponse (io.netty.handler.codec.http.DefaultFullHttpResponse)1 DefaultLastHttpContent (io.netty.handler.codec.http.DefaultLastHttpContent)1 HashMap (java.util.HashMap)1 Map (java.util.Map)1 Test (org.junit.Test)1