Commit Graph

2972 Commits

Author SHA1 Message Date
Trustin Lee
7654d3df02 Add missing license header / cleanup 2013-06-25 11:08:33 +09:00
Jeff Hodges
55360d2bc8 SPDY: handle too large header blocks 2013-06-25 11:08:33 +09:00
Trustin Lee
6aa4d147d8 Adds port to the host header value in WebSocket client handshake.
Due to http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.23 the port should be added if it differs from the default port. To simplify the code we just always add the port.

Backported from 82176bed76
2013-06-25 11:08:33 +09:00
Jeff Pinner
0ec12dcc60 SPDY: replace exception in SpdyHeaderBlockZlibEncoder with EMPTY_BUFFER 2013-06-25 11:08:33 +09:00
Mike Schore
e04df90698 SPDY: better encapsulation of header encoding/decoding 2013-06-25 11:08:26 +09:00
Jeff Pinner
e279803587 SPDY: update object hierarchy 2013-06-18 07:29:48 +09:00
Jeff Pinner
0b4adc0889 SPDY: always enqueue data frames if stream is stalled 2013-06-05 08:52:56 +02:00
Norman Maurer
6e1c5926ee [#1384] Cache HttpHeaderDateFormat in ThreadLocal 2013-05-27 06:57:15 +02:00
Norman Maurer
97332f6436 [#1383] [#1381] Encode / Decode the cookie expire data the same on all jvms 2013-05-22 14:01:38 +02:00
Norman Maurer
ca51aabc41 [#1374] Allow users to all all subprotocols by using * as wildcard 2013-05-17 22:06:22 +02:00
Norman Maurer
fd75994b16 [#1358] Fix Encoding of multipart attribute names and filenames for non ASCII chars 2013-05-14 15:44:25 +02:00
Norman Maurer
1e380851bd [#1299] Make sure a handshake error will not trigger fireExceptionCaught two times 2013-05-12 13:36:38 +02:00
Norman Maurer
56c34214f8 [#1338] Respect default ByteOrder of ChannelBufferFactory when using ProtoBufEncoder 2013-05-12 13:10:49 +02:00
Norman Maurer
23a919cdcd [#1007] HttpObjectAggregator should only throw one TooLongFrameException per full HTTP message 2013-05-09 20:03:02 +02:00
Norman Maurer
985b450182 Correctly handle multipart disposition 2013-05-08 21:59:00 +02:00
Frederic Bregier
1615009f5a [#1313] Fix for Multipart name and value that should not be encoded, except charset if specified 2013-05-08 10:29:28 +02:00
Norman Maurer
60695012ab [#1310] Fix deadlock which can happen if limit of MemoryAwareThreadPoolExecutor was exceed and an exceptionCaught(..) is triggered by a write 2013-05-06 13:54:25 +02:00
Norman Maurer
960067c78a [#1310] Fix deadlock which can happen if limit of MemoryAwareThreadPoolExecutor was exceed and a close is triggered by a write
* Close must be handled from outside the write lock to fix a possible deadlock
  which can happen when MemoryAwareThreadPoolExecutor is used and the limit is exceed
  and a close is triggered while the lock is hold. This is because the close(..)
  may try to submit a task to handle it via the ExecutorHandler which then deadlocks.
2013-05-06 12:45:13 +02:00
Frederic Bregier
3371f4693b Fix for #1313 & #1332
For issue #1313, partial fix: enhance coding/deconding to missing part.
Now filename is correctly undecoded. Name and Value must be encoded to
allow parsing.
For issue #1332, add text/plain to content-type as default type if not
specified.
2013-05-06 07:17:26 +02:00
Jeff Pinner
06756f3cf8 SPDY: SpdyHttpDecoder cleanup and set content length on last message 2013-05-04 19:30:35 +02:00
Jeff Pinner
79648026ff SPDY: refactor SpdyHttpDecoder to allow subclasses to access messageMap 2013-05-03 20:44:57 +02:00
Norman Maurer
a00f9f0b70 [#1322] Correctly handle the removal of Transfer-Encoding: chunked in HttpChunkAggregator 2013-04-30 20:54:07 +02:00
Trustin Lee
b21b8aef2f Add TCP_NODELAY flag to HttpSnoopServer example 2013-04-25 09:30:32 +09:00
Trustin Lee
e9c5f4fa9a Add more safe-to-ignore exception messages for SslHandler
... which covers the 'Software caused connection abort: recv failed' from Windows and UDT channels
2013-04-24 18:07:21 +09:00
Trustin Lee
79301c650c Fix incorrect name validation in AbstractHttpData
- Fixes #1228
2013-04-23 19:26:50 +09:00
Trustin Lee
16113779c5 Fix a bug where LineBasedFrameDecoder does not handle too long lines correctly
- Related: #1287
2013-04-19 12:48:09 +09:00
Dao Ngoc
babc2b23a1 sendUnsupportedWebSocketVersionResponse should return ChannelFuture 2013-04-16 17:37:30 +09:00
Trustin Lee
ba7b7e785e Fix typo in documentation 2013-04-15 20:18:55 +09:00
Trustin Lee
44027aebbc Better exception message when tickDuration is too big
- Related: #1246
- Fix misc inspector warnings
2013-04-10 13:44:05 +09:00
Norman Maurer
c9f4bb41ac [#1246] Correctly convert to nanos 2013-04-08 10:26:48 +02:00
Norman Maurer
71362beff1 [#1246] Fix cpu-spinning regression in HashedWheelTimer
Also remove the usage of System.currentTimeMillis() completely here to make it more consistent and correct
2013-04-08 07:13:52 +02:00
Trustin Lee
8ded23fba5 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
Trustin Lee
a723a1d7df Potential fix for SslHandler dead lock
- Related with: #1181
2013-04-02 12:56:32 +09:00
Norman Maurer
bad316b05f [#1036] Use special ConnectTimeoutException if a connection timeout happens while using NIO. Not use it for OIO as it may would break users app that detect SocketTimeoutException here 2013-03-27 12:28:02 +01:00
Norman Maurer
04334dbefb [#744] Add test which I missed to commit before 2013-03-27 12:04:15 +01:00
Norman Maurer
cb13e78342 [#744] Port fixes from Akka to HashedWheelTimer
port fix from Akka with following commits:
* cb4e3536b0
* 7e590f3071

And also use constants for worker state for time instead of numeric.
2013-03-27 11:51:43 +01:00
Norman Maurer
982c3ee9ee [#1143] Also stop timer when call releaseExternalResources() 2013-03-27 09:33:46 +01:00
Norman Maurer
bce398819a [#1120] Make sure releaseExternal() can not cause a deadlock if the ExecutorService is shared 2013-03-27 09:30:25 +01:00
Henning Schmiedehausen
7013315fd4 Allow ThreadNameDeterminer everywhere.
Find a couple of places where threads are created but no
ThreadNameDeterminer can be passed in to control the name of the
threads created. Keep all existing c'tors for backwards compatibility.
2013-03-19 17:14:27 +09:00
Trustin Lee
bea6f57011 Add some diagnostic messages to track down why IpFilterRuleTest fails intermittently 2013-03-18 17:36:09 +09:00
Trustin Lee
2f811b723e Fix indentation 2013-03-18 13:32:35 +09:00
Trustin Lee
6a94a086f6 Fix inspector warnings 2013-03-18 13:14:29 +09:00
ursa
32a783cf1b Fix bug in memory-based HTTP data content initialization with input stream, add test.
- Fixes #1169
2013-03-18 13:13:29 +09:00
Trustin Lee
a8b6756554 Ignore a non-deterministic test in SslHandlerTest
- Sometimes, random can generate a seemingly legit SSL record.
2013-03-18 11:15:01 +09:00
Trustin Lee
ecb134b0dc Fix sporadic failure in ThreadRenamingRunnableTest
- Make sure the ThreadNameDeterminer is reset to the default after each test to avoid the side effect between tests
2013-03-16 18:12:13 +09:00
Norman Maurer
33c988b129 [#1159] Make sure we not produce an empty buffer on decodeLast(..) 2013-03-14 13:42:08 +01:00
ursa
afdac5611e Fix life-cycle aware handlers processing in the default pipeline, add tests. 2013-03-14 11:19:34 +01:00
Jared Kuolt
ed6b3b5d0e Fix for issue when a worker pool Executor with N threads where N is < than SelectorUtil.DEFAULT_IO_THREADS is passed into NioServerSocketChannelFactory constructor. 2013-03-14 11:15:21 +01:00
Trustin Lee
45f937f62b Use switch-case 2013-03-14 18:12:59 +09:00
Trustin Lee
def55f5358 Fix an infinite loop in SslHandler due to mysterious BUFFER_OVERFLOW state
- Fixes #1134
2013-03-14 18:12:12 +09:00
Trustin Lee
067a0a8a78 Fix checkstyle 2013-03-13 17:07:47 +09:00
hepin1989
f7f6e69bb6 add support for protobuf 2.5.0 2013-03-13 16:43:36 +09:00
Trustin Lee
5d0d309f98 Fix intermittent test failure in UnsupportedMessageTest 2013-03-04 16:18:02 +09:00
Trustin Lee
16a9dc6224 Fix potential resource leak in SslHandler (part 2)
- Fix a non-sense check
2013-03-04 16:01:03 +09:00
Trustin Lee
e15ca4947e Fix potential resource leak in SslHandler
- Fixes: #1116
2013-03-04 14:41:27 +09:00
Norman Maurer
c4f372b111 [#1097] Make sure the HashedWheelTimer is also stopped on shutdown() 2013-02-27 15:41:20 +01:00
Trustin Lee
a5188b9d25 Tell what the remote address was when ConnectException occurs.
- Fixes #1082
2013-02-22 13:29:35 -08:00
Norman Maurer
cf61cc4a0a [#989] Fix possible deeadlock on close in SslHandler 2013-02-13 09:43:39 +01:00
Trustin Lee
984276355c Use InternalLogger in our code / Use jul in examples 2013-02-11 20:37:31 +09:00
Trustin Lee
9071a624b2 Fix inspector warnings 2013-02-11 16:52:43 +09:00
ursa
e3559518bc Add test for HttpPostRequestDecoder: validate '\r' symbols in the end of binary stream are parsed correctly. 2013-02-06 16:23:25 +01:00
ursa
db502cea4c Fix line-end detection for binary streams upload
- Related: #1017 (and #1016)
2013-02-06 11:55:06 +09:00
Norman Maurer
c12f713cca [#1000] Make post encoded data OAuth compatible 2013-02-02 21:12:30 +01:00
Trustin Lee
e1d3839155 Fix a race in SslHandler.flushPendingEncryptedWrites()
- Ensure all pending encrypted writes are flushed by looping again
- Potential fix for #994
2013-01-30 14:26:50 +09:00
Trustin Lee
b38bde2d2b Allocate smaller dynamic buffer to read a line
- Also fixes some inspector warnings from the previous patch
- Related: #992
2013-01-29 15:53:43 +09:00
Shairon Toledo
9650cda163 Fix for filename enconding
- Fixes #992
2013-01-29 15:51:17 +09:00
Michael Morello
923e69251b NioServerBossPool : init() must be called after super(...) otherwise thread name determiner is not used 2013-01-25 11:13:51 +01:00
Norman Maurer
269fd20843 [#937] Add also a ServerBootstrap.bindAsync() method and correct the javadocs 2013-01-16 09:39:12 +01:00
Norman Maurer
bc64c18827 [#937] Add test for ServerBootstrap.bindAsync(..) 2013-01-16 08:27:44 +01:00
Norman Maurer
cb3c74ea2f [#763] Handle PingWebSocketFrames in the client example 2013-01-16 08:09:34 +01:00
Jeff Pinner
3b1ebf7f10 SPDY: fix improper use of SYNC_FLUSH in SpdyHeaderBlockZlibCompressor 2013-01-16 08:05:12 +01:00
Norman Maurer
fe09ad36e2 [#937] Allow to bind in an async fashion via the new method ServerBootstrap.bindAsync(..) 2013-01-15 15:50:38 +01:00
Norman Maurer
fc5606e034 Make compatible with java5 2013-01-15 09:24:21 +01:00
alexey
9fcd31a4f4 backport socks codec to 3 branch 2013-01-15 09:16:08 +01:00
Aaron
ca7702f38c [#915] [#923] Expanded scope of the handshake locks in SSLHandler to avoid possible negotiation after the first SSLEngine wrap 2013-01-14 21:12:23 +01:00
Jeff Pinner
13b3290fd1 SPDY: fix regression in SpdyFrameDecoder.decodeHeaderBlock() 2013-01-14 10:44:12 -08:00
Jeff Pinner
392f4a9049 SPDY: allow empty header values in SPDY/3 2013-01-14 22:46:35 +09:00
Glynn Morrison
16fc1731b9 Chrome requires the :version: header in SPDY_SESSION_PUSHED_SYN_STREAM frames otherwise it issues a HTTP_TRANSACTION_SPDY_SEND_REQUEST_HEADERS and a SPDY_STREAM_ERROR saying "HEADERS incomplete headers, but pending data frames." 2013-01-14 22:34:07 +09:00
Norman Maurer
c5dbf405d1 [#921] Fix NPE which can be thrown on bad-timing when using WebSocketClientHandshaker07 2013-01-10 11:13:26 +01:00
Trustin Lee
560ccc019c Fix various inspection warnings 2013-01-10 15:24:49 +09:00
Norman Maurer
0365b25e5b [#906] Fix VirtualExecutorService.awaitTermination(..) to behave like specified in the javadocs 2013-01-08 13:49:44 +01:00
Norman Maurer
1bdc13451f [#890] ImmediateExecutor should be public 2013-01-04 11:37:30 +01:00
Norman Maurer
d183c1b24a [#769] Do not set 'Content-Encoding' if the target encoding is 'identity' 2013-01-02 16:16:49 +01:00
Norman Maurer
725a54d07a [#865] Fix regression in SslHandler which can cause to miss a wrap() call 2012-12-29 08:37:39 +01:00
Piotr Bartosiewicz
6274abd134 [#845] Enable PUT of files above 2GB 2012-12-24 21:14:51 +01:00
Norman Maurer
badbc88032 List draft-ietf-hybi-thewebsocketprotocol-07 as supported websocket version 2012-12-20 06:49:43 +01:00
Norman Maurer
c59a4738ef [#832] Add javadocs which explains how to workaround the problem 2012-12-19 15:11:21 +01:00
Norman Maurer
795d336bab [#751] Backport WebSocket 07 support 2012-12-19 12:29:20 +01:00
Trustin Lee
f0a5774fed Do not use slice() to read content of an HTTP message
This fixes the bug introduced while fixing #412
2012-12-19 18:38:03 +09:00
Norman Maurer
f13f3d1ed3 [#799] [#835] Allow to set a timeout for the SslHandler.handshake(), after which it will fail 2012-12-19 10:04:03 +01:00
Norman Maurer
dcd0723a9d [#829] Add test that can be used to verify the fix, this failed before. 2012-12-17 13:53:00 +01:00
Norman Maurer
e784a773f7 [#829] Fix a race in SslHandler which could lead to all types of SSLExceptions, including handshake() failures 2012-12-17 13:52:02 +01:00
Trustin Lee
44938973b4 Fix compilation warnings 2012-12-14 18:35:39 +09:00
Norman Maurer
7278664c0b [#807] SslHandler.handshake() need to respect ChannelFuture of wrapNonAppData(...) 2012-12-13 16:49:47 +01:00
Arya Asemanfar
6f6e1693cf fix containsValue to take snapshot of table and use Arrays.fill for clearing out oldTable 2012-12-12 09:36:22 -08:00
Arya Asemanfar
9dd0756d7a clear out the hash table after resizing, and check for table modification in reads 2012-12-08 11:04:10 +01:00
Norman Maurer
7aa2cfad65 [#775] Rework closing logic of Worker/Boss
Added a shutdown() method on ChannelFactory, Boss, Worker, BossPool, WorkerPool and Bootstrap which can be used to just shutdown the instance and so release all internal created resources. This method is also called when releaseExternalResources() which will also release external created resources like Executors.

This commit also fixes the problem that the Worker/Boss Thread will never be released if you use an Executor (no ExecutorService).
2012-12-05 13:47:10 +01:00
Trustin Lee
95684d92eb [#789] Allow a user to trigger the epoll bug workaround
This commit adds rebuildSelector(s) method to Boss, BossPool, Worker, and WorkerPool.  A user can call rebuildSelector(s) method to initiate the workaround for the infamous epoll 100% CPU bug in Linux based on his or her observations rather than potentially incorrect automatic initiation of the workaround.

Previously, setInterestOps() were executed by a caller thread, which made re-registration of SelectionKeys unsafe.  This commit also ensures setInterestOps() is always executed by an I/O thread.  With this change, we don't need NioProviderMetadata anymore.
2012-12-04 18:24:47 +01:00
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
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
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
dc8d9fac87 Prefer "str".equals(var) to var.equals("str") / Add proper null checks 2012-11-12 09:00:59 +09: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
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
Trustin Lee
9a4296f320 Use foreach loop wherever possible / Prefer String.contains() to indexOf() >= 0 / Prefer StringUtil.split() to String.split() 2012-11-10 07:24:54 +09:00
Trustin Lee
ab02e90684 Remove methods overridden but identical with the super implementation / Make constructors of abstract classes protected rather than non-sense public
AbstractWrappedByteBuf.capacity(int) should raise a UnsupportedOperationException rather than ReadOnlyBufferException.
2012-11-10 07:10:30 +09:00
Trustin Lee
ac53b9e99e Remove unnecessary throws clauses for unchecked exceptions 2012-11-10 07:07:37 +09:00
Trustin Lee
4b4c6a436b Remove unused imports 2012-11-10 07:05:18 +09:00
Trustin Lee
bc7eb20c6e Remove various unnecesary qualifiers 2012-11-10 07:02:56 +09:00
Trustin Lee
44159abefa Remove redundant field initialization 2012-11-10 06:56:39 +09:00
Trustin Lee
1b35cfee85 Remove redundant throws clauses / Suppress inspections for some false positives 2012-11-10 06:47:58 +09:00
Trustin Lee
c3c75717db Remove unnecessary this, parenthesis, and semicolons 2012-11-10 02:26:59 +09:00
Trustin Lee
5d1690dfa7 Add missing final modifiers 2012-11-10 02:19:39 +09:00
Trustin Lee
6453b71ab0 Remove recundant type casting 2012-11-10 02:13:33 +09:00
Trustin Lee
f4585b9f53 Remove unnecessary null check before equals() 2012-11-10 01:34:39 +09:00
Trustin Lee
ff03df6851 Remove unnecessary 'final' on parameter 2012-11-10 01:33:16 +09:00
Trustin Lee
72d85f58eb Remove unnecessarily qualified statis access 2012-11-10 01:31:31 +09:00
Trustin Lee
53cecdb31b Prefer isEmpty() over size() == 0 2012-11-10 01:21:25 +09:00
Trustin Lee
0bc6ace8d1 Remove redundant no-arg constructors 2012-11-10 01:08:32 +09:00
Trustin Lee
74a235d29f Simplify array initialization 2012-11-10 01:00:26 +09:00
Trustin Lee
d8f0bc9e3e Do not use Vector 2012-11-10 00:59:10 +09:00
Trustin Lee
59bc375f73 Fix backward incompatibility 2012-11-10 00:48:35 +09:00
Trustin Lee
c34d0a2272 Replace dynamic regular expressions with precompiled Patterns or new StringUtil.split() 2012-11-10 00:42:35 +09:00
Trustin Lee
00d9111833 Remove concatenation with empty string 2012-11-09 17:55:12 +09:00
Trustin Lee
b0b765001c Enum should not have a non-final value 2012-11-09 17:37:03 +09:00
Trustin Lee
c06722c232 Add missing @Override annotation 2012-11-09 17:34:24 +09:00
Trustin Lee
bdaa4fbfeb Simplify SingletonHolder by using interface instead of static class 2012-11-09 17:33:26 +09:00
Trustin Lee
779ddd1d2f Replace a = a + b to a += b 2012-11-09 17:19:30 +09:00
Trustin Lee
b1f2fe752b Move private methods only used from inner classes to the inner classes 2012-11-09 17:19:10 +09:00
Trustin Lee
3e21e3250f Fix overly-strong type casts 2012-11-09 17:15:13 +09:00
Norman Maurer
1a006fafad [#719] Handle http requests without an absolute path the right way when encoding them, which is adding / to it 2012-11-09 07:16:32 +01:00
Norman Maurer
55457691d2 [#712] Fix parsing dates in the past bug in CookieDecoder 2012-11-08 10:02:50 +01:00
Norman Maurer
88c2200264 Fix checkstyle 2012-11-02 20:20:19 +01:00
Norman Maurer
19104e8774 [#698] ExceptionEvent could be swallowed if last handler in pipeline is a ChannelDownstreamHandler 2012-11-02 20:15:17 +01:00
Jeff Pinner
b0db3a04aa HTTP method should be case sensitive (RFC-2616 Sec. 5.1.1) 2012-11-01 22:42:12 -07:00
Norman Maurer
d9090ecb1b Merge branch '3' of https://github.com/netty/netty into 3 2012-10-30 08:49:11 +01:00
Norman Maurer
fd61b27ee8 [#691] Correctly handle SpdyRstStreamFrame 2012-10-30 08:19:48 +01:00
Norman Maurer
62395ad1c5 Merge pull request #693 from veebs/3ws
updated autobahn test instructions in 3 branch
2012-10-29 23:21:30 -07:00
Norman Maurer
db697f1f06 [694] WebSocket08FrameDecoder calls await*() in the Worker-Thread 2012-10-29 21:04:11 +01:00
Veebs
43d937b39f updated autobahn test instructions 2012-10-29 04:11:02 -07:00
Norman Maurer
b1cfaad9bf Fix NPE which can accour when the Selector is closed but there are still timeout tasks to handle on client mode. The NPE does not have any bad side-effects, but its still ugly. See #685 2012-10-26 11:40:20 +02:00
Trustin Lee
b9429c930f [#679] Netty 3.5.8 breaks app on startup with NPE
- Get system property when requested; do not cache it.
2012-10-24 10:38:23 -07:00
Norman Maurer
99698a5272 Fix NPE when System property os.name does not exist. See #669 and #679 2012-10-24 18:46:56 +02:00
Norman Maurer
e3cf41c9fb Upgrade to apiviz 1.3.2.GA. See #676 2012-10-23 13:20:02 +02:00
Norman Maurer
1e8b7d896a Fix comment 2012-10-17 15:47:21 +02:00
Norman Maurer
9c921b050f Some more optimization in HashedWheelTimer based on the comments of @viktorklang 2012-10-17 15:26:54 +02:00
Trustin Lee
543cb17acd Reduce synchronization overhead in HashedWheelTimer.start/stop() 2012-10-16 13:38:25 -07:00
Norman Maurer
b75ab6171c Only parse the packet length once per encrypted packet. See #658 2012-10-16 14:21:42 +02:00
Norman Maurer
52d64afa2f Fix the detection of encrypted data. See #655 2012-10-16 13:23:18 +02:00
Norman Maurer
0c82f5d2e5 Introduce helper method to detect if a buffer is encrypted. See #657 2012-10-16 13:22:41 +02:00
Norman Maurer
f5969778d0 Explicit close streams 2012-10-16 11:26:04 +02:00
Ngoc Dao
fb5e199d9e Uncomment the following lines if you want HTTPS 2012-10-09 14:33:12 +09:00
Ngoc Dao
ae909f5d12 Uncomment the following line if you want HTTPS: add missing imports 2012-10-09 14:30:15 +09:00
Norman Maurer
2056882cfc Fire the IdleStateEvent and also the ReadTimeOutException / WriteTimeOutException from the Worker-Thread. See #641 2012-10-05 20:08:21 +02:00
Norman Maurer
8669732479 Fix checkstyle 2012-10-05 07:16:54 +02:00
Norman Maurer
4bca91786a Merge pull request #637 from losipiuk/3
Call ChunkedWriteHandler.flush() once again if tried when locked.
2012-10-04 02:54:31 -07:00
Norman Maurer
389cdb124f Add a test that I wrote while working on some OOME problem 2012-10-04 11:07:05 +02:00
Norman Maurer
a6e89aa142 Manually GC direct ByteBuffer that is used by the Worker's on releaseExternalResources() to free up memory asap. See #638 2012-10-04 09:02:53 +02:00
Lukasz Osipiuk
20509fb516 Call ChunkedWriteHandler.flush() once again if tried when locked.
Force recursive call of ChunkedWriteHandler.flush() if another thread
tried to call it when lock was held.
Solves problem of lost resumeTransfer() call.
2012-10-02 15:17:23 +02:00
Norman Maurer
6ca523a754 Merge pull request #631 from ngocdaothanh/3
Add CORS headers
2012-10-01 21:48:37 -07:00
Norman Maurer
4dc4664692 Fix year in header 2012-10-01 06:59:13 +02:00
Norman Maurer
8f4c583e40 Fix NPE in MemoryAwareThreadPoolExecutor and also add a testcase. See #634 2012-10-01 06:57:12 +02:00
Ngoc Dao
605bbac15c Sort header names 2012-09-28 19:25:27 +09:00