Commit Graph

5752 Commits

Author SHA1 Message Date
Trustin Lee
4c7fa950cc Optimize SslHandler
- Fixes #1905
- Call ctx.flush() only when necessary
- Improve the estimation of application and packet buffer sizes
- decode() method now tries to call unwrap() with as many SSL records as
  possible to reduce the number of events triggered
2013-11-08 17:42:28 +09:00
Norman Maurer
a86e215718 Fix regression which lead to leak buffers when nothing could be read from the Channel.
This was introduced as part of #1812, but fortunatualy was not part of any release.
2013-11-07 07:13:20 +01:00
Michael Nitschinger
ea7b690430 add docs and testing for the LoggingHandler. 2013-11-06 18:19:19 +01:00
Trustin Lee
7fff25c0de Remove AUTO_CLOSE option
- Related #1952
- Since 5.0, we ask users decide to close the channel on write failure.
2013-11-05 17:34:48 +09:00
Trustin Lee
e2de807fb0 Add AUTO_CLOSE option
- Fixes #1952
- If AUTO_CLOSE is turned on, Netty will close the channel immediately and automatically on write failure.  The default is false.
2013-11-05 17:23:58 +09:00
Norman Maurer
c26d43757e [#1800] [#1802] Correctly expand capacity of ByteBuf while preserve content 2013-11-04 15:18:48 +01:00
Trustin Lee
a9893f3bd2 Abstract classes' names should start with 'Abstract' 2013-11-04 20:21:55 +09:00
Trustin Lee
f7c70366ea Fixed various inspector warnings 2013-11-04 20:19:33 +09:00
Trustin Lee
ff34bb08a6 Moved constant classes out of util 2013-11-04 20:10:52 +09:00
Michael Nitschinger
a759b61240 adding memcache codec to netty-all project. 2013-11-04 19:52:27 +09:00
Trustin Lee
1f0a73c238 Fix checkstyle 2013-11-04 19:52:10 +09:00
Trustin Lee
26415b8f4c Use StringUtil.simpleClassName(..) instead of Class.getSimpleName() where necessary
- Class.getSimpleName() doesn't render anonymous classes very well
- + some minor cleanup
2013-11-04 19:42:33 +09:00
Michael Nitschinger
5169376309 Implementing the Binary Memcache protocol
This changeset implements the full memcache binary protocol spec, including
a first batch of tests. Ascii protocol and more coverage and helper classes
will follow.
2013-11-04 19:24:14 +09:00
Trustin Lee
6b0025430e Bump the version to 5.0.0.Alpha1 2013-11-04 19:14:40 +09:00
Trustin Lee
b9d7bc6b4b Add a getter method for accessing the ClassPool of JavassistTypeParameterMatcherGenerator
.. so that a user can even manipulate the class pool as they wish.
2013-11-04 19:00:25 +09:00
Trustin Lee
5b65be01da Fix an API bug in the JavassistTypeParameterMatcherGenerator where some of its methods are not static
- Related issue: #1402
2013-11-04 18:56:19 +09:00
Trustin Lee
e01a444578 Fix some inspector warnings 2013-11-04 18:03:32 +09:00
fredericBregier
cf1970c31b Split HttpPostRequestDecoder into HttpPostStandardRequestDecoder and HttpPostMultipartRequestDecoder / Add HttpData.maxSize
- Related issues: #1937 #1938 and #1946
- Add InterfaceHttpPostRequestDecoder and Make HttpPostRequestDecoder implement it
- HttpPostRequestDecoder actually delegates itself to HttpPostStandardRequestDecoder or HttpPostMultipartRequestDecoder
- Remove IncompatibleDataDecoderException because it's not thrown anywhere now
2013-11-04 17:57:13 +09:00
Trustin Lee
2eb5d4f0dd Fix a bug where SslHandler doesn't sometimes handle renegotiation correctly
- Fixes #1964
2013-11-04 16:53:05 +09:00
Norman Maurer
de2c6acecf [#1940] Add javadoc to explain how the FileChannel is closed when using DefaultFileRegion 2013-11-02 15:59:56 +01:00
Norman Maurer
208411f9a9 Also pass the ByteOrder in getUnadjustedFrameLength method. Part of #1960 2013-11-02 14:27:23 +01:00
Trustin Lee
f767abe5b0 Allow a user to define his/her own length field decoder
- Fixes #1960
2013-11-02 21:58:08 +09:00
Trustin Lee
9d611a182f Rename SimpleChannelInboundHandler.channelRead0() to messageReceived()
- Related: #1590
2013-11-02 19:59:21 +09:00
Trustin Lee
81243c1524 Instead of complicated capacity estimation, just use thread local buffers.
Fixes #1951
2013-11-02 19:22:08 +09:00
Trustin Lee
e987ff63b1 Create StringBuilder with saner initial capacity when encoding a Cookie
Fixes #1951
2013-11-02 19:16:23 +09:00
Luke Wood
b31a1b2dca [#1958] Use CRC32-C in Snappy as per the spec 2013-11-01 20:53:16 +01:00
Norman Maurer
285dd79a10 [#1959] Proposed fix to correctly handle timeouts that overflow the ticks in the wheel 2013-10-31 06:26:41 +01:00
Norman Maurer
d6cc74d8cd Revert usage of autobahntestsuite until figure out why it fails on CI 2013-10-30 21:45:58 +01:00
Norman Maurer
c0f0f406cd Use other port for testsuite 2013-10-29 07:58:48 +01:00
Norman Maurer
ff9e368401 Run the Autobahn Testsuite as part of our testsuite. This ensures there are no regressions. 2013-10-28 21:09:07 +01:00
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