Commit Graph

1980 Commits

Author SHA1 Message Date
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
Trustin Lee
58f8dd8942 Updated the broken first statement in the preface. 2010-05-04 11:49:16 +00:00
Trustin Lee
6269d21712 Fixed the oversized architecture diagram in the PDF 2010-05-04 11:22:11 +00:00
Trustin Lee
b134bfb974 Comment 2010-05-04 01:48:52 +00:00
Trustin Lee
8c490ed6e5 Wrong inception year 2010-05-04 01:47:43 +00:00
Trustin Lee
d4049710bb * Fixed dangling HTTP header entries in the linked list
* Added a test case
2010-05-04 01:46:15 +00:00
Trustin Lee
b2f550cb3b Fixed a bug where RtspResponseDecoder generates a request object instead of a response object 2010-05-03 02:21:01 +00:00
Trustin Lee
5741721f71 Fixed a bug where HEAD response is not read completely if it's transfer encoding is 'chunked'. 2010-04-16 13:32:55 +00:00
Trustin Lee
2ac79dcb74 A little optimization 2010-04-16 06:53:12 +00:00
Trustin Lee
f1bba73b22 Typo in the comment 2010-04-16 06:44:48 +00:00
Trustin Lee
d38219a85c Fixed a bug where non-successful HEAD response is assumed to have a message body 2010-04-16 06:40:29 +00:00
Trustin Lee
640fae7963 Updated architecture diagram 2010-04-16 06:31:49 +00:00
Trustin Lee
3aa3b07a95 Hint on downcasting and multicasting 2010-04-16 05:07:37 +00:00
Trustin Lee
66882ae708 * Updated APIviz tags
* More help on file transfer
2010-04-16 05:01:55 +00:00
Trustin Lee
ba08d11356 * Code clean-up
* More strict sanity check
2010-04-16 04:22:00 +00:00
Trustin Lee
48696d909f Updated APIviz tags 2010-04-16 04:12:43 +00:00
Trustin Lee
4e69cfe281 Exception should be raised even if count is 0 2010-04-12 11:57:46 +00:00
Trustin Lee
318a4d901f Fixed a silly bug in file transfer - There's no way to specify the start offset in FileRegion.transferTo() 2010-04-12 11:56:52 +00:00
Trustin Lee
17a222e397 * Changed the sort order of LocalAddress.compareTo()
* Added a FIXME to LocalAddress.compareTo()
* Modified LocalAddress.compareTo() to throw an Error when impacted by the known bug in compareTo() - will fix this bug in the next major feature release since it will break the backward compatibility
2010-04-12 10:53:49 +00:00
Trustin Lee
2fc539a9bc Proper LocalAddress.compareTo() implementation 2010-04-12 10:36:04 +00:00
Trustin Lee
d0d2519871 Fixed issue: NETTY-308 ChunkedInput implementations send only the first chunk 2010-04-12 10:22:51 +00:00
Trustin Lee
cac77a47b2 Fixed a wrong usage of ExecutionHandler in the example 2010-04-06 09:40:35 +00:00
Trustin Lee
8474026c92 * Misuse warnings are logged at WARN level now (with higher threshold)
* Extracted duplicate code into SharedResourceMisuseDetector
2010-04-06 09:23:25 +00:00
Trustin Lee
11e5e2ba56 Fixed issue: NETTY-306 bug in passing large nonchunked data through ChunketWriteHandler 2010-04-06 08:43:49 +00:00
Trustin Lee
1ae76562b7 Simplified container integration by removing unused features 2010-03-31 03:20:47 +00:00
Trustin Lee
3f7fff3fa5 HttpChunk is mutable so no need to create a new chunk 2010-03-31 03:02:58 +00:00
Trustin Lee
8eb353eb5d HttpChunk is mutable so no need to create a new chunk 2010-03-31 03:02:20 +00:00
Trustin Lee
b210c36ef9 Do not remove 'Content-Length' header even for a message with empty content - HEAD requires that 2010-03-31 02:50:19 +00:00
Trustin Lee
745b8300f0 Do not decode when the content is empty 2010-03-31 02:48:57 +00:00
Trustin Lee
c1a70b3579 HTTPS support 2010-03-31 02:26:51 +00:00
Trustin Lee
7c139cf1b7 * Added HttpClientCodec and HttpServerCodec
* Additional Javadoc about handling HEAD and CONNECT requests and their responses
2010-03-31 02:19:45 +00:00
Trustin Lee
c1b1db276d More useful Javadoc 2010-03-30 08:02:32 +00:00
Trustin Lee
4a4f129381 Better documentation 2010-03-24 05:07:27 +00:00
Trustin Lee
807291a2db Removed outdated XNIO transport - it needs to be rewritten in the next major feature release. 2010-03-24 04:00:49 +00:00
Trustin Lee
0d3389ee52 Updated Javadoc / xref css 2010-03-17 05:53:34 +00:00
Trustin Lee
5d36109464 Fixed Javadoc errors 2010-03-16 09:39:56 +00:00
Trustin Lee
fa6f7a4e6d Fixed a bug where the pooled send buffer is not released on a failed write 2010-03-08 04:17:28 +00:00
Trustin Lee
605d2969d2 Added @Deprecated annotation to the implementations of deprecated methods in ChannelBuffer (basically to silence nagging compiler) 2010-03-04 06:34:00 +00:00
Trustin Lee
1695e32b0f Removed unnecessary methods 2010-03-03 23:11:39 +00:00
Trustin Lee
8c81a1c8d8 Oops, wrong validation 2010-03-03 09:17:30 +00:00
Trustin Lee
6aa6694822 Related issue: NETTY-297 Non-ssl clients connecting to ssl server should be able to fail fast
* More strict SSL packet validation in SslHandler
2010-03-03 09:15:06 +00:00
Trustin Lee
3bbad77075 Resolved issue: NETTY-297 Non-ssl clients connecting to ssl server should be able to fail fast
* More strict SSL packet validation in SslHandler
2010-03-03 09:01:38 +00:00
Trustin Lee
5558f02003 Resolved issue: NETTY-298 Make ChannelBuffer setter/writer methods to accept int for narrower types 2010-03-03 05:35:01 +00:00
Trustin Lee
a3bae359bd Javadoc clean up 2010-02-24 00:24:41 +00:00
Trustin Lee
52ef2a5330 Upgrade your JDK to use FileRegion 2010-02-24 00:23:33 +00:00
Trustin Lee
049e97f03b Modified HTTP file server to utilize FileRegion support properly 2010-02-23 07:29:10 +00:00
Trustin Lee
aa4b8a2a6c * Changed the type of WriteCompletionEvent.amount from int to long
* Added back FileRegion since mapped buffer does not outperform transferTo()
* Refactored SocketSendBufferPool to support FileRegion
2010-02-23 07:18:58 +00:00
Trustin Lee
1989bd037b Collection -> List 2010-02-23 05:45:53 +00:00
Trustin Lee
69450ee6ec Doubled the default number of I/O threads which seems to be more sensible better performing default 2010-02-23 05:42:39 +00:00
Trustin Lee
b010cd15a5 Imlemented progress notification for NIO writes 2010-02-23 01:12:36 +00:00
Trustin Lee
43a603cfde * Removed unnecessary conditional
* Optimized the use of memory bandwidth in NioWorker.read
2010-02-23 00:56:04 +00:00
Trustin Lee
03268034c7 Removed unnecessary conditional 2010-02-23 00:43:15 +00:00
Trustin Lee
cc3b07c655 Removed FileRegion since a FileChannel can be mapped into a ChannelBuffer. What a lovely abstraction. 2010-02-22 06:18:39 +00:00
Trustin Lee
9ecd573937 Fixed Eclipse compiler warnings 2010-02-22 06:09:54 +00:00
Trustin Lee
59052be709 Related issue: NETTY-293 sendfile() support for NIO TCP transport
Support for progress notification of time-consuming I/O operations
* Added FileRegion
* Added ChannelFutureProgressListener
* Added ChannelFuture.setProgress()
* Performance seems to stay same as before fortunately
2010-02-19 09:58:38 +00:00
Trustin Lee
b97648f95e Comment fix 2010-02-19 09:18:10 +00:00
Trustin Lee
28bac1978f This should be volatile anyhow 2010-02-19 09:08:01 +00:00
Trustin Lee
0066f9c3ff Removed unnecessary volatiles from the examples 2010-02-19 09:02:57 +00:00
Trustin Lee
a462d0e85e Removed volatile from some internal state member variables in decoders because they are always either:
1) modified from the same threads or
2) protected by happens-before condition that is met by Executor's internal synchronization constructs
2010-02-19 09:00:00 +00:00
Trustin Lee
aa8e48df9f Removed 'volatile' from the member variables that are protected by ThreadPoolExecutor's BlockingQueue operations 2010-02-19 08:43:13 +00:00
Trustin Lee
e8c320c6c3 * Removed 'volatile' from the member variables that are protected by synchronized (this) block
* Updated comments regarding thread safety
2010-02-19 08:23:48 +00:00
Trustin Lee
de8671df93 Documentation fix 2010-02-19 05:13:48 +00:00
Trustin Lee
baf0978709 Fixed documentation 2010-02-19 04:49:52 +00:00
Trustin Lee
9980a25f7b Reverted back for backward compatibility 2010-02-19 04:37:36 +00:00
Trustin Lee
81d019e76a Reverted back for backward compatibility 2010-02-19 04:36:30 +00:00
Trustin Lee
d1c6ed6531 Added ChunkedFile interface 2010-02-19 04:18:35 +00:00
Trustin Lee
c7179aa28a Renamed ChunkedFile to ChunkedOioFile. ChunkedFile will be added again as an interface 2010-02-19 04:11:59 +00:00
Trustin Lee
d9de1675d0 Applied send buffer pool to nio datagram transport 2010-02-19 03:28:11 +00:00
Trustin Lee
32ef9e3e52 * Implemented send buffer pooling
* Renamed ReadBufferPool to SocketReceiveBufferPool
2010-02-19 03:10:30 +00:00
Trustin Lee
1a04586b54 Tiny optimization 2010-02-19 02:40:55 +00:00
Trustin Lee
2f601dcbaf WriteBuffer -> WriteRequestQueue 2010-02-19 01:41:32 +00:00
Trustin Lee
4be652ad04 Removed an unused method in ReadBufferPool 2010-02-19 01:13:38 +00:00
Trustin Lee
558c02b0df Tiny optimization 2010-02-19 00:57:23 +00:00
Trustin Lee
f4d7f573a1 Upgraded to Google Protobuf 2.3.0 2010-02-19 00:14:25 +00:00
Trustin Lee
cee5f945dc Tiny code clean up 2010-02-19 00:03:33 +00:00
Trustin Lee
545acfdf42 Resurrected the good old direct buffer pool as a read buffer pool instead of using it both for reads and writes. (write buffer pool needs different treatment.) 2010-02-18 15:51:06 +00:00
Trustin Lee
a9c90d0e4a Reverted back the changes about direct buffer pool - it doesn't seem to improve the performance as much as additional memory consumption and the latest one often led to OOME during testing 2010-02-18 13:00:31 +00:00
Trustin Lee
263e1ed601 It seems like using buffer pool during read doesn't seem to help performance at all. 2010-02-18 11:34:34 +00:00
Trustin Lee
e7c329cc4e Documentation 2010-02-18 11:33:54 +00:00
Trustin Lee
3412003bc2 Fixed an infinite loop 2010-02-18 04:29:58 +00:00
Trustin Lee
4ef4a92281 * Added ChunkedInput.isEndOfInput() and changed the contract of ChunkedInput.nextChunk() and hasNextChunk() to support slow streams 2010-02-18 04:24:41 +00:00
Trustin Lee
23b543c4ba Added more header getters and setters to HttpHeaders 2010-02-18 04:08:56 +00:00
Trustin Lee
3b0d843e59 Increased the default preallocation size for higher out of the box throughput 2010-02-18 02:47:09 +00:00
Trustin Lee
3e21c7a755 Catch CancelledKeyException from Selector.select() 2010-02-18 02:32:56 +00:00
Trustin Lee
3ae533815c Renamed the system property for NIO constraintLevel
Simpler log message
2010-02-18 02:23:51 +00:00
Trustin Lee
a58c7c4364 * Made the preallocated buffer capacity configurable
* Added an integer getter for SystemPropertyUtil
2010-02-18 02:12:15 +00:00
Trustin Lee
f650a8bcee Rewrote DirectBufferPool using preallocation strategy (like DirectChannelBufferFactory does) 2010-02-18 01:52:48 +00:00
Trustin Lee
2b6b49920c Refine the documentation a little bit more 2010-02-17 08:37:38 +00:00
Trustin Lee
ab1a598534 Better example that does not use attachment 2010-02-17 08:34:28 +00:00
Trustin Lee
696b5a1f45 Reorder sections in Javadoc 2010-02-17 08:28:45 +00:00
Trustin Lee
fe36292c94 Refine the documentation a little bit more 2010-02-17 08:28:00 +00:00
Trustin Lee
49f548bc5d Updated documentation 2010-02-17 08:24:25 +00:00
Trustin Lee
8841f6897f Updated documentation 2010-02-17 08:22:45 +00:00
Trustin Lee
39e91028eb Typo 2010-02-17 05:52:44 +00:00
Trustin Lee
08597e6f86 Javadoc 2010-02-16 11:55:44 +00:00
Trustin Lee
28fe7c67cb Implemented consolidate-on-flush in BufferedWriteHandler 2010-02-16 08:41:02 +00:00
Trustin Lee
dd7f588916 * Removed a solved question from the comment
* Applied the same optimization applied to the TCP transport to the UDP transport
2010-02-10 08:17:58 +00:00
Trustin Lee
bf721614ac * Removed tabs from css
* Unified indentation to 2 spaces per tab
* Re-added the Apache License header
* Show HR line
2010-02-09 05:41:34 +00:00
Trustin Lee
e1d9627113 More code font defaults 2010-02-09 04:09:46 +00:00
Trustin Lee
739e656963 More explanation on how ChannelPipelineFactory works 2010-02-09 03:56:29 +00:00
Trustin Lee
0857f398e0 Improved write performance by reducing the lame write attempts on the channel whose send buffer is full already 2010-02-09 03:41:12 +00:00