Norman Maurer
542efdc7c7
[ #1812 ] All to have NioMessageUnsafe.read() inlined
2013-10-26 17:43:10 +02:00
Trustin Lee
0dda7df344
Add a shortcut method for collision-free naming
2013-10-25 20:01:31 +09:00
Trustin Lee
dc009b2c2c
Replace UniqueName with Constant and ConstantPool
...
- Proposed fix for #1824
UniqueName and its subtypes do not allow getting the previously registered instance. For example, let's assume that a user is running his/her application in an OSGi container with Netty bundles and his server bundle. Whenever the server bundle is reloaded, the server will try to create a new AttributeKey instance with the same name. However, Netty bundles were not reloaded at all, so AttributeKey will complain that the name is taken already (by the previously loaded bundle.)
To fix this problem:
- Replaced UniqueName with Constant, AbstractConstant, and ConstantPool. Better name and better design.
- Sctp/Udt/RxtxChannelOption is not a ChannelOption anymore. They are just constant providers and ChannelOption is final now. It's because caching anything that's from outside of netty-transport will lead to ClassCastException on reload, because ChannelOption's constant pool will keep all option objects for reuse.
- Signal implements Constant because we can't ensure its uniqueness anymore by relying on the exception raised by UniqueName's constructor.
2013-10-25 19:21:53 +09:00
Norman Maurer
98541be4b7
[ #1947 ] Handle RejectExecutionException graceful for outbound operations
2013-10-25 07:57:25 +02:00
Trustin Lee
9b779e50ba
Make all mutable fields in WebSocketClientHandshaker volatile
...
- Fixes #1945
2013-10-24 17:37:39 +09:00
Norman Maurer
5a844d0bd6
[ #1812 ] Rework ByteToMessageDecoder.channelRead(..) method to allow for inlining
2013-10-24 07:15:40 +02:00
Norman Maurer
3de7a0bf76
Revert "[ #1812 ] Rework ByteToMessageDecoder.channelRead(..) method to allow for inlining"
...
This reverts commit b7262ab3da
.
2013-10-23 21:13:03 +02:00
Norman Maurer
b7262ab3da
[ #1812 ] Rework ByteToMessageDecoder.channelRead(..) method to allow for inlining
2013-10-23 19:54:24 +02:00
Norman Maurer
db765e5dd4
[ #1812 ] Allow for inline for most common cases when use NioByteUnsafe.read()
2013-10-23 19:53:54 +02:00
Norman Maurer
9e882c793b
[ #1943 ] Unpooled.copiedBuffer(ByteBuf pooled) should always return unpooled ByteBuf
2013-10-22 20:20:04 +02:00
Norman Maurer
9e82bfbf3c
[ #1936 ] Fix example in javadoc
2013-10-20 09:32:21 +02:00
Norman Maurer
afa5df6bf0
[ #1933 ] Correctly add the wsencoder before the httpencoder as the httpencoder also handle ByteBuf
2013-10-19 20:53:57 +02:00
Norman Maurer
3367e51882
More robust pipeline manipulation while upgrading to WebSocket
...
- This commit allows a user to write its first web socket frame right after calling WebSocketServerHandshaker.handshake() rather than adding a listener to the future it returns.
- Should fix #1933
2013-10-18 18:23:36 +02:00
Norman Maurer
3a01bf1064
[ #1934 ] Correctly log handshake errors and not print them to STDERR
2013-10-18 18:23:24 +02:00
Jeff Pinner
6021df7451
Merge pull request #1928 from jpinner/spdy_cleanup_master
...
SPDY: code cleanup
2013-10-17 08:48:06 -07:00
Jeff Pinner
e2e00689d9
SPDY: code cleanup
2013-10-17 08:21:35 -07:00
Trustin Lee
762e40f357
Make sure HttpVersion checks if the version string is not empty
...
.. which was the behavior in 3.x.
2013-10-17 20:27:41 +09:00
Norman Maurer
9600318dc1
Run tests with Pooled and Unpooled allocator
2013-10-16 11:52:02 +02:00
Norman Maurer
9b625d611f
[ #1925 ] Only expose sub-region of ByteBuf on nioBuffer(...)
2013-10-16 11:51:56 +02:00
Norman Maurer
da1418e269
[ #1920 ] Fix IndexOutOfBoundsException when using PooledByteBufAllocator with SCTP and NIO Datagram channels
2013-10-16 11:51:50 +02:00
Bill Gallagher
ef139306af
Merge pull request #1921 from jpinner/kill_spdy_2
...
SPDY: remove SPDY/2 support
2013-10-15 09:30:55 -07:00
Jeff Pinner
949a6968ee
SPDY: remove SPDY/2 support
2013-10-14 07:27:50 -07:00
Norman Maurer
1f1a627a22
No need to slice before copy. Part of #1848
2013-10-12 20:06:17 +02:00
Michael Grove
036f0859bd
copy all sliced buffers, fixes #1848
2013-10-12 20:06:04 +02:00
Norman Maurer
79ff26d221
Fix compile error
2013-10-11 22:06:40 +02:00
Bill Gallagher
be959dc4b7
Merge pull request #1918 from wgallagher/entries
...
bring back entries()
2013-10-11 13:04:04 -07:00
Bill Gallagher
65f5b15a42
bring back entries()
2013-10-11 15:49:33 -04:00
Norman Maurer
beb6d37603
Add HttpHeaders.contains(name, value, ...) to save creation of LinkedList for simple checks
2013-10-11 21:46:05 +02:00
Bill Gallagher
b72761e99c
minor gc optimization: better DefaultSpdyHeaders.iterator()
2013-10-11 20:36:14 +02:00
Bill Gallagher
951a65e57e
minor gc optimization: better DefaultHttpHeaders.iterator()
2013-10-11 20:34:27 +02:00
Norman Maurer
42cce12498
[ #1907 ] LengthFieldPrepender should better extend MessageToMessageEncoder for less memory copies
2013-10-11 06:38:18 +02:00
Trustin Lee
16bf687aec
Ensure the selector implementation can be instrumented before attempting instrumentation
...
- Fixes #1908
2013-10-11 12:07:46 +09:00
Norman Maurer
522dbf8543
[ #1906 ] Use a ByteBuf allocator from the ByteBufAllocator when encode Strings
2013-10-09 21:19:36 +02:00
Trustin Lee
136e1ebba8
Fix compilation errors / Cleanup
2013-10-08 17:20:07 +09:00
Trustin Lee
9097fce9e3
Allow empty handler list when creating a new EmbeddedChannel
...
.. so that it can be used for dynamically initialized pipelines
- Fixes #1899
2013-10-08 17:18:41 +09:00
Trustin Lee
1c15ba0c95
Rename getChildGroup() to childEventLoopGroup() / Minor cleanup
2013-10-08 17:03:50 +09:00
Bill Gallagher
e743a27e75
Pass eventLoop and childEventLoopGroup as Channel constructor parameters
...
- Add ServerChannelFactory for ServerBootstrap which is the counterpart
of ChannelFactory for Bootstrap
2013-10-08 17:03:50 +09:00
Norman Maurer
d91717446b
Remove redundant index check
2013-10-08 07:21:15 +02:00
Norman Maurer
23998048b1
[ #1898 ] No call fireExceptionCaught but just fail the write promise
2013-10-08 06:39:21 +02:00
Norman Maurer
cd2eaebd92
[ #1895 ] Fix IllegalStateException which was produced during failing ChunkedWrite after the channel was closed
2013-10-08 06:36:59 +02:00
Trustin Lee
8864792499
Fixes the problem where the promise of the outbound operation that causes a channel closure is notified after channelInactive()
...
- Fixes #1897
2013-10-08 12:24:32 +09:00
Trustin Lee
3c7d458c6e
Fix the problem where HashedWheelTimer puts a timeout into an incorrect place
...
- the stopIndex of a timeout is calculated based on the start time of the worker thread and the current tick count for greater accuracy
2013-10-07 17:09:00 +09:00
Norman Maurer
f4edb2f689
[ #1893 ] Fix bug in JdkZlibDecoder which did not let it handle large data
2013-10-07 08:07:53 +02:00
Norman Maurer
44293291a7
Use direct ByteBuf for the test to make sure it is not copied
2013-10-07 08:07:38 +02:00
Norman Maurer
7ad3c1e10c
[ #1890 ] Correctly expand ByteBuffer array in all cases
...
The problem was that we did not handle the case correctly when doubling the array was not enough. We need to keep doubling until everything fits in.
2013-10-06 15:30:51 +02:00
Norman Maurer
2366c2846d
[ #1881 ] Use correct field name in NullPointerException
2013-10-04 09:54:21 +02:00
Bill Gallagher
805a9dff8e
disable debugging output during test
2013-10-04 06:58:52 +02:00
Norman Maurer
eb24b572dc
[ #1885 ] Correctly close leak detected also on non started HashedWheelTimer
2013-10-02 06:44:55 +02:00
Norman Maurer
a4a207fc4f
Fix checkstyle
2013-10-02 06:44:10 +02:00
Bill Gallagher
a5220198ba
use enum for state in LocalChannel
2013-10-02 06:32:03 +02:00