Norman Maurer
194b64cff1
[ #1708 ] Correctly set the writerIndex in ReadOnlyByteBufferBuf if it is constructed with a buffer which has non zero position
2013-08-08 06:54:32 +02:00
Norman Maurer
b934b6009c
Share some code, related to [ #1707 ]]
2013-08-07 20:28:33 +02:00
Norman Maurer
5ef30b6d8b
[ #1707 ] More efficient implementation of ChannelHandlerContext.writeAndFlush(..)
2013-08-07 20:15:10 +02:00
Norman Maurer
5b6e762bf4
Allow to have the Channel GC'ed ASAP
2013-08-07 10:32:03 +02:00
Norman Maurer
48a7a21541
Correctly update Channel.isWritable() when the write happens from outside the EventLoop in a fast fashion. Fixes [ #1697 ]
...
Introduce a new interface called MessageSizeEstimator. This can be specific per Channel (via ChannelConfig). The MessageSizeEstimator will be used to estimate for a message that should be written. The default implementation handles ByteBuf, ByteBufHolder and FileRegion. A user is free to plug-in his/her own implementation for different behaviour.
2013-08-07 10:10:43 +02:00
Norman Maurer
60b889375c
Allow to also write FileRegion and ChunkInput when using HTTP chunked. Fixes [ #1693 ]
2013-08-07 09:37:23 +02:00
Norman Maurer
ea1dca8105
[ #1704 ] Make sure SwappedByteBuf.readSlice(..) returns ByteBuf with correct ByteOrder
2013-08-06 12:22:22 +02:00
Norman Maurer
3b94154893
[ #1690 ] Correctly return first header value on DefaultHttpHeaders.get(..)
2013-08-06 07:12:45 +02:00
Norman Maurer
20a010a2ea
Small optimization in DefaultHttpHeaders.clear()
2013-08-05 21:41:07 +02:00
Norman Maurer
de44917e62
Use recyclable write task to reduce GC pressure
2013-08-05 14:59:58 +02:00
Trustin Lee
87b17e195a
Grammar
2013-08-05 17:40:45 +09:00
Trustin Lee
0f80aad929
Remove all/target/src and all/target/classes after building the all-in-one JAR and Xref
...
.. so that IDEA does not add all/target/src and all/target/classes to the source and class path.
2013-08-05 17:02:17 +09:00
Trustin Lee
17b91f416d
Remove an irrelevant comment
...
.. because firedChannelActive is gone long ago
2013-08-05 16:50:25 +09:00
Norman Maurer
4d064d85df
Rename class
2013-08-02 07:24:49 +02:00
Norman Maurer
ebee56ef49
More tests related to self removal from pipeline in ByteToMessageDecoder and ReplayingDecoder
2013-08-02 07:23:46 +02:00
Norman Maurer
487c28d93e
Add testcases to prove that remove ReplayingDecoder/ByteToMessageDecoder from within the decode(...) method works
2013-08-01 20:42:46 +02:00
Norman Maurer
3f2000fa3a
[maven-release-plugin] prepare for next development iteration
2013-08-01 10:59:55 +02:00
Norman Maurer
3f70d5caa4
[maven-release-plugin] prepare release netty-4.0.6.Final
2013-08-01 10:59:46 +02:00
Norman Maurer
a06295fe0a
Correctly fix problem in ByteToMessageDecoder and ReplayingDecoder which could let to have a released buffer passed to the decode methods.
...
This fixes #1664 and revert also the original commit which was meant to fix it 3b1881b523
. The problem with the original commit was that it could delay handlerRemove(..) calls and so mess up the order or forward bytes to late.
2013-08-01 09:54:07 +02:00
Norman Maurer
e3410680de
[maven-release-plugin] prepare for next development iteration
2013-07-31 20:08:14 +02:00
Norman Maurer
0e124583d6
[maven-release-plugin] prepare release netty-4.0.5.Final
2013-07-31 20:08:05 +02:00
Trustin Lee
81de2275e4
Remove unnecessary traversal of pipeline which occurs when a Channel is closed
...
- Remove unnecessary ascending traversal of pipeline in DefaultChannelHandlerContext.freeInbound()
- Move DefaultChannelHandlerContext.teardownAll() to DefaultChannelPipeline
2013-07-31 20:45:37 +09:00
Trustin Lee
3b1881b523
Make sure ChannelHandler.handlerRemoved() is invoked while handler methods are not running
...
- Fixes #1664
2013-07-31 20:35:51 +09:00
Norman Maurer
3049f5ddc4
Fix checkstyle
2013-07-31 12:21:50 +02:00
Trustin Lee
c79a3cdefe
Fix a bug in NioSocketChannel.doWrite() where flush() triggered from a ChannelFutureListener is ignored
...
- Fixes #1679
2013-07-31 19:13:45 +09:00
Norman Maurer
ca29f1a37d
[ #1683 ] Mark unused ChannelOption @deprecated, to prepare for removal in 4.1.0.Final
2013-07-31 10:50:39 +02:00
Trustin Lee
e81368af06
Simplify handler invocations in DefaultChannelHandlerContext
...
- Sometimes we delegated executor.inEventLoop() to the next context and sometimes we did not. Now we always check inEventLoop() before delegating.
2013-07-31 16:34:32 +09:00
Norman Maurer
acb28e3ac8
Multiple optimizations in the HttpObjectDecoder
...
* Minimize allocation of StringBuilder and also minimize char array copy
* Try to detect HttpVersion without calling toUpperCase() for performance reasons
2013-07-31 09:23:02 +02:00
Norman Maurer
e09aea5902
Rename methods of EmbeddedChannel and mark old ones as @deprecated
2013-07-31 16:04:08 +09:00
Josh Wilson
d4b8f16d1f
Added http status codes from RFC 6585
2013-07-30 06:41:38 +02:00
Norman Maurer
56646920c0
Formatting
2013-07-29 20:59:45 +02:00
Norman Maurer
9da81acec1
[ #1657 ] Log content of ByteBufHolder
2013-07-29 20:57:33 +02:00
Norman Maurer
4222610b2a
Remove synchronized in SPDY code
2013-07-29 20:25:45 +02:00
Norman Maurer
00f1533fa9
[ #1671 ] Fix bug in ChunkedWriteHandler which produce a NPE on empty chunks
2013-07-29 16:23:43 +02:00
Norman Maurer
0cb3541b53
[ #1669 ] Correctly notify the ChannelPromise of delayed writes
2013-07-29 08:13:29 +02:00
Norman Maurer
5e703e7419
[ #1658 ] Let trafficshaping work with ByteBuf and ByteBufHolder out of the box
2013-07-29 07:31:09 +02:00
Norman Maurer
6ce8571df3
[ #1668 ] Remove synchronized usage in JZlibEncoder and JdkZlibEncoder
2013-07-29 07:08:49 +02:00
Jeff Pinner
3922c518cd
Clean up AbstractUnsafe#bind and AbstractUnsafe#disconnect.
2013-07-29 06:54:42 +02:00
Jeff Pinner
bf2430d255
Change AbstractChannel#doRegister return type from Runnable to void.
2013-07-27 20:22:02 +02:00
Jeff Pinner
ca59c1201e
Change AbstractChannel#doDeregister return type from Runnable to void.
2013-07-26 22:21:41 +02:00
Frédéric Brégier
61b1214b24
Fix for first issue from #1652 on computation of time to wait in AbstractTrafficShapingHandler for Netty 4
...
Fix for first issue from #1652 on computation of time to wait in AbstractTrafficShapingHandler for Netty 4, using the same formula than in Netty 3 (wrong place for parenthese).
Was:
(bytes * 1000 / limit - interval / 10) * 10;
Becomes:
(bytes * 1000 / limit - interval) / 10 * 10;
2013-07-26 15:24:31 +02:00
Norman Maurer
15279b2525
[ #1654 ] Notify close future after the close was complete
2013-07-26 14:21:11 +02:00
Norman Maurer
cffbba94ee
[ #1654 ] Remove AbstractChannel.doPreClose() and notify close future on register failure. Based on patch of @jpinner
2013-07-26 14:10:31 +02:00
Norman Maurer
6278d88d2f
[ #1656 ] Fix IndexOutOfBoundsException in MessageToMessageException
2013-07-26 11:46:26 +02:00
Norman Maurer
5f363e8ade
Revert "remove AbstractChannel#doPreClose"
...
This reverts commit 241f856cc7
.
2013-07-26 11:23:11 +02:00
Jeff Pinner
241f856cc7
remove AbstractChannel#doPreClose
2013-07-26 10:12:01 +02:00
Norman Maurer
fabefba791
[ #1650 ] Make it possible to override isSharable() to simplify things for clojure users
2013-07-25 20:24:27 +02:00
Norman Maurer
2b3ac3d446
Factor out the PendingWrite class and put it in internal package. Make use of it in SslHandler and ChunkedWriteHandler to reduce GC-pressure
2013-07-25 12:36:24 +02:00
Norman Maurer
6ff87cc20d
Small optimitation to limit volatile reads
2013-07-25 09:28:54 +02:00
Norman Maurer
6873111d72
[ #1648 ] Make sure trailing headers are not dropped during content encoding/decoding
2013-07-24 15:59:59 +02:00