Example usage for io.netty.handler.codec.http HttpMethod GET

List of usage examples for io.netty.handler.codec.http HttpMethod GET

Introduction

In this page you can find the example usage for io.netty.handler.codec.http HttpMethod GET.

Prototype

HttpMethod GET

To view the source code for io.netty.handler.codec.http HttpMethod GET.

Click Source Link

Document

The GET method means retrieve whatever information (in the form of an entity) is identified by the Request-URI.

Usage

From source file:com.linkedin.flashback.netty.builder.RecordedHttpMessageBuilderTest.java

License:Open Source License

@Test
public void testAddHeaders() throws Exception {
    HttpRequest nettyRequest = new DefaultFullHttpRequest(HttpVersion.HTTP_1_0, HttpMethod.GET,
            "www.google.com");
    nettyRequest.headers().add("key1", "value1");
    nettyRequest.headers().add("key1", "value2");
    nettyRequest.headers().add("key2", "value1");
    RecordedHttpRequestBuilder recordedHttpRequestBuilder = new RecordedHttpRequestBuilder(nettyRequest);
    Map<String, String> headers = recordedHttpRequestBuilder.getHeaders();
    Assert.assertEquals(headers.size(), 2);
}

From source file:com.linkedin.flashback.netty.builder.RecordedHttpMessageBuilderTest.java

License:Open Source License

@Test
public void testGetHeaders() throws Exception {
    HttpRequest nettyRequest = new DefaultFullHttpRequest(HttpVersion.HTTP_1_0, HttpMethod.GET,
            "www.google.com");
    nettyRequest.headers().add("key1", "value1");
    nettyRequest.headers().add("key1", "value2");
    nettyRequest.headers().add("key2", "value1");
    RecordedHttpRequestBuilder recordedHttpRequestBuilder = new RecordedHttpRequestBuilder(nettyRequest);
    Map<String, String> headers = recordedHttpRequestBuilder.getHeaders();
    Assert.assertEquals(headers.size(), 2);
    Assert.assertEquals(headers.get("key1"), "value1, value2");
    Assert.assertEquals(headers.get("key2"), "value1");
}

From source file:com.linkedin.flashback.netty.builder.RecordedHttpRequestBuilderTest.java

License:Open Source License

@Test
public void testBuildHttpMethod() {
    HttpRequest nettyRequest = new DefaultFullHttpRequest(HttpVersion.HTTP_1_0, HttpMethod.GET,
            "http://www.google.com");
    RecordedHttpRequestBuilder recordedHttpRequestBuilder = new RecordedHttpRequestBuilder(nettyRequest);
    RecordedHttpRequest recordedHttpRequest = recordedHttpRequestBuilder.build();
    Assert.assertEquals(recordedHttpRequest.getMethod(), HttpMethod.GET.toString());
}

From source file:com.linkedin.flashback.netty.builder.RecordedHttpRequestBuilderTest.java

License:Open Source License

@Test
public void testBuildAbsoluteUri() {
    String uri = "http://www.google.com";
    HttpRequest nettyRequest = new DefaultFullHttpRequest(HttpVersion.HTTP_1_0, HttpMethod.GET, uri);
    RecordedHttpRequestBuilder recordedHttpRequestBuilder = new RecordedHttpRequestBuilder(nettyRequest);
    RecordedHttpRequest recordedHttpRequest = recordedHttpRequestBuilder.build();
    Assert.assertEquals(recordedHttpRequest.getUri().toString(), uri);
}

From source file:com.linkedin.flashback.netty.builder.RecordedHttpRequestBuilderTest.java

License:Open Source License

@Test
public void testBuildRelativeUri() {
    String uri = "finance";
    HttpRequest nettyRequest = new DefaultFullHttpRequest(HttpVersion.HTTP_1_0, HttpMethod.GET, uri);
    nettyRequest.headers().set(HttpHeaders.Names.HOST, "www.google.com/");
    RecordedHttpRequestBuilder recordedHttpRequestBuilder = new RecordedHttpRequestBuilder(nettyRequest);
    RecordedHttpRequest recordedHttpRequest = recordedHttpRequestBuilder.build();
    Assert.assertEquals(recordedHttpRequest.getUri().toString(), "https://www.google.com/finance");
}

From source file:com.linkedin.flashback.netty.builder.RecordedHttpRequestBuilderTest.java

License:Open Source License

@Test(expectedExceptions = IllegalStateException.class)
public void testBuildWithUnsupportedUri() {
    String uri = "http://example.com/file[/].html";
    HttpRequest nettyRequest = new DefaultFullHttpRequest(HttpVersion.HTTP_1_0, HttpMethod.GET, uri);
    RecordedHttpRequestBuilder recordedHttpRequestBuilder = new RecordedHttpRequestBuilder(nettyRequest);
    recordedHttpRequestBuilder.build();/*  ww  w  .j  a v a2s . co m*/
}

From source file:com.linkedin.flashback.netty.builder.RecordedHttpRequestBuilderTest.java

License:Open Source License

@Test
public void testBuildWithUriTwoLegs() {
    HttpRequest nettyRequest1 = new DefaultFullHttpRequest(HttpVersion.HTTP_1_0, HttpMethod.GET, "finance");
    RecordedHttpRequestBuilder recordedHttpRequestBuilder = new RecordedHttpRequestBuilder(nettyRequest1);
    HttpRequest nettyRequest2 = new DefaultFullHttpRequest(HttpVersion.HTTP_1_0, HttpMethod.GET, "google.com");
    nettyRequest2.headers().set(HttpHeaders.Names.HOST, "www.google.com/");
    recordedHttpRequestBuilder.addHeaders(nettyRequest2);
    RecordedHttpRequest recordedHttpRequest = recordedHttpRequestBuilder.build();
    Assert.assertEquals(recordedHttpRequest.getUri().toString(), "https://www.google.com/finance");
}

From source file:com.linkedin.flashback.netty.builder.RecordedHttpRequestBuilderTest.java

License:Open Source License

@Test(expectedExceptions = IllegalStateException.class)
public void testBuildWithUriTwoLegsIllegalUri() {
    HttpRequest nettyRequest1 = new DefaultFullHttpRequest(HttpVersion.HTTP_1_0, HttpMethod.GET,
            "file[/].html");
    RecordedHttpRequestBuilder recordedHttpRequestBuilder = new RecordedHttpRequestBuilder(nettyRequest1);
    HttpRequest nettyRequest2 = new DefaultFullHttpRequest(HttpVersion.HTTP_1_0, HttpMethod.GET, "google.com");
    nettyRequest2.headers().set(HttpHeaders.Names.HOST, "www.google.com/");
    recordedHttpRequestBuilder.addHeaders(nettyRequest2);
    recordedHttpRequestBuilder.build();//w w w  .  ja  va2 s  .c om
}

From source file:com.linkedin.flashback.netty.builder.RecordedHttpRequestBuilderTest.java

License:Open Source License

@Test
public void testBuildContent() throws Exception {
    HttpRequest nettyRequest = new DefaultFullHttpRequest(HttpVersion.HTTP_1_0, HttpMethod.GET,
            "www.google.com");
    RecordedHttpRequestBuilder recordedHttpRequestBuilder = new RecordedHttpRequestBuilder(nettyRequest);

    String charset = "UTF-8";
    String str1 = "first content";
    HttpContent httpContent1 = new DefaultHttpContent(Unpooled.copiedBuffer(str1.getBytes(charset)));
    recordedHttpRequestBuilder.appendHttpContent(httpContent1);
    String str2 = "second content";
    HttpContent httpContent2 = new DefaultHttpContent(Unpooled.copiedBuffer(str2.getBytes(charset)));
    recordedHttpRequestBuilder.appendHttpContent(httpContent2);

    String lastStr = "Last chunk";
    HttpContent lastContent = new DefaultLastHttpContent(Unpooled.copiedBuffer(lastStr.getBytes(charset)));
    recordedHttpRequestBuilder.appendHttpContent(lastContent);

    RecordedHttpRequest recordedHttpRequest = recordedHttpRequestBuilder.build();
    Assert.assertEquals((str1 + str2 + lastStr).getBytes(charset),
            recordedHttpRequest.getHttpBody().getContent(charset));
}

From source file:com.linkedin.proxy.netty.MysqlQueryDecoder.java

License:Apache License

@Override
protected void decode(ChannelHandlerContext ctx, FullHttpRequest msg, List<Object> out) throws Exception {
    MysqlQuery result = new MysqlQuery();

    try {// w ww.  j av a2s.c o m
        HttpMethod met = msg.getMethod();
        String uri = msg.getUri();
        int s = 0;
        int e = uri.length();
        if (uri.charAt(0) == '/')
            s = 1;
        if (uri.charAt(e - 1) == '/')
            e--;

        String parts[] = uri.substring(s, e).split("/");

        result.setDbName(parts[0]);
        result.setTableName(parts[1]);
        result.setKeyColName(parts[2]);
        result.setValueColName(parts[3]);

        if (met.equals(HttpMethod.PUT)) {
            /*
             * If HttpRequest method is PUT, I interpret it as a WRITE query.
             * MysqlQuery instance's value is set as the value in the HttpRequest.
             */
            result.setKey(parts[4]);

            byte[] tempData = new byte[msg.content().readableBytes()];
            msg.content().readBytes(tempData);
            result.setValue(tempData);

            result.setType(QueryType.WRITE);
        } else if (met.equals(HttpMethod.GET)) {
            /*
             * If HttpRequest method is GET, I interpret it as a READ query.
             * Once the query is processed, the result value (if any) is written to MysqlQuery.value.
             */
            result.setKey(parts[4]);
            result.setType(QueryType.READ);
        } else if (met.equals(HttpMethod.DELETE)) {
            /*
             * If HttpRequest method is DELETE, I interpret it as a DELETE query.
             */
            result.setKey(parts[4]);
            result.setType(QueryType.DELETE);
        } else if (met.equals(HttpMethod.POST)) {
            /*
             * If HttpRequest method is POST, I interpret it as a CREATE TABLE query.
             * I store size of the value column in MysqlQuery.Value.
             * I store byte array of the string representation.
             */
            result.setValue(parts[4].getBytes());
            result.setType(QueryType.CREATE);
        } else {
            result.setType(QueryType.INVALID);
            _LOG.error("Unhandled HttpMethod: " + met);
            _LOG.error("Type=" + QueryType.INVALID);
        }
    } catch (Exception e) {
        _LOG.error("Exception occured during HttpRequest processing", e);
        result.setType(QueryType.INVALID);
        _LOG.error("Type=" + QueryType.INVALID);
    }

    out.add(result);
}