Commit Graph

3068 Commits

Author SHA1 Message Date
Trustin Lee
7f1b38262c Remove unnecessary empty lines 2012-12-03 20:51:25 +09:00
Norman Maurer
a52c5befe3 [786] Fix possible corruption of first WebSocketFrame caused by WebSocketServerHandshaker* 2012-12-02 19:59:41 +01:00
Norman Maurer
15c67f87ff [#776] Introduce the possiblilty to specify a BossPool when construct ChannelFactory instances.
* Beside this allow to set a ThreadNameDeterminer per BossPool and WorkerPool. This allows to have different determiner instances in the same JVM.
This fixes #771.
* With the possiblity to share BossPools it is even easier to limit the Thread counts even if you need to create many ChannelFactory instances. So this gives a lot of flexibility.
2012-11-29 20:06:32 +01:00
Norman Maurer
1e515b092c fixing type on event/send argument 2012-11-27 19:37:28 +01:00
Trustin Lee
e7fd2afc25 Remove redundant exception message 2012-11-26 15:33:57 +09:00
Trustin Lee
0a1c5bef21 Make CompatibleMarshallingDecoder discard the inbound buffer once TooLongFrameException is raised
(See #768)

Once too long object is received, CompatibleMarshallingDecoder has to
discard all input from now on, just like MarshallingDecoder does.
Otherwise, the decoder will raise more exceptions because the decoder
has no idea anymore where the object starts.

Before this fix, SerialThreadLocalCompatibleMarshallingDecoderTest
logged many additional exceptions raised by the decoder after test is
finished.
2012-11-26 14:44:03 +09:00
Norman Maurer
ef481bfedb [#766] Rename method to extractFrame(..), no need to make it more complicated in 3 2012-11-25 17:53:56 +01:00
Norman Maurer
bc1ef572b9 [#766] Add extract(..) method to FrameDecoder to allow easier optimizations in sub-classes and still make it consistent 2012-11-25 17:33:38 +01:00
Daniel Bevenius
ed65dffddf Adding WebSocket Example using WebSocketServerProtocolHandler. 2012-11-25 14:28:52 +01:00
Benoit Sigoure
d4155ad518 Add a line-based frame decoder with good performance.
Using DelimiterBasedFrameDecoder with Delimiters.lineDelimiter() has
quadratic performance in the size of the input buffer.  Needless to
say, the performance degrades pretty quickly as the size of the buffer
increases.  Larger MTUs or loopback connections can make it so bad that
it appears that the code is "busy waiting", when in fact it's spending
almost 100% of the CPU time in DelimiterBasedFrameDecoder.indexOf().

Add a new LineBasedFrameDecoder that decodes line-delimited frames
in O(n) instead of DelimiterBasedFrameDecoder's O(n^2) implementation.
In OpenTSDB's telnet-style protocol decoder this resulted in throughput
increases of an order of magnitude.

Change DelimiterBasedFrameDecoder to automatically detect when the
frames are delimited by line endings, and automatically switch to
using LineBasedFrameDecoder under the hood.  This means that all Netty
applications out there that using the combo DelimiterBasedFrameDecoder
with Delimiters.lineDelimiter() will automatically benefit from the
better performance of LineBasedFrameDecoder, without requiring a code
change.
2012-11-24 20:51:45 +01:00
Norman Maurer
26943f189c [761] Fix possible NPE in cleanupWriteBuffer() when closing Channel 2012-11-23 06:47:10 +01:00
Jeff Pinner
6f589dd12b Merge pull request #755 from jaens/3-spdy-fix-truncation-2
SPDY: fix header block values truncation in decompression
2012-11-20 10:43:31 -08:00
Jaen Saul
0cb145ed68 SPDY: fix header block values truncation in decompression 2012-11-20 20:25:37 +02:00
Norman Maurer
5ec179c33c [#723] Use ExecutorServer.shutdown() in ExecutorHandler when terminate it. This way not tasks are lost 2012-11-17 19:47:06 +01:00
Jeff Pinner
8e3ec00e33 SPDY: fixed session status (internal error misdocumented) 2012-11-17 19:27:07 +01:00
Norman Maurer
3e7c8341a6 [#734] Make sure that ChannelFuture is also notified when write an unsupported message to the channel and also prevent a NPE which could be raised because of the bug before 2012-11-16 22:42:52 +01:00
Norman Maurer
d15f9eda08 [#740] Fix WebSocketClientHandshaker00.finishHandshake() validations 2012-11-15 13:00:44 +01:00
Norman Maurer
1e8ed50482 [#737] WebSocketClientHandshaker00 should set Content-Length header do workaround problem with proxy 2012-11-14 10:12:42 +01:00
Trustin Lee
7a7668b101 Upgrade netty-build to 12 2012-11-14 16:32:07 +09:00
Norman Maurer
50e171273d [#735] Improve the notification of the handshake future 2012-11-13 18:42:12 +01:00
Norman Maurer
966565d4b9 [#735] Make sure the handshake ChannelFuture is notified after the right encoder is present in the ChannelPipeline 2012-11-13 09:31:34 +01:00
Norman Maurer
a0e9921517 [#735] Make sure the handshake ChannelFuture is notified after the right encoder is present in the ChannelPipeline 2012-11-13 09:14:16 +01:00
Norman Maurer
df575c6cd0 [#729] Correctly handle urls with empty abs_path in it when issue the websocket handshake 2012-11-12 15:33:23 +01:00
Trustin Lee
adee1b4156 Fix visibility warnings from the inspector. 2012-11-12 14:03:43 +09:00
Trustin Lee
262919b045 Allow '_' in parameter names although discouraged 2012-11-12 13:39:24 +09:00
Trustin Lee
c09f8c147d Fix more inspection warnings + compilation errors 2012-11-12 13:24:59 +09:00
Trustin Lee
bcc088b3d7 Fix parameter namings + some more 2012-11-12 12:59:37 +09:00
Trustin Lee
369574078b Fix inspection warnings related with JUnit usage 2012-11-12 12:45:06 +09:00
Trustin Lee
669fa64829 Fix various Javadoc issues / Do not use argN parameter names 2012-11-12 12:26:18 +09:00
Trustin Lee
d92236a124 Prefer {@code ...} to <code>...</code> / Fix deprecation warnings 2012-11-12 11:51:23 +09:00
Trustin Lee
c1b31f982e Fix deprecation warnings 2012-11-12 11:25:58 +09:00
Trustin Lee
a3acde0b73 'break' statement in a 'finally' block!? 2012-11-12 09:55:07 +09:00
Trustin Lee
849a265c2e Optimize imports 2012-11-12 09:47:20 +09:00
Trustin Lee
2fe3e495c1 Make a member field final wherever possible 2012-11-12 09:43:54 +09:00
Trustin Lee
d23766fa27 Replace a variable with a constant wherever possible 2012-11-12 09:43:14 +09:00
Trustin Lee
12115198d0 Remove redundant 'else' branches. 2012-11-12 09:31:40 +09:00
Trustin Lee
4cd7fb1abb Remove unnecessary 'return's / Clean up QueryStringDecoder 2012-11-12 09:15:33 +09:00
Trustin Lee
a76cdc26d0 Remove unnecessary qualifiers 2012-11-12 09:11:48 +09:00
Trustin Lee
8e0437e3e6 Suppress false-positive inspection warnings / 2012-11-12 09:05:16 +09:00
Trustin Lee
dc8d9fac87 Prefer "str".equals(var) to var.equals("str") / Add proper null checks 2012-11-12 09:00:59 +09:00
Norman Maurer
0c39f9c4cf [maven-release-plugin] prepare for next development iteration 2012-11-11 19:00:55 +01:00
Norman Maurer
1198e18133 [maven-release-plugin] prepare release netty-3.6.0.Beta1 2012-11-11 19:00:48 +01:00
Norman Maurer
95074e3677 Allow to serve more then one bound port per Thread. This fix the problem that you was not able to bound thousends of ports without huge amount of threads. 2012-11-11 18:52:28 +01:00
Norman Maurer
5c2b6ffa25 [maven-release-plugin] prepare for next development iteration 2012-11-11 13:08:57 +01:00
Norman Maurer
27159fff7b [maven-release-plugin] prepare release netty-3.5.10.Final 2012-11-11 13:08:48 +01:00
Trustin Lee
6be84510dc More robust localhost resolution
Ensure the resolved localhost can be bound and connected actually
2012-11-10 08:45:07 +09:00
Trustin Lee
922a8dbb47 Use 'x' over "x" wherever possible / String.equals("") -> isEmpty() 2012-11-10 08:03:52 +09:00
Trustin Lee
d638052036 Add 'static' modifier to the methods that don't need to be member methods 2012-11-10 07:54:33 +09:00
Trustin Lee
ffe5459a88 Replace keySet() + unnecessary map lookup with entrySet() 2012-11-10 07:36:42 +09:00
Trustin Lee
9a87f1748c Make classes static wherever possible 2012-11-10 07:32:52 +09:00