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);
}
java类io.netty.handler.codec.http.HttpObject的实例源码
Registry.java 文件源码
项目:ServiceCOLDCache
阅读 35
收藏 0
点赞 0
评论 0
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);
}
}
}