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