org.glassfish.grizzly.filterchain.FilterChainContext Java Examples

The following examples show how to use org.glassfish.grizzly.filterchain.FilterChainContext. You can vote up the ones you like or vote down the ones you don't like, and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example #1
Source File: GrizzlyCodecAdapter.java    From dubbo-2.6.5 with Apache License 2.0 6 votes vote down vote up
@Override
public NextAction handleWrite(FilterChainContext context) throws IOException {
    Connection<?> connection = context.getConnection();
    GrizzlyChannel channel = GrizzlyChannel.getOrAddChannel(connection, url, handler);
    try {
        ChannelBuffer channelBuffer = ChannelBuffers.dynamicBuffer(1024); // Do not need to close

        Object msg = context.getMessage();
        codec.encode(channel, channelBuffer, msg);

        GrizzlyChannel.removeChannelIfDisconnected(connection);
        Buffer buffer = connection.getTransport().getMemoryManager().allocate(channelBuffer.readableBytes());
        buffer.put(channelBuffer.toByteBuffer());
        buffer.flip();
        buffer.allowBufferDispose(true);
        context.setMessage(buffer);
    } finally {
        GrizzlyChannel.removeChannelIfDisconnected(connection);
    }
    return context.getInvokeAction();
}
 
Example #2
Source File: GrizzlyCodecAdapter.java    From dubbox with Apache License 2.0 6 votes vote down vote up
@Override
public NextAction handleWrite(FilterChainContext context) throws IOException {
    Connection<?> connection = context.getConnection();
    GrizzlyChannel channel = GrizzlyChannel.getOrAddChannel(connection, url, handler);
    try {
        ChannelBuffer channelBuffer = ChannelBuffers.dynamicBuffer(1024); // 不需要关闭
        
        Object msg = context.getMessage();
        codec.encode(channel, channelBuffer, msg);
        
        GrizzlyChannel.removeChannelIfDisconnectd(connection);
        Buffer buffer = connection.getTransport().getMemoryManager().allocate(channelBuffer.readableBytes());
        buffer.put(channelBuffer.toByteBuffer());
        buffer.flip();
        buffer.allowBufferDispose(true);
        context.setMessage(buffer);
    } finally {
        GrizzlyChannel.removeChannelIfDisconnectd(connection);
    }
    return context.getInvokeAction();
}
 
Example #3
Source File: GrizzlyCodecAdapter.java    From dubbox-hystrix with Apache License 2.0 6 votes vote down vote up
@Override
public NextAction handleWrite(FilterChainContext context) throws IOException {
    Connection<?> connection = context.getConnection();
    GrizzlyChannel channel = GrizzlyChannel.getOrAddChannel(connection, url, handler);
    try {
        ChannelBuffer channelBuffer = ChannelBuffers.dynamicBuffer(1024); // 不需要关闭
        
        Object msg = context.getMessage();
        codec.encode(channel, channelBuffer, msg);
        
        GrizzlyChannel.removeChannelIfDisconnectd(connection);
        Buffer buffer = connection.getTransport().getMemoryManager().allocate(channelBuffer.readableBytes());
        buffer.put(channelBuffer.toByteBuffer());
        buffer.flip();
        buffer.allowBufferDispose(true);
        context.setMessage(buffer);
    } finally {
        GrizzlyChannel.removeChannelIfDisconnectd(connection);
    }
    return context.getInvokeAction();
}
 
Example #4
Source File: GrizzlyCodecAdapter.java    From dubbox with Apache License 2.0 6 votes vote down vote up
@Override
public NextAction handleWrite(FilterChainContext context) throws IOException {
    Connection<?> connection = context.getConnection();
    GrizzlyChannel channel = GrizzlyChannel.getOrAddChannel(connection, url, handler);
    try {
        ChannelBuffer channelBuffer = ChannelBuffers.dynamicBuffer(1024); // 不需要关闭
        
        Object msg = context.getMessage();
        codec.encode(channel, channelBuffer, msg);
        
        GrizzlyChannel.removeChannelIfDisconnectd(connection);
        Buffer buffer = connection.getTransport().getMemoryManager().allocate(channelBuffer.readableBytes());
        buffer.put(channelBuffer.toByteBuffer());
        buffer.flip();
        buffer.allowBufferDispose(true);
        context.setMessage(buffer);
    } finally {
        GrizzlyChannel.removeChannelIfDisconnectd(connection);
    }
    return context.getInvokeAction();
}
 
Example #5
Source File: GrizzlyCodecAdapter.java    From dubbox with Apache License 2.0 6 votes vote down vote up
@Override
public NextAction handleWrite(FilterChainContext context) throws IOException {
    Connection<?> connection = context.getConnection();
    GrizzlyChannel channel = GrizzlyChannel.getOrAddChannel(connection, url, handler);
    try {
        ChannelBuffer channelBuffer = ChannelBuffers.dynamicBuffer(1024); // 不需要关闭
        
        Object msg = context.getMessage();
        codec.encode(channel, channelBuffer, msg);
        
        GrizzlyChannel.removeChannelIfDisconnectd(connection);
        Buffer buffer = connection.getTransport().getMemoryManager().allocate(channelBuffer.readableBytes());
        buffer.put(channelBuffer.toByteBuffer());
        buffer.flip();
        buffer.allowBufferDispose(true);
        context.setMessage(buffer);
    } finally {
        GrizzlyChannel.removeChannelIfDisconnectd(connection);
    }
    return context.getInvokeAction();
}
 
Example #6
Source File: GrizzlyHandler.java    From dubbox with Apache License 2.0 5 votes vote down vote up
@Override
public void exceptionOccurred(FilterChainContext ctx, Throwable error) {
    Connection<?> connection = ctx.getConnection();
    GrizzlyChannel channel = GrizzlyChannel.getOrAddChannel(connection, url, handler);
    try {
        handler.caught(channel, error);
    } catch (RemotingException e) {
        logger.error("RemotingException on channel " + channel, e);
    } finally {
        GrizzlyChannel.removeChannelIfDisconnectd(connection);
    }
}
 
Example #7
Source File: GrizzlyHandler.java    From dubbox-hystrix with Apache License 2.0 5 votes vote down vote up
@Override
public NextAction handleWrite(FilterChainContext ctx) throws IOException {
    Connection<?> connection = ctx.getConnection();
    GrizzlyChannel channel = GrizzlyChannel.getOrAddChannel(connection, url, handler);
    try {
        handler.sent(channel, ctx.getMessage());
    } catch (RemotingException e) {
        throw new IOException(StringUtils.toString(e));
    } finally {
        GrizzlyChannel.removeChannelIfDisconnectd(connection);
    }
    return ctx.getInvokeAction();
}
 
Example #8
Source File: GrizzlyHandler.java    From dubbox-hystrix with Apache License 2.0 5 votes vote down vote up
@Override
public void exceptionOccurred(FilterChainContext ctx, Throwable error) {
    Connection<?> connection = ctx.getConnection();
    GrizzlyChannel channel = GrizzlyChannel.getOrAddChannel(connection, url, handler);
    try {
        handler.caught(channel, error);
    } catch (RemotingException e) {
        logger.error("RemotingException on channel " + channel, e);
    } finally {
        GrizzlyChannel.removeChannelIfDisconnectd(connection);
    }
}
 
Example #9
Source File: GrizzlyHandler.java    From dubbox with Apache License 2.0 5 votes vote down vote up
@Override
public NextAction handleConnect(FilterChainContext ctx) throws IOException {
    Connection<?> connection = ctx.getConnection();
    GrizzlyChannel channel = GrizzlyChannel.getOrAddChannel(connection, url, handler);
    try {
        handler.connected(channel);
    } catch (RemotingException e) {
        throw new IOException(StringUtils.toString(e));
    } finally {
        GrizzlyChannel.removeChannelIfDisconnectd(connection);
    }
    return ctx.getInvokeAction();
}
 
Example #10
Source File: GrizzlyHandler.java    From dubbox with Apache License 2.0 5 votes vote down vote up
@Override
public NextAction handleClose(FilterChainContext ctx) throws IOException {
    Connection<?> connection = ctx.getConnection();
    GrizzlyChannel channel = GrizzlyChannel.getOrAddChannel(connection, url, handler);
    try {
        handler.disconnected(channel);
    } catch (RemotingException e) {
        throw new IOException(StringUtils.toString(e));
    } finally {
        GrizzlyChannel.removeChannelIfDisconnectd(connection);
    }
    return ctx.getInvokeAction();
}
 
Example #11
Source File: GrizzlyHandler.java    From dubbox with Apache License 2.0 5 votes vote down vote up
@Override
public NextAction handleRead(FilterChainContext ctx) throws IOException {
    Connection<?> connection = ctx.getConnection();
    GrizzlyChannel channel = GrizzlyChannel.getOrAddChannel(connection, url, handler);
    try {
        handler.received(channel, ctx.getMessage());
    } catch (RemotingException e) {
        throw new IOException(StringUtils.toString(e));
    } finally {
        GrizzlyChannel.removeChannelIfDisconnectd(connection);
    }
    return ctx.getInvokeAction();
}
 
Example #12
Source File: GrizzlyHandler.java    From dubbox with Apache License 2.0 5 votes vote down vote up
@Override
public NextAction handleWrite(FilterChainContext ctx) throws IOException {
    Connection<?> connection = ctx.getConnection();
    GrizzlyChannel channel = GrizzlyChannel.getOrAddChannel(connection, url, handler);
    try {
        handler.sent(channel, ctx.getMessage());
    } catch (RemotingException e) {
        throw new IOException(StringUtils.toString(e));
    } finally {
        GrizzlyChannel.removeChannelIfDisconnectd(connection);
    }
    return ctx.getInvokeAction();
}
 
Example #13
Source File: GrizzlyHandler.java    From dubbox-hystrix with Apache License 2.0 5 votes vote down vote up
@Override
public NextAction handleRead(FilterChainContext ctx) throws IOException {
    Connection<?> connection = ctx.getConnection();
    GrizzlyChannel channel = GrizzlyChannel.getOrAddChannel(connection, url, handler);
    try {
        handler.received(channel, ctx.getMessage());
    } catch (RemotingException e) {
        throw new IOException(StringUtils.toString(e));
    } finally {
        GrizzlyChannel.removeChannelIfDisconnectd(connection);
    }
    return ctx.getInvokeAction();
}
 
Example #14
Source File: GrizzlyHandler.java    From dubbox with Apache License 2.0 5 votes vote down vote up
@Override
public NextAction handleConnect(FilterChainContext ctx) throws IOException {
    Connection<?> connection = ctx.getConnection();
    GrizzlyChannel channel = GrizzlyChannel.getOrAddChannel(connection, url, handler);
    try {
        handler.connected(channel);
    } catch (RemotingException e) {
        throw new IOException(StringUtils.toString(e));
    } finally {
        GrizzlyChannel.removeChannelIfDisconnectd(connection);
    }
    return ctx.getInvokeAction();
}
 
Example #15
Source File: GrizzlyHandler.java    From dubbox with Apache License 2.0 5 votes vote down vote up
@Override
public NextAction handleClose(FilterChainContext ctx) throws IOException {
    Connection<?> connection = ctx.getConnection();
    GrizzlyChannel channel = GrizzlyChannel.getOrAddChannel(connection, url, handler);
    try {
        handler.disconnected(channel);
    } catch (RemotingException e) {
        throw new IOException(StringUtils.toString(e));
    } finally {
        GrizzlyChannel.removeChannelIfDisconnectd(connection);
    }
    return ctx.getInvokeAction();
}
 
Example #16
Source File: GrizzlyHandler.java    From dubbox with Apache License 2.0 5 votes vote down vote up
@Override
public NextAction handleRead(FilterChainContext ctx) throws IOException {
    Connection<?> connection = ctx.getConnection();
    GrizzlyChannel channel = GrizzlyChannel.getOrAddChannel(connection, url, handler);
    try {
        handler.received(channel, ctx.getMessage());
    } catch (RemotingException e) {
        throw new IOException(StringUtils.toString(e));
    } finally {
        GrizzlyChannel.removeChannelIfDisconnectd(connection);
    }
    return ctx.getInvokeAction();
}
 
Example #17
Source File: GrizzlyHandler.java    From dubbox with Apache License 2.0 5 votes vote down vote up
@Override
public NextAction handleWrite(FilterChainContext ctx) throws IOException {
    Connection<?> connection = ctx.getConnection();
    GrizzlyChannel channel = GrizzlyChannel.getOrAddChannel(connection, url, handler);
    try {
        handler.sent(channel, ctx.getMessage());
    } catch (RemotingException e) {
        throw new IOException(StringUtils.toString(e));
    } finally {
        GrizzlyChannel.removeChannelIfDisconnectd(connection);
    }
    return ctx.getInvokeAction();
}
 
Example #18
Source File: GrizzlyHandler.java    From dubbox with Apache License 2.0 5 votes vote down vote up
@Override
public void exceptionOccurred(FilterChainContext ctx, Throwable error) {
    Connection<?> connection = ctx.getConnection();
    GrizzlyChannel channel = GrizzlyChannel.getOrAddChannel(connection, url, handler);
    try {
        handler.caught(channel, error);
    } catch (RemotingException e) {
        logger.error("RemotingException on channel " + channel, e);
    } finally {
        GrizzlyChannel.removeChannelIfDisconnectd(connection);
    }
}
 
Example #19
Source File: HeadersFilter.java    From FrameworkBenchmarks with BSD 3-Clause "New" or "Revised" License 5 votes vote down vote up
@Override
public NextAction handleRead(FilterChainContext ctx) throws IOException {
	// Taken from HttpServerFilter
	final Object message = ctx.getMessage();
	if (HttpPacket.isHttp(message)) {
		// Otherwise cast message to a HttpContent
		final HttpContent httpContent = (HttpContent) message;
		final HttpRequestPacket request = (HttpRequestPacket) httpContent.getHttpHeader();
		final HttpResponsePacket response = request.getResponse();
		response.setHeader(Header.Server, Server.SERVER_VERSION);
		response.setHeader(Header.Date, FastHttpDateFormat.getCurrentDate());
	}
	return super.handleRead(ctx);
}
 
Example #20
Source File: GrizzlyHandler.java    From dubbox-hystrix with Apache License 2.0 5 votes vote down vote up
@Override
public NextAction handleConnect(FilterChainContext ctx) throws IOException {
    Connection<?> connection = ctx.getConnection();
    GrizzlyChannel channel = GrizzlyChannel.getOrAddChannel(connection, url, handler);
    try {
        handler.connected(channel);
    } catch (RemotingException e) {
        throw new IOException(StringUtils.toString(e));
    } finally {
        GrizzlyChannel.removeChannelIfDisconnectd(connection);
    }
    return ctx.getInvokeAction();
}
 
Example #21
Source File: GrizzlyHandler.java    From dubbo-2.6.5 with Apache License 2.0 5 votes vote down vote up
@Override
public NextAction handleConnect(FilterChainContext ctx) throws IOException {
    Connection<?> connection = ctx.getConnection();
    GrizzlyChannel channel = GrizzlyChannel.getOrAddChannel(connection, url, handler);
    try {
        handler.connected(channel);
    } catch (RemotingException e) {
        throw new IOException(StringUtils.toString(e));
    } finally {
        GrizzlyChannel.removeChannelIfDisconnected(connection);
    }
    return ctx.getInvokeAction();
}
 
Example #22
Source File: GrizzlyHandler.java    From dubbo-2.6.5 with Apache License 2.0 5 votes vote down vote up
@Override
public NextAction handleClose(FilterChainContext ctx) throws IOException {
    Connection<?> connection = ctx.getConnection();
    GrizzlyChannel channel = GrizzlyChannel.getOrAddChannel(connection, url, handler);
    try {
        handler.disconnected(channel);
    } catch (RemotingException e) {
        throw new IOException(StringUtils.toString(e));
    } finally {
        GrizzlyChannel.removeChannelIfDisconnected(connection);
    }
    return ctx.getInvokeAction();
}
 
Example #23
Source File: GrizzlyHandler.java    From dubbo-2.6.5 with Apache License 2.0 5 votes vote down vote up
@Override
public NextAction handleRead(FilterChainContext ctx) throws IOException {
    Connection<?> connection = ctx.getConnection();
    GrizzlyChannel channel = GrizzlyChannel.getOrAddChannel(connection, url, handler);
    try {
        handler.received(channel, ctx.getMessage());
    } catch (RemotingException e) {
        throw new IOException(StringUtils.toString(e));
    } finally {
        GrizzlyChannel.removeChannelIfDisconnected(connection);
    }
    return ctx.getInvokeAction();
}
 
Example #24
Source File: GrizzlyHandler.java    From dubbo-2.6.5 with Apache License 2.0 5 votes vote down vote up
@Override
public NextAction handleWrite(FilterChainContext ctx) throws IOException {
    Connection<?> connection = ctx.getConnection();
    GrizzlyChannel channel = GrizzlyChannel.getOrAddChannel(connection, url, handler);
    try {
        handler.sent(channel, ctx.getMessage());
    } catch (RemotingException e) {
        throw new IOException(StringUtils.toString(e));
    } finally {
        GrizzlyChannel.removeChannelIfDisconnected(connection);
    }
    return ctx.getInvokeAction();
}
 
Example #25
Source File: GrizzlyHandler.java    From dubbo-2.6.5 with Apache License 2.0 5 votes vote down vote up
@Override
public void exceptionOccurred(FilterChainContext ctx, Throwable error) {
    Connection<?> connection = ctx.getConnection();
    GrizzlyChannel channel = GrizzlyChannel.getOrAddChannel(connection, url, handler);
    try {
        handler.caught(channel, error);
    } catch (RemotingException e) {
        logger.error("RemotingException on channel " + channel, e);
    } finally {
        GrizzlyChannel.removeChannelIfDisconnected(connection);
    }
}
 
Example #26
Source File: GrizzlyHandler.java    From dubbox with Apache License 2.0 5 votes vote down vote up
@Override
public NextAction handleConnect(FilterChainContext ctx) throws IOException {
    Connection<?> connection = ctx.getConnection();
    GrizzlyChannel channel = GrizzlyChannel.getOrAddChannel(connection, url, handler);
    try {
        handler.connected(channel);
    } catch (RemotingException e) {
        throw new IOException(StringUtils.toString(e));
    } finally {
        GrizzlyChannel.removeChannelIfDisconnectd(connection);
    }
    return ctx.getInvokeAction();
}
 
Example #27
Source File: GrizzlyHandler.java    From dubbox with Apache License 2.0 5 votes vote down vote up
@Override
public NextAction handleClose(FilterChainContext ctx) throws IOException {
    Connection<?> connection = ctx.getConnection();
    GrizzlyChannel channel = GrizzlyChannel.getOrAddChannel(connection, url, handler);
    try {
        handler.disconnected(channel);
    } catch (RemotingException e) {
        throw new IOException(StringUtils.toString(e));
    } finally {
        GrizzlyChannel.removeChannelIfDisconnectd(connection);
    }
    return ctx.getInvokeAction();
}
 
Example #28
Source File: GrizzlyHandler.java    From dubbox with Apache License 2.0 5 votes vote down vote up
@Override
public NextAction handleRead(FilterChainContext ctx) throws IOException {
    Connection<?> connection = ctx.getConnection();
    GrizzlyChannel channel = GrizzlyChannel.getOrAddChannel(connection, url, handler);
    try {
        handler.received(channel, ctx.getMessage());
    } catch (RemotingException e) {
        throw new IOException(StringUtils.toString(e));
    } finally {
        GrizzlyChannel.removeChannelIfDisconnectd(connection);
    }
    return ctx.getInvokeAction();
}
 
Example #29
Source File: GrizzlyHandler.java    From dubbox with Apache License 2.0 5 votes vote down vote up
@Override
public NextAction handleWrite(FilterChainContext ctx) throws IOException {
    Connection<?> connection = ctx.getConnection();
    GrizzlyChannel channel = GrizzlyChannel.getOrAddChannel(connection, url, handler);
    try {
        handler.sent(channel, ctx.getMessage());
    } catch (RemotingException e) {
        throw new IOException(StringUtils.toString(e));
    } finally {
        GrizzlyChannel.removeChannelIfDisconnectd(connection);
    }
    return ctx.getInvokeAction();
}
 
Example #30
Source File: GrizzlyHandler.java    From dubbox with Apache License 2.0 5 votes vote down vote up
@Override
public void exceptionOccurred(FilterChainContext ctx, Throwable error) {
    Connection<?> connection = ctx.getConnection();
    GrizzlyChannel channel = GrizzlyChannel.getOrAddChannel(connection, url, handler);
    try {
        handler.caught(channel, error);
    } catch (RemotingException e) {
        logger.error("RemotingException on channel " + channel, e);
    } finally {
        GrizzlyChannel.removeChannelIfDisconnectd(connection);
    }
}