java类io.netty.handler.codec.http.HttpObject的实例源码

Registry.java 文件源码 项目:ServiceCOLDCache 阅读 35 收藏 0 点赞 0 评论 0
public void init() {
    m_execService = Executors.newCachedThreadPool();
    m_scheduledService = Executors.newScheduledThreadPool(1);

    RequestKeyGenerator keyGenerator = new RequestKeyGenerator(
            m_appConfig);

    /*
     * m_policyManager and keyGenerator are used in the initialization of
     * NettyRequestProxyFilter, NettyResponseProxyFilter, please make sure
     * init this two first
     */
    m_policyManager = new DefaultPolicyManager(m_appConfig, keyGenerator,
            m_scheduledService);

    m_cacheManager = m_policyManager.getCacheManager();

    m_debugManager = new DebugManager(m_appConfig, m_policyManager);

    List<IHttpRequestProxyFilter<HttpObject, ChannelHandlerContext>> requestFilters = new ArrayList<>();
    requestFilters.add(new NettyRequestProxyFilter(m_policyManager,
            m_appConfig));
    List<IHttpResponseProxyFilter<HttpObject, ChannelHandlerContext>> responseFilters = new ArrayList<>();
    responseFilters.add(new NettyResponseProxyFilter(m_policyManager,
            m_execService));

    m_filterManager = new FilterManager<>(requestFilters, responseFilters);

}
CacheHttpFilterSource.java 文件源码 项目:ServiceCOLDCache 阅读 23 收藏 0 点赞 0 评论 0
public CacheHttpFilter(HttpRequest originalRequest,
        ChannelHandlerContext ctx, FilterManager<HttpObject, HttpObject, ChannelHandlerContext> filterManager, DebugManager debugManager) {
    super(originalRequest);
    this.m_ctx = ctx;
    m_filterManager = filterManager;
    m_debugManager = debugManager;
}
CacheHttpFilterSource.java 文件源码 项目:ServiceCOLDCache 阅读 25 收藏 0 点赞 0 评论 0
@Override
public HttpResponse clientToProxyRequest(HttpObject httpObject) {
    HttpResponse response = m_filterManager.filterRequest(
            httpObject, this.m_ctx);
    if (response != null) {
        m_debugManager.issueDebugRequest(
                (FullHttpRequest) httpObject, this.m_ctx, false);
    }
    return response;
}
DebugHttpFilterTest.java 文件源码 项目:ServiceCOLDCache 阅读 26 收藏 0 点赞 0 评论 0
@Test
public void testServerToProxyResponse() {
    FullHttpResponse response = Mockito.mock(FullHttpResponse.class);
    HttpObject obj = debugHttpFilter.serverToProxyResponse(response);
    Assert.assertEquals(obj, response);
    Mockito.verify(m_debugManager, Mockito.times(1)).debugResponse(response, m_ctx);
}
ChunkResponsesSerializerTest.java 文件源码 项目:ServiceCOLDCache 阅读 26 收藏 0 点赞 0 评论 0
@Test
public void testGetHttpResponse() {
    List<HttpObject> list = new ArrayList<>();
    list.add(mock(HttpResponse.class));

    assertNotNull(new ChunkResponsesSerializer().getHttpResponse(list));
}
ChunkResponsesSerializerTest.java 文件源码 项目:ServiceCOLDCache 阅读 25 收藏 0 点赞 0 评论 0
@Test
public void getContent(){
    List<HttpObject> list = new ArrayList<>();
    list.add(mock(HttpResponse.class));
    list.add(mock(HttpContent.class));
    list.add(mock(LastHttpContent.class));
    list.add(mock(FullHttpResponse.class));

    ByteBuf[] content = new ChunkResponsesSerializer().getContent(list);
    assertEquals(3, content.length);
}
CacheHttpFilterTest.java 文件源码 项目:ServiceCOLDCache 阅读 21 收藏 0 点赞 0 评论 0
@Test
public void testClientToProxyRequestHttpObject() {
    HttpObject httpObject = mock(FullHttpRequest.class);
    when(m_filterManager.filterRequest(httpObject, m_ctx)).thenReturn(null);
    assertNull(m_filter.clientToProxyRequest(httpObject));

    when(m_filterManager.filterRequest(httpObject, m_ctx)).thenReturn(mock(HttpResponse.class));
    assertNotNull(m_filter.clientToProxyRequest(httpObject));
}
CacheHttpFilterTest.java 文件源码 项目:ServiceCOLDCache 阅读 26 收藏 0 点赞 0 评论 0
@Test
    public void testServerToProxyResponseHttpObject() {
        assertNull(m_filter.serverToProxyResponse(null));
        HttpObject httpObject = mock(HttpObject.class);
//      assertEquals(httpObject, m_filter.serverToProxyResponse(httpObject));

        FullHttpResponse fullHttpResponse = mock(FullHttpResponse.class);
        when(m_filterManager.filterResponse(fullHttpResponse, m_ctx))
                .thenReturn(mock(HttpResponse.class));
        assertTrue(m_filter.serverToProxyResponse(fullHttpResponse) instanceof HttpResponse);
    }
NettyHttpClient.java 文件源码 项目:PriorityOkHttp 阅读 24 收藏 0 点赞 0 评论 0
@Override protected void channelRead0(
    ChannelHandlerContext context, HttpObject message) throws Exception {
  if (message instanceof HttpResponse) {
    receive((HttpResponse) message);
  }
  if (message instanceof HttpContent) {
    receive((HttpContent) message);
    if (message instanceof LastHttpContent) {
      release(this);
    }
  }
}
NettyHttpClient.java 文件源码 项目:Okhttp 阅读 35 收藏 0 点赞 0 评论 0
@Override protected void channelRead0(
    ChannelHandlerContext context, HttpObject message) throws Exception {
  if (message instanceof HttpResponse) {
    receive((HttpResponse) message);
  }
  if (message instanceof HttpContent) {
    receive((HttpContent) message);
    if (message instanceof LastHttpContent) {
      release(this);
    }
  }
}


问题


面经


文章

微信
公众号

扫码关注公众号