Trustin Lee
dc13b68632
Make sure ChannelHandler.handlerRemoved() is always invoked
...
- Fixes #1366 : No elegant way to free non-in/outbound buffers held by a handler
- handlerRemoved() is now also invoked when a channel is deregistered, as well as when a handler is removed from a pipeline.
- A little bit of clean-up for readability
- Fix a bug in forwardBufferContentAndRemove() where the handler buffers are not freed (mainly because we were relying on channel.isRegistered() to determine if the handler has been removed from inside the handler.
- ChunkedWriteHandler.handlerRemoved() is unnecessary anymore because ChannelPipeline now always forwards the content of the buffer.
2013-05-16 19:32:39 +09:00
Norman Maurer
f4ad6173ca
[ #1299 ] Make sure a handshake error will not trigger fireExceptionCaught two times
2013-05-12 17:01:12 +02:00
Norman Maurer
c43950a03f
[maven-release-plugin] prepare for next development iteration
2013-05-08 18:19:51 +02:00
Norman Maurer
ae76502040
[maven-release-plugin] prepare release netty-4.0.0.CR2
2013-05-08 18:19:38 +02:00
Norman Maurer
5dd867ee23
[ #1340 ] use full url in comment
2013-05-07 14:54:27 +02:00
Norman Maurer
6cbc6e9886
[ #1340 ] Log SslExceptions thrown by SslEngine.closeInbound() with debug level
2013-05-07 09:42:02 +02:00
Trustin Lee
7884574c7b
Remove freeInboundBuffer() and freeOutboundBuffer() which has no value
...
- Fixes #1308
freeInboundBuffer() and freeOutboundBuffer() were introduced in the early days of the new API when we did not have reference counting mechanism in the buffer. A user did not want Netty to free the handler buffers had to override these methods.
However, now that we have reference counting mechanism built into the buffer, a user who wants to retain the buffers beyond handler's life cycle can simply return the buffer whose reference count is greater than 1 in newInbound/OutboundBuffer().
2013-04-25 09:15:55 +09:00
Trustin Lee
cd26da96b8
Add more safe-to-ignore exception messages for SslHandler
...
- Just in case SslHandler is used on UDT
2013-04-24 18:06:14 +09:00
Trustin Lee
322449eedc
Add another safe-to-ignore socket error message for SslHandler
...
.. which covers the 'Software caused connection abort: recv failed' from Windows
2013-04-24 17:05:55 +09:00
Trustin Lee
b5989e2449
Reduce exception instantiation overhead in SslHandler / Reduce unnecessary empty array creation
...
- Added EmptyArrays as an internal utility class
2013-04-24 09:32:53 +09:00
Norman Maurer
c95796d981
[ #1302 ] Make sure the handshake future is failed with a ClosedChannelException on channelInactive
2013-04-23 18:20:38 +02:00
Norman Maurer
1cdb9e0b48
Just fail all futures that are left to not cause out-of-order writes
2013-04-19 07:06:22 +02:00
Norman Maurer
ca5554dfe7
[ #1236 ] Fix problem where adding a new ChannelHandler could block the eventloop
...
This change also introduce a few other changes which was needed:
* ChannelHandler.beforeAdd(...) and ChannelHandler.beforeRemove(...) were removed
* ChannelHandler.afterAdd(...) -> handlerAdded(...)
* ChannelHandler.afterRemoved(...) -> handlerRemoved(...)
* SslHandler.handshake() -> SslHandler.hanshakeFuture() as the handshake is triggered automatically after
the Channel becomes active
2013-04-19 07:00:50 +02:00
Trustin Lee
e556232aeb
Rename HandshakeCompletionEvent to SslHandshakeCompletionEvent
2013-04-11 16:50:42 +09:00
Norman Maurer
b3429af1cc
[ #1260 ] Fire a HandshakeCompletationEvent once the SSL handshake completes
2013-04-11 06:47:43 +02:00
Norman Maurer
d34daebeca
[ #1238 ] Correctly log the content of the MessageBuf and not depend on MessageBuf.toString()
...
Add an extra static method to BufUtil which will convert the content of any MessaBuf implementation to a String
2013-04-08 09:45:00 +02:00
Norman Maurer
b36e815026
[ #1241 ] Fix NPE in AbstractTrafficShapingHandler and the logic
2013-04-07 11:02:32 +02:00
Trustin Lee
d299eeb485
Fix a bug in AbstractTrafficShapingHandler.getTimeToWait() where it doesn't work OK when system time goes back.
2013-04-05 13:44:51 +09:00
Andrei Pozolotin
a3e760a003
fix #1234 - duplicate package-info.java errors in eclipse requires release of netty-build v 19 and netty-parent update.
2013-04-05 05:38:05 +09:00
Prajwal Tuladhar
05850da863
enable checkstyle for test source directory and fix checkstyle errors
2013-03-30 13:18:57 +01:00
Norman Maurer
59012390f6
Fix version numbering
2013-03-25 08:01:11 +01:00
Jeff Pinner
4e60c395a9
Fix SslHandler handshake timeout cancellation bug
2013-03-25 06:46:22 +01:00
Norman Maurer
7d7b676eeb
[maven-release-plugin] prepare for next development iteration
2013-03-22 15:20:35 +01:00
Norman Maurer
60fc7dac4d
[maven-release-plugin] prepare release netty-4.0.0.CR1
2013-03-22 15:20:11 +01:00
Trustin Lee
2a87950784
[maven-release-plugin] prepare for next development iteration
2013-03-16 18:41:36 +09:00
Trustin Lee
adfb29330b
[maven-release-plugin] prepare release netty-4.0.0.Beta3
2013-03-16 18:40:59 +09:00
Norman Maurer
17ebbdec20
Let ChannelGroupFuture extends ChannelFuture and ChannelGroupFutureListener GenericFutureListener
2013-03-12 08:35:39 +01:00
Norman Maurer
806e9b1f8c
Make sure we handle outbound messages of type ByteBuf special
2013-03-11 08:59:00 +09:00
Norman Maurer
fd3f923b52
Allow to specify the used buffer type for ChannelInboundByteBufHandler and ChannelOutboundByteBufHandler by configuration. As default it tries to use a direct ByteBuf
2013-03-08 08:20:46 +01:00
Trustin Lee
a9a29bdf3f
Use I/O buffer whenever possible now that our direct buffers are as fast as heap buffers
2013-03-08 11:21:08 +09:00
Norman Maurer
88cc8c1739
[ #1065 ] Provide Future/Promise without channel reference
2013-03-07 07:21:37 +01:00
Trustin Lee
0f8fbac9f8
Fix a problem in SslHandler where it doesn't work with TLS False Start
...
.. as suggested by @justinsb
2013-03-07 12:51:07 +09:00
Norman Maurer
42dad6d9d4
[ #1106 ] Also handle FileRegion in ByteToByteEncoder and SslHandler
2013-02-28 19:40:34 +01:00
Trustin Lee
49aa907bd0
[maven-release-plugin] prepare for next development iteration
2013-02-26 16:55:07 -08:00
Trustin Lee
5026c2f359
[maven-release-plugin] prepare release netty-4.0.0.Beta2
2013-02-26 16:54:53 -08:00
Trustin Lee
f67441354a
Move logging classes from internal to internal.logging
...
.. because internal is crowded
2013-02-26 14:54:25 -08:00
Trustin Lee
d68a04a879
[maven-release-plugin] prepare for next development iteration
2013-02-14 12:56:24 -08:00
Trustin Lee
59e638f8f5
[maven-release-plugin] prepare release netty-4.0.0.Beta1
2013-02-14 12:56:15 -08:00
Trustin Lee
1011227b88
Remove apiviz tags - we are focusing on user guide instead and putting diagrams there
2013-02-14 12:09:16 -08:00
Norman Maurer
7cf7d7455d
[ #1048 ] Make sure the promise is not notified multiple times on failure
2013-02-12 20:46:39 +01:00
Trustin Lee
b4f4b95739
Move io.netty.logging to io.netty.internal / Move Signal out of internal because we use it in Channel*MessageAdapters
2013-02-11 20:08:18 +09:00
Trustin Lee
b9996908b1
Implement reference counting
...
- Related: #1029
- Replace Freeable with ReferenceCounted
- Add AbstractReferenceCounted
- Add AbstractReferenceCountedByteBuf
- Add AbstractDerivedByteBuf
- Add EmptyByteBuf
2013-02-10 13:10:09 +09:00
Trustin Lee
779870321c
More precise close_notify handling
2013-02-09 18:41:00 +09:00
Trustin Lee
affd514b8c
Rename ByteBufUtil to BufUtil and move ChannelHandlerUtil.freeMessage() there / Remove ChannelHandlerUtil
2013-02-08 23:23:26 +09:00
Trustin Lee
b4eaedf712
Remove confusing ChannelState/OperationHandlerAdapter.inboundBufferUpdated/flush() implementation
2013-02-08 17:17:39 +09:00
Trustin Lee
71136390f1
Extract type parameter finder code to a utility class
2013-02-08 15:57:23 +09:00
Norman Maurer
539418ecac
Let ChannelPipeline.set* methods return itself to be more consistent with the reset
2013-02-08 07:24:55 +01:00
Trustin Lee
d4742bbe16
Clean up abstract ChannelHandler impls / Remove ChannelHandlerContext.hasNext*()
...
- Rename ChannelHandlerAdapter to ChannelDuplexHandler
- Add ChannelHandlerAdapter that implements only ChannelHandler
- Rename CombinedChannelHandler to CombinedChannelDuplexHandler and
improve runtime validation
- Remove ChannelInbound/OutboundHandlerAdapter which are not useful
- Make ChannelOutboundByteHandlerAdapter similar to
ChannelInboundByteHandlerAdapter
- Make the tail and head handler of DefaultChannelPipeline accept both
bytes and messages. ChannelHandlerContext.hasNext*() were removed
because they always return true now.
- Removed various unnecessary null checks.
- Correct method/field names:
inboundBufferSuspended -> channelReadSuspended
2013-02-07 23:47:45 +09:00
Norman Maurer
fd75615d7a
[ #870 ] Convert all modules into osgi bundles
2013-02-06 07:57:11 +01:00
Trustin Lee
2ec932798f
Replace .readable() and .writable() to .isReadable() and .isWritable()
2013-01-31 18:24:33 +01:00