Commit Graph

1980 Commits

Author SHA1 Message Date
Trustin Lee
d8ff180610 NioDatagramWorker should reject the write attempt on an unbound
socket, raising NotYetBoundException.
2011-02-01 11:45:09 +09:00
Trustin Lee
dfe960855f Fixed issue: NETTY-380 releaseExternalResources() hang indefinitely
when called from a handler

* Replaced IoWorkerRunnable with DeadLockProofWorker
* ExecutorUtil now checks dead lock
2011-02-01 10:56:59 +09:00
Trustin Lee
8eb2d8eb43 ChannelGroup.write() should not write to a server channel 2011-01-31 15:25:22 +09:00
Trustin Lee
ad320f6cae Fixed NETTY-365 HashedWheelTimer.stop() enters an infinite loop when
called from TimerTask
Fixed NETTY-379 Intermittent slippery task timeout in HashedWheelTimer
* Throw an IllegalStateException if HashedWheelTimer.stop() is called
from TimerTask
* Reschedule the slipped task accurately instead of delaying it by one
round
2011-01-31 14:48:01 +09:00
Trustin Lee
23f33629ca Fixed a race condition in MemoryAwareThreadPoolExecutor
Replaced a semaphore with a custom concurrency construct to fix a
known race condition in MemoryAwareThreadPoolExecutor
2011-01-13 14:56:38 +09:00
Trustin Lee
9f55834823 Fixed incorrect usage of ByteBuffer.arrayOffset()
* NETTY-368 Wrappedbuffer does not honour posiiton()
* and similar mistakes found during a review
2011-01-12 19:23:50 +09:00
Trustin Lee
d7c27d1b71 Fixed Javadoc warnings 2011-01-12 19:11:32 +09:00
Trustin Lee
6bfd2d6cec Fixed issue: NETTY-374 ChunkedWriteHandler and handling messages after
channel close

Fixed a bug where a write requests made after closure are not
discarded
2011-01-12 18:27:34 +09:00
Trustin Lee
8ad04dc6ca Fixed issue: NETTY-377 messageReceived could happen before
channelConnected when using local channels

More precise LocalChannel state management to avoid incorrect event
order
2011-01-12 18:03:03 +09:00
Trustin Lee
7866282d52 Fixed indentation 2011-01-04 14:53:24 +09:00
iainmcgin
4f9e6dcb13 Fix for NETTY-370 - documentation updated to reflect the correct behaviour of
high / low water marks on the interest ops of nio channels.
2011-01-04 14:50:49 +09:00
Benoit Sigoure
1f1b8d8325 Add a new faster, memory efficient URL decoder.
Query string parameters need to be decoded as per RFC 3986, Section 2.
The implementation of the URLDecoder in the JDK is slow because it takes
long and inefficient code paths, and it generates a lot more garbage
than necessary.  This decoder is about 2x faster and doesn't allocate
any memory in the easy case where the decoded string is unchanged.
When the string needs to be changed, only one buffer is allocated for
the decoded string.
2011-01-04 14:44:36 +09:00
Bruce Mitchener
3d85d56631 Correct variable name in code samples. 2011-01-04 14:38:57 +09:00
Trustin Lee
1ffb1aea75 NETTY-364 Application level IP filter
* Merged Frederic's ipfilter patch (needs some review and documentation)
2010-11-12 10:20:03 +09:00
Trustin Lee
34b181236a NETTY-363 Traffic shaper
* Merged Frederic's traffic shaper patch (needs some review and documentation)
2010-11-12 10:16:51 +09:00
Trustin Lee
c0c9f689f6 NETTY-333 Support File Uploading in Netty HTTP Server
* Merged the Frederic's HttpPost patch (still needs some design and naming review + documentation)
2010-11-12 09:49:43 +09:00
Trustin Lee
0dbdbcdb96 Added @Override annotations which were disallowed in Java 5 but not anymore in Java 6. 2010-11-12 09:45:39 +09:00
Trustin Lee
f700f9b14f Fixed misleading Javadoc in ReplayingDecoder 2010-11-09 05:35:24 +00:00
Trustin Lee
1f2285f57e Fixed issue: NETTY-360 Changing Channel.interestOps sometimes does not work under heavy write traffic in NIO transport
* Made sure all setRawInterestOps() calls are protected by interestOpsLock
Fixed a race condition in the HexDumpProxy example
2010-10-24 18:24:20 +00:00
Trustin Lee
f13e7053fe Fixed an OOME in the HexDumpProxy example 2010-10-23 11:38:34 +00:00
Trustin Lee
b85731e59f Sync with upstream 2010-10-20 11:33:23 +00:00
Trustin Lee
35a2326e82 Fixed compilation errors in some compilers 2010-10-19 06:11:34 +00:00
Trustin Lee
4399c1e90b Removed nagging compiler warnings introduced by Eclipse Helios 2010-10-19 06:00:42 +00:00
Trustin Lee
57dc0b3bc8 Fixed issue: NETTY-359 Missing support for HTTP 'Expect: 100-continue' header.
* Improved HttpHeaders.is100ContinueExpected() to conform to the RFC
* HttpChunkAggregator now sends "HTTP/1.1 100 Continue" response automatically.
* Added some TODO items which should be done in 4.0.
2010-10-19 05:40:44 +00:00
Trustin Lee
d093ed4a54 Fixed a potential thread safety issue in SslHandler.handleRenegotiation() - it seems to cause the first handshake attempt to fail rarely on some platform (Solaris SPARC?) 2010-10-19 04:05:28 +00:00
Trustin Lee
4fd034ab5d Fixed issue: NETTY-359 Missing support for HTTP 'Expect: 100-continue' header.
* Improved the snoop example to support the 100-continue header
* Fixed a problem in HttpClientCodec, HTtpContentDecoder and HttpContentEncoder where 100-continue response causes incorrect behavior
2010-10-18 08:19:03 +00:00
Trustin Lee
04430cd6d3 Fixed issue: NETTY-359 Missing support for HTTP 'Expect: 100-continue' header.
* Added HttpHeaders.is/set100ContinueExpected()
* HttpMessageDecoder converts unchunked messages into chunked ones if Expect: 100-continue header exists.
2010-10-17 18:34:03 +00:00
Trustin Lee
13a1b73cd1 Fixed issue: NETTY-356 WebSocket encoder regression
* Fixed a bug where WebSocketFrameEncoder does not set MSB of the length field
2010-09-09 10:59:22 +00:00
Trustin Lee
0cc728a9f0 Resolved issue: NETTY-346 ReplayingDecoderBuffer doesn't support array()
* Added ReplayingDecoder.internalBuffer() so that a brave user accesses the internal buffer directly at one's own risk
2010-08-30 06:02:08 +00:00
Trustin Lee
d4438170c9 Fixed a buffer rewrite trap which occurs when DirectChannelBufferFactory is used 2010-08-26 06:15:06 +00:00
Trustin Lee
2eb2901c1c Fixed a bug where the CodecEmbedder implementations do not generate the close request - this issue prevented some encoders like ZlibEncoder from generating the footer 2010-08-26 05:38:34 +00:00
Trustin Lee
d223c2905d Fixed issue: NETTY-345 HttpChunkAggregator doesn't support retrieving trailing headers
* Merge the trailing headers into the aggregated message
2010-08-26 05:06:40 +00:00
Trustin Lee
ffccf71fa5 Fixed issue: NETTY-350 Copy/paste error in org.jboss.netty.handler.codec.http.HttpMessageDecoder constructor 2010-08-26 04:18:53 +00:00
Trustin Lee
e8fcbd4e75 Fixed a bug where some ChannelPipelineSinks do not always release its shutdownLock on an Error 2010-08-26 03:13:14 +00:00
Trustin Lee
30d5136973 Fixed a dead lock where MemoryAwareThreadPoolExecutor does not release its semaphore completely 2010-08-26 02:55:10 +00:00
Trustin Lee
1c13d8c9f3 Fixed a bug where HttpMessage.chunked flag is not cleared by HttpChunkAggregator 2010-08-26 02:07:11 +00:00
Trustin Lee
d68c5160ed Added parentId to ThreadNamingRunnable 2010-08-25 02:31:00 +00:00
Trustin Lee
3659847859 More strict thread naming rule 2010-08-25 02:12:57 +00:00
Trustin Lee
4680cd0bb3 Improved performance of ProtobufDecoder using array directly when possible (Thanks Ian - iswett@yahoo.com) 2010-08-16 05:57:34 +00:00
Trustin Lee
21db320f0e Fixed issue: NETTY-342 Small typo in the user guide 2010-08-16 05:24:50 +00:00
Trustin Lee
e36d2dc3de Fixed issue: NETTY-331 (Regression NETTY-262: Server bootstrap bound channel pipeline has become immutable)
* ServerBootstrap now always uses the default pipeline instead of the static one
2010-07-07 07:55:37 +00:00
Trustin Lee
1c6813a06d Fixed issue: NETTY-337 Multi-line headers truncated 2010-07-07 06:43:34 +00:00
Trustin Lee
3156ed5dd5 * Added WebSocketFrame.CLOSING_HANDSHAKE
* WebSocketFrameDecoder discards data if closing handshake was received before
2010-07-07 05:07:39 +00:00
Trustin Lee
35351701ff More compact binary frame length encoding in WebSockets 2010-07-07 04:29:41 +00:00
Trustin Lee
d32e7ff865 Fixed wrong comment 2010-06-30 09:43:18 +00:00
Trustin Lee
8216a3fa5e Commented out System.out.println 2010-06-30 09:42:48 +00:00
Trustin Lee
6bebbdad55 Javadoc 2010-06-30 09:35:47 +00:00
Trustin Lee
9d89ad0837 * Resolved issue: NETTY-336 Fine-grained control over thread renaming
** Redefined ThreadNameDeterminer
* Improved caching in AbstractChannel.toString()
* Improved overall OIO thread naming (thread ID number is a large number which doesn't look good though.  will fix it later)
2010-06-30 09:17:08 +00:00
Trustin Lee
cd6e7f0c3e Missing dots 2010-06-30 05:58:51 +00:00
Trustin Lee
5c790b5e8a Fixed a documentation error 2010-06-30 05:54:47 +00:00
Trustin Lee
5518344bc3 NETTY-335 Remove deprecated elements 2010-06-30 05:48:23 +00:00
Trustin Lee
e3a5a8eea2 Do not change the readerIndex 2010-06-25 02:52:30 +00:00
Trustin Lee
56c0e6da07 larger -> wider 2010-06-24 02:13:12 +00:00
Trustin Lee
674af6ae12 Fixed infinite loop in ProtobufVarint32FrameDecoder when too large varint length is received 2010-06-24 02:12:48 +00:00
Trustin Lee
ab0facdee5 * Discard too long frame in a more robust manner (i.e. should continue decoding after raising TooLongFrameException) 2010-06-24 01:53:51 +00:00
Trustin Lee
bae46eca49 Discard too long frame in a more robust manner 2010-06-24 01:45:32 +00:00
Trustin Lee
c9555d01bf Added a TODO to ProtobufVariant32FrameDecoder 2010-06-23 05:22:57 +00:00
Trustin Lee
b2ebe26a25 * Improved protocol buffers integration javadoc
* Changed the localtime example to use the base128 variant length header which is popular among protobuf users
2010-06-23 05:16:47 +00:00
Trustin Lee
685153663e Fixed wrong content length for websocket handshake messages 2010-06-22 07:02:27 +00:00
Trustin Lee
7df28adfe3 Fixed wrong content length for websocket handshake messages 2010-06-22 07:01:47 +00:00
Trustin Lee
e0545ba583 Fixed issue: NETTY-330 HttpMessageDecoder cannot decode new handshake messages
* HttpHeaders.getContentLength() returns 10 and 18 for WebSocket handshake messages
* Updated the WebSocket server example to support the new handshake method
2010-06-21 09:39:49 +00:00
Trustin Lee
c35c9eb1c3 Mention WebSocket 2010-06-21 08:16:31 +00:00
Trustin Lee
f88108e876 Fixed a bug: NETTY-329 ChannelBuffer.slice(index, length) returns a slice with wrong reader/writerIndex
* HeapChannelBuffer.slice(index, length) and ByteBufferBackedChannelBuffer.slice(index, length) should update indexes when they created a slice using duplicate()
* Added relevant test cases
2010-06-21 07:00:03 +00:00
Trustin Lee
575b7fb073 More Javadoc based on community feed back 2010-06-17 14:23:59 +00:00
Trustin Lee
de90cd6a3c System call needs to be made at least once so that it can fail when a user attempts to write on a closed channel 2010-06-16 03:33:29 +00:00
Trustin Lee
752e60a723 Suppress system calls when a user attempts to write an empty buffer 2010-06-16 03:28:30 +00:00
Trustin Lee
f753dc2b83 Replaced SslHandler.pendingEncryptedWrites with the thread-safe one 2010-06-16 03:12:00 +00:00
Trustin Lee
f2d490ef9f Suppress system calls when a user attempts to write an empty buffer 2010-06-16 03:10:19 +00:00
Trustin Lee
4b0219ee9b Potential fix for rare failure:
javax.net.ssl.SSLException: renegotiation attempted by peer; closing the connection
	at org.jboss.netty.handler.ssl.SslHandler.handleRenegotiation(SslHandler.java:967)
	at org.jboss.netty.handler.ssl.SslHandler.wrapNonAppData(SslHandler.java:810)
	at org.jboss.netty.handler.ssl.SslHandler.handshake(SslHandler.java:347)
2010-06-16 00:21:31 +00:00
Trustin Lee
cbe26db0e4 Replaced email with homepage url 2010-06-14 11:07:44 +00:00
Trustin Lee
2571564eb2 * Updated the author tag
* Added svn:keywords property
2010-06-14 11:06:45 +00:00
Trustin Lee
800fcd0ca2 More tests 2010-06-14 11:03:14 +00:00
Trustin Lee
6d0fb256c6 Fixed issue: NETTY-325 (QueryStringDecoder doesn't properly handle missing query string values and other corner cases)
* Rewrote QueryStringDecoder based on Benoit's work
* Added a test case for QueryStringDecoder
2010-06-14 10:57:48 +00:00
Trustin Lee
5097009f8c * Fixed an infiniloop in NioDatagramWorker which is triggered when a user writes an empty buffer.
* Reduced system calls on empty buffer
2010-06-07 02:11:04 +00:00
Trustin Lee
c032708ed7 Updated Javadoc 2010-06-07 01:50:02 +00:00
Trustin Lee
659eedb970 Better package description 2010-06-03 09:04:56 +00:00
Trustin Lee
4a390a1983 More Javadoc 2010-06-03 09:01:46 +00:00
Trustin Lee
3a92fb8a9e Fixed NETTY-320 ReplayingDecoderBuffer.toByteBuffer(int, int) throws java.lang.IndexOutOfBoundsException
* Added missing checkIndex() call
2010-06-01 09:19:19 +00:00
Trustin Lee
a55a1c6e72 Removed unnecessary lock 2010-06-01 08:38:51 +00:00
Trustin Lee
a2ef43cf3d Streamline LinkedTransferQueue.isEmpty() 2010-05-28 02:59:17 +00:00
Trustin Lee
11705c9915 Removed System.out 2010-05-27 12:40:50 +00:00
Trustin Lee
0d0b0c56c3 Fixed NETTY-319 HttpMessageDecoder incorrect parsing status line
* Specified an empty reason phrase if no reason phrase was specified
2010-05-27 12:38:54 +00:00
Trustin Lee
7d11a5369f Proper validation for HttpResponseStatus 2010-05-27 12:34:44 +00:00
Trustin Lee
d65cd371e7 Fixed a bug where HttpTunnelingClientSocketChannel's closeFuture is not notified if the connection is closed by the client 2010-05-27 12:02:49 +00:00
Trustin Lee
be544fa899 Added a TODO for 4.0 (or 3.3?) 2010-05-19 12:23:44 +00:00
Trustin Lee
c64e6866f6 Added a FIXME for later releases 2010-05-19 11:31:25 +00:00
Trustin Lee
d51ccd2211 The fix for RtspResponseDecoder should be applied to all RTSP decoders 2010-05-19 07:51:38 +00:00
Trustin Lee
0c9202ab75 Fixed a bug where RtspResponseDecoder does not decode a response with no 'Content-Length' header properly 2010-05-19 07:42:21 +00:00
Trustin Lee
3847fb00e5 Fixed issue: NETTY-310 Memory leak in netty-3.2.0.BETA1.jar
* Added a special internal use only constructor to AbstractChannel, which bypasses ID allocation
* EmbeddedChannel calls the special purpose constructor to avoid leak
2010-05-19 06:29:43 +00:00
Trustin Lee
93f9c4a2d6 * Added LengthFieldBasedFrameDecoder.extractFrame()
* ObjectDecoder overrides extractFrame() to avoid memory copy
2010-05-13 14:13:07 +00:00
Trustin Lee
d19aa4924e Simplified and hardened ObjectDecoder by extending LengthFieldBasedFrameDecoder 2010-05-13 13:40:36 +00:00
Trustin Lee
23dfc03060 migrating to docs.jboss.org 2010-05-07 11:21:10 +00:00
Trustin Lee
bdd213ec85 * Added missing Javadoc
* Proper getIntHeader() behavior
2010-05-06 07:50:19 +00:00
Trustin Lee
2c887daabe Added missing Javadoc 2010-05-06 07:37:27 +00:00
Trustin Lee
8bb9ad26ad Updated Javadoc 2010-05-06 07:33:26 +00:00
Trustin Lee
5edc4e16aa * StaticChannelPipeline's constructor should stop when a null is encountered
* Added a test case for StaticChannelPipeline
2010-05-06 07:00:52 +00:00
Trustin Lee
56cdf73cb9 Fixed issue: NETTY-314 ProtobufEncoder and ProtobufDecoder should accept MessageLite as well as Message. 2010-05-06 04:11:11 +00:00
Trustin Lee
1793c659ca Fixed indentation 2010-05-04 12:29:17 +00:00
Trustin Lee
13d83171fb Updated 'before getting started' 2010-05-04 12:09:50 +00:00
Trustin Lee
66cbce8f23 Removed the first paragraph 2010-05-04 11:58:21 +00:00