Frédéric Brégier
4d61f6bda6
TrafficShaping v1
2009-03-18 18:48:37 +00:00
Trustin Lee
f777482a97
Fixed a problem where DefaultChannelGroup.write() doesn't recognize ChannelBuffers
2009-03-18 06:53:04 +00:00
Trustin Lee
ac198791e9
Forgot to check in the dtd
2009-03-17 22:17:30 +00:00
Trustin Lee
4cad3dc940
* Added a section about shutting down a netty application
...
* Revised a section about fragmentation
2009-03-17 11:32:11 +00:00
Trustin Lee
ff9d27ddf8
Updating user guide
2009-03-17 09:04:00 +00:00
Trustin Lee
a5ab271dc7
Deprecated CompatibleObjectDecoder
2009-03-16 07:52:19 +00:00
Trustin Lee
279bd7f0b9
Implemented ReplayingDecoderBuffer.toString() properly
2009-03-16 05:38:13 +00:00
Trustin Lee
7a1963249d
Ported high-low watermark to xnio
2009-03-16 05:00:29 +00:00
Trustin Lee
4fa8e3adfc
Reduced code duplication of AbstractXnioChannelHandler
2009-03-16 04:48:36 +00:00
Trustin Lee
880241366b
Removed unnecessary System.out.println
2009-03-16 04:38:43 +00:00
Trustin Lee
9b0bf68148
Made sure DefaultCookie doesn't accept reserved names
2009-03-16 04:37:13 +00:00
Trustin Lee
566f72abe6
A little bit more explanation on the usage of HttpChunkAggregator
2009-03-16 04:29:47 +00:00
Trustin Lee
6d4adea536
Fixed incorrect parameter name
2009-03-16 04:17:53 +00:00
Trustin Lee
c4269c1697
Changed ImmediateExecutorTest to use nanoTime
2009-03-16 03:59:31 +00:00
Trustin Lee
d020ffe44c
CookieDateFormat doesn't always use en_US locale
2009-03-15 15:39:41 +00:00
Trustin Lee
a074c0a95d
* Optimized QueryStringDecoder
...
* Moved DEFAULT_CHARSET to HttpCodecUtil
2009-03-14 13:48:01 +00:00
Trustin Lee
701d8a8aaa
Made sure the encoded cookie conforms to the RFC
2009-03-14 13:35:10 +00:00
Trustin Lee
eaca45eb8a
* Reimplemented CookieDecoder to understand quoted-strings
2009-03-14 13:13:28 +00:00
Trustin Lee
3e2bf2e163
A little bit more tolerance
2009-03-13 17:09:31 +00:00
Trustin Lee
f78ac1f29a
A little bit more tolerance
2009-03-13 17:08:25 +00:00
Trustin Lee
e4c283fb89
Avoid timing errors
2009-03-13 16:43:39 +00:00
Trustin Lee
9e0e310ffe
* Improved CookieDecoder to be more tolerant
...
* Added a test case for comma delimited cookies
2009-03-13 16:33:49 +00:00
Trustin Lee
611364e47c
Suppressed unnecessary autoboxing
2009-03-13 16:28:20 +00:00
Trustin Lee
dc61906620
Fixed test failures
2009-03-13 15:53:52 +00:00
Trustin Lee
bbf32cae51
* Prettier cookie attribute names
...
* Removed an unused method
2009-03-13 15:49:35 +00:00
Trustin Lee
3e6f638449
Removed the unnecessary last semicolon
2009-03-13 15:48:23 +00:00
Trustin Lee
efd5af9313
Brought back the encode() method of CookieEncoder
2009-03-13 15:46:41 +00:00
Trustin Lee
b6cfc24127
Handles client-side cookie much better now
2009-03-13 15:29:54 +00:00
Trustin Lee
510a270cb4
CookieEncoder should not use a Map but use a Set because cookie name might be duplicate
2009-03-13 15:17:11 +00:00
Trustin Lee
e3f3e8ce5a
Cookies can have the same name but different paths or domains - updated DefaultCookie.equals and compareTo
2009-03-13 15:15:24 +00:00
Trustin Lee
7677aafc1e
* CookieDecoder is more tolerant to quoted values
...
* CookieDecoder now understands the first $Version attribute
2009-03-13 15:06:13 +00:00
Trustin Lee
d1bafbc65f
* Fixed a problem where 'Expires' cookie attribute is misinterpreted
...
* CookieEncoder now uses Cookie.getVersion() to determine the cookie version instead of constructor parameter
2009-03-13 14:45:43 +00:00
Trustin Lee
32ddc4541d
Updated author tags
2009-03-13 13:57:24 +00:00
Trustin Lee
f04003abbe
CookieEncoder / CookieDecoder should not urlencode/urldecode attributes except for the value
2009-03-13 13:53:53 +00:00
Trustin Lee
0da3fcbe51
Fixed a bug where CookieEncoder generates a cookie with 'version=2'
2009-03-13 12:59:29 +00:00
Trustin Lee
199088a7c5
Two FIXMEs
2009-03-13 12:55:38 +00:00
Trustin Lee
a26d1e4392
Fixed a problem where CookieDecoder doesn't strip surrounding quotes for certain values
2009-03-13 12:48:23 +00:00
Trustin Lee
1912bfc81d
Fixed test failures
2009-03-13 12:42:03 +00:00
Trustin Lee
ede8316642
Fixed a problem where the value of commentURL and port is not double-quoted
2009-03-13 12:39:22 +00:00
Trustin Lee
9c8106948e
Made CookieHeaderNames package private
2009-03-13 12:35:30 +00:00
Trustin Lee
b796a1d97b
* Renamed Cookie.portList to Cookie.ports and its type from int[] to Set<Integer>
...
* Renamed CookieHeaderNames.PORTLIST to CookieHeaderNames.PORT
2009-03-13 12:32:47 +00:00
Andy Taylor
b8f03d60e4
added cookie v1 and v2 decoding support
2009-03-13 11:58:29 +00:00
Trustin Lee
df3ac447ff
* Replaced Cookie.setPortList(int[]) with Cookie.setPortList(int...)
...
* Improved DefaultCooke.setPortList() integrity check
* DefaultCookie.getPortList() returns a copy
2009-03-13 11:51:19 +00:00
Andy Taylor
395d57b6eb
added cookie v1 and v2 encoding support
2009-03-13 10:12:51 +00:00
Trustin Lee
83301cd183
Added a link to the Java tutorial which inspired the QOTM example
2009-03-12 14:53:04 +00:00
Trustin Lee
8eb3e57add
A little bit more Javadoc
2009-03-12 14:51:29 +00:00
Trustin Lee
dbbd7ed3f5
* Implemented old blocking I/O based UDP transport - supports multicast, too
...
* Added Quote of the Moment example to show how to use the UDP transport
2009-03-12 14:48:48 +00:00
Trustin Lee
5754d9d87f
* Added receiveBufferSizePredictor property to DatagramChannelConfig
...
* The default predictor for DatagramChannel is FixedReceiveSizePredictor(768) which should work for most cases
2009-03-12 13:17:30 +00:00
Trustin Lee
d33e38e626
Added DefaultDatagramChannelConfig
2009-03-12 12:56:41 +00:00
Trustin Lee
1931ba6ceb
Switched from tar.gz to tar.bz2
2009-03-12 12:32:16 +00:00
Trustin Lee
469258a862
Added datagram channel interfaces
2009-03-12 12:22:01 +00:00
Trustin Lee
7023c0599c
A small rant
2009-03-12 09:21:45 +00:00
Trustin Lee
731c0d94f3
Local transport doesn't need to support setInterestOps
2009-03-12 08:30:23 +00:00
Trustin Lee
c58568e094
cleanup
2009-03-12 07:27:19 +00:00
Trustin Lee
a91f3e4acf
Tiny code cleanup
2009-03-12 07:17:25 +00:00
Trustin Lee
5f1dd20d74
* Made sure ChannelFutures are notified when no lock is acquired in HttpTunnelingChannelHandler
...
* Reduced the visibility of some methods in HttpTunnelingChannelHandler
2009-03-12 07:01:20 +00:00
Trustin Lee
937ee06d9d
Simplified stream I/O in HttpTunnelingServlet using dynamic channel buffer
2009-03-12 06:42:39 +00:00
Trustin Lee
35b08df70a
* ChannelBuffer.writeBytes(InputStream, ...) must return an integer
...
* Fixed a problem where DynamicChannelBuffer doesn't expand itself for some writeBytes() calls
2009-03-12 06:40:36 +00:00
Trustin Lee
1895864d38
Code style
2009-03-12 06:24:42 +00:00
Trustin Lee
2627751a44
Anonymous class to nested class
2009-03-12 06:24:26 +00:00
Trustin Lee
3a65234df5
Simplified HttpTunnelAddress.compareTo
2009-03-12 06:20:02 +00:00
Trustin Lee
bd184cc665
Renamed TestOptions to TestUtil
2009-03-12 00:42:41 +00:00
Trustin Lee
ebdfec8ec0
Reduced the number of InetAddress.getLocalHost() calls in test cases
2009-03-12 00:14:17 +00:00
Trustin Lee
0edc9abb0f
Made sure MemoryAwareThreadPoolExecutor and ExecutionHandler get along well with other traffic controlling handlers
2009-03-11 11:22:06 +00:00
Trustin Lee
d2c4a1143e
Added ChannelHandlerContext.get/setAttachment() - NETTY-134
2009-03-11 10:53:52 +00:00
Trustin Lee
f4dd29c70f
Fixed code style in DefaultChannelPipeline
2009-03-11 10:45:55 +00:00
Trustin Lee
368c34ace9
Renamed DefaultReceiveBufferSizePredictor to AdaptiveReceiveBufferSizePredictor
...
Added FixedReceiveBufferSizePredictor
2009-03-11 09:27:14 +00:00
Trustin Lee
e523b8ec0f
Added default constructors with sensible default values
2009-03-10 08:57:02 +00:00
Trustin Lee
4e989e20d4
Added HttpChunkAggregator
2009-03-10 08:42:19 +00:00
Trustin Lee
23a73f20d6
Fixed a bug where HttpMessage's content becomes an EMPTY_BUFFER after messageReceive event is already fired to process chunked encoding
2009-03-10 08:37:45 +00:00
Trustin Lee
445be963ae
Oops. Silly mistake when creating a new string builder
2009-03-10 07:57:36 +00:00
Trustin Lee
3235c154a3
Implemented hashCode, compareTo, equals, and toString for HttpResponseStatus
2009-03-10 07:56:53 +00:00
Trustin Lee
94544193bd
Better formatting
2009-03-10 07:54:02 +00:00
Trustin Lee
a5ebbfb111
* all limit parameters are mandatory to create HTTP decoders now for better security
...
* chunks are not merged anymore for better security
* modified HTTP client example to handle HTTP chunks
2009-03-10 07:53:15 +00:00
Trustin Lee
4a72aafd56
Resolved issue: NETTY-133 Limit the length of HTTP header lines.
...
* Added maxHeaderSize option
* Added maxInitialLineLength option
* Overall HTTP code cleanup
2009-03-10 07:20:27 +00:00
Trustin Lee
c9b3122b6c
More strict validation on HTTP headers to defend against HTTP response splitting atack
2009-03-09 21:05:49 +00:00
Trustin Lee
ebe5ad3ef2
JUnit should ignore TestOptions
2009-03-09 19:16:59 +00:00
Trustin Lee
ddd756b276
Better option handling
2009-03-09 19:07:11 +00:00
Trustin Lee
e6cc8fb5eb
Printed a warning message when timing tests are disabled
2009-03-09 19:05:59 +00:00
Trustin Lee
a5a7181615
Renamed TimingTestUtil to TestOptions
2009-03-09 19:04:35 +00:00
Trustin Lee
0a72ffeacd
Added an option to exclude timing tests
2009-03-09 19:03:48 +00:00
Trustin Lee
832ed0c198
Fixed NETTY-130 (Chunked encoding emulation for a large non-chunked HTTP request)
...
* Replaced mergeChunks option with maxChunkSize
* if maxChunkSize is greater than 0 and any content or chunk larger than maxChunkSize is received, it's split into multiple chunks as if a chunked request is received.
* Added unfold option to FrameDecoder and ReplayingDecoder
2009-03-09 08:50:24 +00:00
Trustin Lee
7985fa94a9
Fixed NPE in the HTTP example
2009-03-09 08:18:52 +00:00
Trustin Lee
f3149fafc1
More explanation on event ordering of OrderedMemoryAwareThreadPool
2009-03-06 06:52:26 +00:00
Trustin Lee
019f5f0292
Fixed a problem where *SocketServerBootstrapTest fails when an O/S doesn't allow modifying the buffer size.
2009-03-05 15:33:14 +00:00
Trustin Lee
666c943b66
* Added ChannelFutureListener.CLOSE_ON_FAILURE
...
* Reduced code duplication
* Fixed warnings by FindBugs
2009-03-04 14:30:47 +00:00
Trustin Lee
07c720ad2c
Typo
2009-03-04 14:27:20 +00:00
Trustin Lee
dfd9669797
Code cleanup
2009-03-04 14:17:35 +00:00
Trustin Lee
1781e0e1dd
Fixed find bugs warnings
2009-03-04 14:15:59 +00:00
Trustin Lee
6ce3eebc55
Fixed find bugs warnings
2009-03-04 14:14:06 +00:00
Trustin Lee
7044f9a586
Fixed find bugs warnings
2009-03-04 14:13:39 +00:00
Trustin Lee
f93c240a7c
Fixed find bugs warnings
2009-03-04 14:13:02 +00:00
Trustin Lee
392900e4b6
More cleanup
2009-03-04 14:11:54 +00:00
Trustin Lee
b9f604ca1d
Code cleanup
2009-03-04 14:11:08 +00:00
Trustin Lee
fbfebb1fd9
Code cleanup
2009-03-04 14:08:31 +00:00
Trustin Lee
4979cb6a21
A little bit of code clean up
2009-03-04 13:50:19 +00:00
Trustin Lee
b676175882
Actually it was being taken care of.. reverted back
2009-03-04 13:45:40 +00:00
Trustin Lee
0847720e41
Took care of the case where a message implements both HttpMessage and HttpChunk
2009-03-04 13:44:58 +00:00
Trustin Lee
35ac9ef38e
Fixed a bug: NETTY-129 CompositeChannelBuffer.getBytes(offset, GatheringByteChannel, length) doesn't respect offset and length parameter
2009-03-04 13:43:56 +00:00
Trustin Lee
cd3859b002
proper handling of cancelled keys
2009-03-04 13:04:28 +00:00
Trustin Lee
4d95e233bc
* Removed an unnecessary override in MemoryAwareThreadPoolExecutor
...
* Updated Find Bugs filter
2009-03-04 10:54:55 +00:00
Trustin Lee
f04ca5b970
Shut eclipse compiler up
2009-03-04 10:54:00 +00:00
Trustin Lee
39ec19078c
Code clean up
2009-03-04 10:35:55 +00:00
Trustin Lee
3a8b92929e
Reduced too broad catch block
2009-03-04 10:26:34 +00:00
Trustin Lee
9e623c9cb1
Fixed inconsistent synchronization
2009-03-04 10:24:27 +00:00
Trustin Lee
7d00231a60
Fixed inconsistent synchronization
2009-03-04 10:24:13 +00:00
Trustin Lee
39cc4bc3fb
Better exception handling
2009-03-04 10:15:14 +00:00
Trustin Lee
2dc5463e93
Fixed issue: NETTY-128 Unable to run netty client with a Security Manager
2009-03-03 09:54:34 +00:00
Trustin Lee
9bbce4a223
Fixed a bug where a dynamic buffer's readerIndex goes out of sync on expansion
2009-02-26 11:28:21 +00:00
Trustin Lee
86bc09159d
Fixed APIviz errors
2009-02-26 11:02:43 +00:00
Trustin Lee
2321499c8c
There was no need to introduce a thread local to avoid event recursion
2009-02-26 10:51:03 +00:00
Trustin Lee
903c530ae0
Fixed a problem where NioWorker.writeNow() doesn't work when it's called recursively
...
* Added a boolean thread local variable to check if writeNow() has been called by itself
2009-02-26 10:32:33 +00:00
Trustin Lee
1ff58978a2
Fixed a bug where DefaultChannelFuture.isSuccess() returns true even if the future is not done yet
2009-02-26 09:28:37 +00:00
Trustin Lee
ae7fb55d62
Removed printlns
2009-02-26 09:14:33 +00:00
Trustin Lee
284fc4db44
Removed println
2009-02-26 09:13:26 +00:00
Trustin Lee
5fdce19902
Reverted the unnecessary changes related with shutting FindBug up
2009-02-26 09:10:59 +00:00
Trustin Lee
6200d39bdd
Reverted the unnecessary changes related with shutting FindBug up
2009-02-26 09:08:34 +00:00
Trustin Lee
0132b00091
Fixed a couple findbugs warnings
2009-02-26 09:05:01 +00:00
Trustin Lee
a8d51cfad8
* Forgot to check in the http example code which was affected by the recent refactoring on Cookies
...
* Removed a FIXME in LocalTransportRegister - it's just an example.
2009-02-26 09:02:47 +00:00
Trustin Lee
5e64bb66e8
* Fixed a problem where CookieEncoder trims the value (it should not)
...
* Made sure the cookie values follow the URI encoding
2009-02-26 08:44:58 +00:00
Trustin Lee
9550c0759d
Strict cookie name validation
2009-02-26 08:35:38 +00:00
Trustin Lee
b71d2d3d7f
Updated fixmes for ataylor regarding cookie encoding/decoding
2009-02-26 08:06:07 +00:00
Trustin Lee
b8bc78a7d0
* Renamed HttpCookie to Cookie
...
* Split Cookie into an interface and its implementation (DefaultCookie)
* Renamed HttpCookieEncoder/Decoder to CookieEncoderDecoder
* Added all optional fields to Cookie
* Made Cookie.value mutable
* Revised DefaultCookie.toString
2009-02-26 07:59:37 +00:00
Trustin Lee
29b0af4f07
* Fixed a problem where query parameter components are not correctly encoded / decoded
...
* Changed the default charset of the query parameters to UTF-8
* Allowed a user to specify the charset of QueryStringEncoder/Decoder
2009-02-26 06:34:07 +00:00
Trustin Lee
63cb4a023f
Implemented AbstractXnioChannels.handleWritable() properly (needs cleanup and optimization though)
2009-02-26 01:38:29 +00:00
Trustin Lee
49c0f33461
Improved AbstractXnioChannelHandler to use ReceiveBufferSizePredictor
2009-02-26 01:29:11 +00:00
Trustin Lee
23b13eeafe
More interfaces for the XNIO transport
2009-02-25 15:19:54 +00:00
Trustin Lee
d2274f75da
Introduced more interfaces to the XNIO transport
2009-02-25 15:11:26 +00:00
Trustin Lee
13c68c7643
* Made ChannelConfig.setOption() public
2009-02-25 14:53:31 +00:00
Trustin Lee
988fff225f
Better exception handling on a connection attempt
2009-02-25 14:47:27 +00:00
Trustin Lee
94e8f31bfa
Added more todo for the xnio transport
2009-02-25 10:43:03 +00:00
Trustin Lee
fe220d42ec
2009-02-25 10:40:26 +00:00
Trustin Lee
214a26b529
Fixed a problem where XNIO transport doesn't work for the serverside
2009-02-25 10:34:17 +00:00
Trustin Lee
c3bd292f73
Fixed a problem where XnioChannelRegistry fails to find a server channel if IPv6 local address is specified
2009-02-25 10:21:35 +00:00
Trustin Lee
9043fdb622
Related issue: NETTY-75 XNIO transport
...
* The preliminary initial implementation of the XNIO transport
2009-02-25 10:10:03 +00:00
Trustin Lee
0c27f015bf
* Better exception handling on bind failure in ServerBootstrap
...
* Fixed a problem where UnfailingChannelFuture doesn't tell what exception cause the IllegalStateException
2009-02-24 04:58:19 +00:00
Trustin Lee
ae22b0aaa1
Fixed failing tests
2009-02-21 19:34:22 +00:00
Trustin Lee
547af08bc6
* Made sure ServerBootstrap accepts only ServerChannelFactory
...
* Validation first, state check later
2009-02-21 19:32:32 +00:00
Trustin Lee
f6ee08090a
* Added ServerChannelFactory
...
* All ChannelFactories that creates a ServerChannel now implements ServerChannelFactory
2009-02-21 19:29:38 +00:00
Trustin Lee
cd341609fa
* Renamed Local*ChannelFactory to DefaultLocal*ChannelFactory
...
* Local*ChannelFactories are now interfaces
2009-02-21 19:24:49 +00:00
Trustin Lee
b56bdd89dd
Marked some classes as final in the http tunneling socket transport
2009-02-21 19:21:12 +00:00
Trustin Lee
3d7214ba61
* Renamed LocalServerChannel to DefaultLocalServerChannel
...
* Added LocalServerChannel interface
* Covariant return types for Local*ChannelFactory
2009-02-21 19:15:30 +00:00
Trustin Lee
0e443c3a02
Added ThreadLocalBoolean and replaced unnecessary anonymous classes
2009-02-21 19:12:03 +00:00
Trustin Lee
cd6fce50bc
* Extracted common code from various ChannelConfig implementations to DefaultChannelConfig and DefaultServerChannelConfig
2009-02-21 19:08:08 +00:00
Trustin Lee
fdd74f252b
* Renamed AbstractLocalChannel to DefaultLocalChannel
...
* Removed unnecessary subclasses of DefaultLocalChannel
* Added LocalChannel interface
2009-02-21 18:41:21 +00:00
Trustin Lee
e1b5806560
* Removed AbstractServerChannel.getLocalAddress() to enforce the use of covariant return types in its subclasses
...
* Renamed LocalChannel to AbstractLocalChannel
2009-02-21 18:34:27 +00:00
Trustin Lee
2ab02caa67
Implemented two more methods in AbstractServerChannel
2009-02-21 09:32:29 +00:00
Trustin Lee
874b043297
Added more TODOs
2009-02-20 13:07:03 +00:00
Trustin Lee
8872294728
FIXME
2009-02-20 12:57:51 +00:00
Trustin Lee
95b6558068
Fixed author tags
2009-02-20 12:56:44 +00:00
Trustin Lee
d550109796
Implemented Comparable, hashCode, equals, and toString for HttpCookie
2009-02-20 12:49:54 +00:00
Trustin Lee
df05ba3733
* Made CaseIgnoringComparator a singleton
...
* Changed HttpCookieDecoder to return a Map instead of a Set
* Optimized imports
2009-02-20 12:41:59 +00:00
Andy Taylor
fea082e689
fixed cookie support
2009-02-17 17:13:13 +00:00
Trustin Lee
aa36f446f5
Forgot to commit
2009-02-17 10:07:25 +00:00
Trustin Lee
1f9c8256d8
HttpMessageEncoder.getCookieHeaderName() must be protected
2009-02-17 09:50:10 +00:00
Trustin Lee
6671cd34fa
Indentation
...
Made HttpTunnelingSocketChannelConfig invisible to a user
2009-02-17 09:47:28 +00:00
Trustin Lee
3922fb8a44
HttpTunnelClientSocket -> HttpTunnelingClientSocket
...
HttpTunnelSocket -> HttpTunnelingSocket
2009-02-17 09:45:32 +00:00
Trustin Lee
4bd06dfdb1
Fixed indentation
2009-02-17 07:17:03 +00:00
Trustin Lee
5281ef6aa7
Added HttpTunnelAddress.toString()
2009-02-17 07:14:23 +00:00
Trustin Lee
a77664bf8f
* Fixed compiler warnings
...
* HttpTunnelAddress should have proper hashCode, equals, and compareTo
2009-02-17 07:13:47 +00:00
Trustin Lee
5eb3a748c2
Fixed compiler warnings
...
Renamed reConnect to reconnect
2009-02-17 07:09:18 +00:00
Trustin Lee
b174d2f2e0
Padding for ID string
2009-02-16 14:32:40 +00:00
Andy Taylor
c05f70bdcf
renamed servlets
2009-02-16 13:27:27 +00:00
Andy Taylor
e977bbf9fe
renamed servlets
2009-02-16 13:27:06 +00:00
Trustin Lee
121c88d7e2
* Removed TimeBasedUuidGenerator
...
* Fixed a bug where DefaultChannelGroup doesn't recognize the new Integer ID
2009-02-16 12:02:06 +00:00
Trustin Lee
149d97d013
* Fixed issue: NETTY-125 (Backward incompatible) Use an integer as a Channel ID instead of UUID
...
* More concise Channel.toString() and ChannelEvent.toString() implementations
2009-02-16 11:59:33 +00:00
Andy Taylor
9e60db4078
added TunnelAddress
2009-02-16 11:40:37 +00:00
Andy Taylor
2b7427de4f
renamed to HttpTunnel.....
2009-02-16 10:33:43 +00:00
Andy Taylor
1a96b48026
added ClientSocketChannelFactory to ServletClientSocketChannelFactory constructor
2009-02-16 10:21:44 +00:00
Trustin Lee
4f391f5bbc
ReplayingDecoder should not throw an IllegalStateException even if a decoder implementation returns null when state transition occurred at least.
2009-02-15 12:47:12 +00:00
Trustin Lee
6370d06fb3
Lowered the shared resource explosion detection threshold and changed the log level from warn to debug just in case it's false positive
2009-02-13 13:28:35 +00:00
Trustin Lee
3d355eb48a
Added misuse detection to MemoryAwareThreadPoolExecutor and HashedWheelTimer, where a user can create too many instances
2009-02-13 12:41:46 +00:00
Trustin Lee
065218fd10
Forgot to mark one more volatile member transient
2009-02-13 11:53:05 +00:00
Trustin Lee
06d5f5264e
LocalChannelREgistry should use ConcurrentHashMap
2009-02-13 11:51:53 +00:00
Trustin Lee
5f2f072d69
Fixed a couple bugs in IdleStateHandler, caused by blind copy and paste
2009-02-13 11:33:22 +00:00
Trustin Lee
c153fd5bd0
Fixed an infinite recursion in Base64
2009-02-13 10:37:10 +00:00
Trustin Lee
db18337762
* Fixed most Find Bugs warnings
...
* Added UnreplayableOperationException
2009-02-13 10:21:28 +00:00
Trustin Lee
fb64aa94b5
Fixed a bug found by Find Bugs
2009-02-13 09:14:41 +00:00
Trustin Lee
ae004b5331
Fixed some problems reported by Find Bugs (mostly to shut it up)
2009-02-13 09:11:42 +00:00
Trustin Lee
7e8a1cd9c2
Code cleanup
2009-02-13 08:55:06 +00:00
Trustin Lee
d9c0befe24
Fixed equality comparison methods of DefaultChannelGroup
2009-02-13 08:17:35 +00:00
Trustin Lee
b22a578538
Prettier DefaultChannelGroup.toString()
2009-02-13 07:52:38 +00:00
Trustin Lee
1896c90207
* Removed ChannelGroupFactory that causes memory leak
...
* Added the default constructor for DefaultChannelGroup
2009-02-13 07:51:46 +00:00
Trustin Lee
e8665ea867
Added a convenience constructor to LocalAddress
2009-02-13 06:53:22 +00:00
Trustin Lee
395fcbbd29
Simplified LocalAddress implementation - no more global reference map that causes memory leak
2009-02-13 06:52:04 +00:00
Trustin Lee
1b28c126c5
Fixed a problem where DefaultNioSocketChannelConfig allowed incorrect configuration of write buffer watermark values
2009-02-13 06:36:30 +00:00
Trustin Lee
65048c930f
Made DirectChannelBufferFactory's preallocatedBufferCapacity configurable
2009-02-13 06:25:29 +00:00
Trustin Lee
91d7a329d4
* Renamed Concurrent*Weak*HashMap to Concurrent*WeakKey*HashMap to avoid confusion
...
* Added some FIXMEs related with potential memory leak
2009-02-13 06:19:10 +00:00
Trustin Lee
8aff5914d9
Added IdleState-aware ChannelHandler implementations
2009-02-13 06:05:21 +00:00
Trustin Lee
7b721ef1d4
Prettier LocalAddress.toString()
2009-02-13 04:51:36 +00:00
Trustin Lee
fa8890580e
Indentation
2009-02-13 04:41:01 +00:00
Trustin Lee
bf6a7db90a
Added more convenience constructors to HashedWheelTimer
2009-02-13 04:29:56 +00:00
Trustin Lee
789bfd3221
Changed the type of second unit timeout from long to int
2009-02-13 04:24:29 +00:00
Trustin Lee
11478edb5b
Fixed NPE
2009-02-13 04:17:36 +00:00
Trustin Lee
b49f8d8353
* Renamed the callback methods for Read/WriteTimeoutHandler
...
* More convenient exception handling
2009-02-12 15:41:58 +00:00
Trustin Lee
b06e33f5ee
Changed the default time unit to SECONDS
2009-02-12 15:33:28 +00:00
Trustin Lee
7f16fa352a
Removed unnecessary variable in IdleStateHandler
2009-02-12 15:31:39 +00:00
Trustin Lee
2c8f669030
Added IdleState.ALL_IDLE - was able to simplify even more
2009-02-12 15:29:35 +00:00
Trustin Lee
cbd2dec0fd
* Reverted back recent changes
...
* Renamed IdlenessHandler to IdleStateHandler
* Renamed IdlenessEvent to IdleStateEvent
* Added IdleState enum
2009-02-12 15:21:25 +00:00
Trustin Lee
2c3e7565fa
Implemented both idleness event roughly (needs some fix)
2009-02-12 11:03:10 +00:00
Trustin Lee
ed69d8bc15
Added another missing class
2009-02-12 10:51:38 +00:00
Trustin Lee
eab8623f4a
Added the missing class
2009-02-12 10:51:06 +00:00
Trustin Lee
0e5f798889
* Removed the getter methods in IdlenedssEvent and replaced them with subtypes
...
** Added ReaderIdlenessEvent and WriterIdlenessEvent
* Added protected methods which enables a user to override what to do on idleness / timeout
2009-02-12 10:50:43 +00:00
Trustin Lee
59b67420bf
Prettier output
2009-02-12 07:44:51 +00:00
Trustin Lee
2ebce4c987
Better keep-alive behavior
2009-02-12 07:39:20 +00:00
Trustin Lee
431151b8e5
Fixed issue: NETTY-107 - HttpMessageDecoder can not handle the content with no 'Content-Length' header.
2009-02-12 07:32:53 +00:00
Trustin Lee
2d682dc2a3
Fixed NETTY-107 HttpMessageDecoder can not handle the content with no 'Content-Length' header.
...
* Added HttpMessage.getContentLength(int defaultValue)
* Renamed state enum values
2009-02-12 07:17:29 +00:00
Trustin Lee
5faa7e9ea8
Removed unnecessary boxing / unboxing
2009-02-12 07:09:51 +00:00
Trustin Lee
e787378024
US-ASCII -> ASCII
2009-02-12 07:03:35 +00:00
Trustin Lee
912c66b931
Forgot to encode the last chunk correctly
2009-02-12 07:01:26 +00:00
Trustin Lee
cf1b915340
Improved the HttpServer example to demonstrate chunked encoding support
2009-02-12 06:44:52 +00:00
Trustin Lee
2a555082bb
Implemented chunked encoding support for the HTTP encoder
2009-02-12 06:37:22 +00:00
Trustin Lee
602c99c532
Fixed a problem where the last chunk is decoded too early
2009-02-12 06:27:17 +00:00
Trustin Lee
ebe77cef21
Fixed a 'shouldn't reach here' error
2009-02-12 06:26:05 +00:00
Trustin Lee
5ee6da3892
Fixed a bug where HttpRequest message is decoded twice
2009-02-12 06:25:13 +00:00
Trustin Lee
2ac8d11a34
Fixed a problem where DefaultHttpChunk.isLast returns a wrong value
2009-02-12 06:22:06 +00:00
Trustin Lee
44d56d2c1a
Added HttpChunk message for users who want to receive the content chunk by chunk
2009-02-12 06:09:29 +00:00
Trustin Lee
b6c992de8b
More optimistic initial line buffer size
2009-02-12 05:49:19 +00:00
Trustin Lee
a4fe52559b
More robust CR/LF handling in chunked encoding
2009-02-12 05:48:25 +00:00
Trustin Lee
9125ff5616
Fixed more issues related with chunked encoding
2009-02-12 05:41:22 +00:00
Trustin Lee
fb74832dc8
* Removed the usage of unnecessary state variable
...
* Renamed READ_CRLF to READ_END_OF_CHUNK
2009-02-12 05:28:55 +00:00
Trustin Lee
66423e0c1d
More robust chunk size parser
2009-02-12 05:23:39 +00:00
Trustin Lee
44498e067f
* Improved the detection of chunked encoding
...
* Fixed broken chunk length parser
2009-02-12 05:16:38 +00:00
Trustin Lee
01b0beab50
Typo
2009-02-12 05:14:16 +00:00
Trustin Lee
1243baa05b
More robust HTTP message decoding
2009-02-12 05:10:25 +00:00
Trustin Lee
9cdc4a959e
Better white space handling in HTTP
2009-02-12 05:02:22 +00:00
Trustin Lee
0198da7b6c
Related issue: NETTY-116 HTTP issues including chunked request / response patch
...
* Applied Dave's patch for QueryStringDecoder
2009-02-12 04:39:17 +00:00
Trustin Lee
32738273e0
Related issue: NETTY-116 HTTP issues including chunked request / response patch
...
* Applied Dave's patch for HttpMessageDecoder
2009-02-12 04:37:48 +00:00
Trustin Lee
334ea6f6e6
Now that there are two MessageEvent implementation, there's no point of having Channels.messageEvent() - a user could just create a new instance by calling the respective implementation's constructor
2009-02-11 09:56:28 +00:00
Trustin Lee
2b5a00e8b8
Removed unused code block
2009-02-11 09:53:14 +00:00
Trustin Lee
73cb446310
Removed the usage of Channels.messageEvent() which is obsolete
2009-02-11 09:52:36 +00:00
Trustin Lee
2030411759
Reverted r825 which doesn't make much sense
2009-02-11 09:47:53 +00:00
Trustin Lee
84aa72a70f
Made sure all timeout and idle time can be disabled with the non-positive constructor parameters
2009-02-11 09:38:24 +00:00
Trustin Lee
665db38994
Removed unused field
2009-02-11 09:32:41 +00:00
Trustin Lee
a09303785e
Removed unnecessary exception triggering
2009-02-11 09:32:17 +00:00
Trustin Lee
3acbe08eac
Code clean up
2009-02-11 09:24:28 +00:00
Trustin Lee
3f009da453
Resolved issue: NETTY-124 Clean the constants in HttpHeaders
...
* Reorganized HttpHeaders and added a bunch of constants
2009-02-11 08:48:39 +00:00
Trustin Lee
f44d9eced8
Added a TODO item
2009-02-11 06:14:07 +00:00
Trustin Lee
859f9a37a2
ChannelEvent implementations don't need to be public - package private is just enough because all events can be fired and created using Channels.
2009-02-11 06:03:00 +00:00
Trustin Lee
587c0ac27f
Added IdlenessHandler, IdlenessEvent, and DefaultIdlenessEvent
2009-02-11 05:59:35 +00:00
Trustin Lee
51b33c3678
Reverting back the latest change in ChannelState - not a good idea
2009-02-11 05:49:39 +00:00
Trustin Lee
2ee72abaaf
Added ChannelState.EXTENDED to support custom channel state like channel idleness
2009-02-11 05:45:53 +00:00
Trustin Lee
6e4f6b164c
* Renamed ChannelTimeoutException to TimeoutException
...
* Renamed ChannelReadTimeoutException to ReadTimeoutException
* Renamed ChannelWriteTimeoutException to WriteTimeoutException
2009-02-11 05:41:44 +00:00
Trustin Lee
d966ae57fc
Typo in comments
2009-02-11 05:36:37 +00:00
Trustin Lee
10a07b054e
Made inner classes final
2009-02-11 05:27:36 +00:00
Trustin Lee
8431db0407
Added a convenience constructor
2009-02-11 05:23:40 +00:00
Trustin Lee
bd0c55caed
Added a convenience constructor
2009-02-11 05:23:05 +00:00
Trustin Lee
25bef2d0d2
Changed the time unit of WriteTimeoutHandler to milliseconds
2009-02-11 05:22:24 +00:00
Trustin Lee
cb46aec1eb
* Proper synchronization and state management for HashedWheelTimer
...
* Removed an unnecessary synchronization on a timer instance
2009-02-11 05:05:20 +00:00
Trustin Lee
4ea1d640c2
Fixed a bug where ChannelReadTimeoutException and ChannelWriteTimeoutException can be raised after a channel is closed.
2009-02-11 04:59:45 +00:00
Trustin Lee
bb898265b9
Fixed incorrent time unit conversion
2009-02-09 11:29:17 +00:00
Trustin Lee
6d917ca7eb
Fixed errors in comments
2009-02-09 11:04:28 +00:00
Trustin Lee
bdc37294d9
System.nanoTime() doesn't seem to work very well with HashedWheelTimer and multi-core system
2009-02-09 10:58:30 +00:00
Trustin Lee
2b222b4994
Made sure MessageEvents are fired after both channels are fully connected
2009-02-09 09:28:12 +00:00
Trustin Lee
03de679b17
Removed unnecessary 'if' condition
2009-02-09 09:13:45 +00:00
Trustin Lee
e757135583
Fixed a problem where a channel is closed when a user tries to write a message when a connection attempt is in progress
2009-02-09 09:11:09 +00:00
Trustin Lee
f7cc2c971d
Fixed NPE in LocalChannel.closeNow()
2009-02-09 09:06:39 +00:00
Trustin Lee
ab306bb750
Updated Javadoc tags
2009-02-09 08:34:59 +00:00
Trustin Lee
78cdc91acd
* Added missing svn properties
...
* Updated @author tags
2009-02-09 08:32:13 +00:00
Trustin Lee
ddf8cad09c
* Added LocalAcceptedChannel and LocalClientChannel to distinguish two channel types easily
...
* Less visibility
2009-02-09 08:19:30 +00:00
Trustin Lee
198fbe3e7e
DefaultWriteCompletionEvent.toString() should not specify the unit of the amount explicitly
2009-02-09 08:15:19 +00:00
Trustin Lee
7e1dae813f
Fixed a problem where the local transport does not fire a writeComplete event
2009-02-09 08:11:12 +00:00
Trustin Lee
78963bef7d
Typo
2009-02-09 08:10:37 +00:00
Trustin Lee
a698db26c9
Reduced the number of isConnected() calls in AbstractChannel.toString()
2009-02-09 08:01:10 +00:00
Trustin Lee
d50322f27f
Fixed a problem where AbstractChannel.toString() returns dirty cache value
2009-02-09 08:00:26 +00:00
Trustin Lee
3569e869a9
Fixed a bug where LocalChannel.isConnected() returns a wrong value
2009-02-09 07:52:13 +00:00
Trustin Lee
ce7ca53bdf
Fixed a problem where LocalChannel.getParent() always returns null
2009-02-09 07:46:45 +00:00
Trustin Lee
a0e57b4428
Access control
2009-02-09 07:43:34 +00:00
Trustin Lee
9410fd155e
* Improved the local transport to behave more closely to real transports
...
* Changed how ChannelFactory is instantiated
2009-02-09 07:34:49 +00:00
Trustin Lee
5af89d1985
Removed unused line
2009-02-09 05:28:15 +00:00
Trustin Lee
233e85f63c
Made LocalChannelConfig invisible to users
2009-02-09 05:26:26 +00:00
Trustin Lee
35730de7cb
Made LocalChannelConfig invisible to users
2009-02-09 05:26:10 +00:00
Trustin Lee
202b53c132
* nextEphemeralPort is an integer now (still 4G ports)
...
* Used hexadecimal representation
* Made sure newEphemeralInstance() doesn't fall into an infinite loop (extreme case)
2009-02-09 05:23:35 +00:00
Trustin Lee
0fc8977bf2
Fixed ephemeral port duplication which might be caused by deserialization
2009-02-09 05:07:53 +00:00
Trustin Lee
73e8954239
Proper Java serialization support for LocalAddress
2009-02-09 05:04:49 +00:00
Trustin Lee
a4c491498b
Made LocalAddress final
2009-02-09 05:02:40 +00:00
Trustin Lee
632fb01bee
* Made sure there's only one LocalAddress instance with same id
...
* Added ephemeral port to LocalAddress
2009-02-09 05:01:15 +00:00
Trustin Lee
5e37b18f23
Fixed Javadoc
2009-02-09 04:51:11 +00:00
Trustin Lee
16583e3986
* Added ConcurrentWeakHashMap
...
* Updated serialVersionUID
2009-02-09 04:50:42 +00:00
Trustin Lee
8622b885b6
Code cleanup
2009-02-09 01:39:42 +00:00
Trustin Lee
e7aeffe14d
* Merged Andy's Local transport
...
* Merged Andy's HTTP tunnel
* Both needs some tidying up, but seems to work OK
2009-02-09 01:31:50 +00:00
Trustin Lee
9445fd1b6f
Fixed issue: NETTY-123 couple of errors in ReplayingDecoderBuffer.java
...
* Fixed a problem where ReplayingDecoderBuffer.indexOf ignores the specified parameters
2009-02-09 00:50:41 +00:00
Trustin Lee
0f5d16def8
Improved LoggingHandler to log the hex dump of a ChannelBuffer if necessary
2009-02-09 00:45:51 +00:00
Trustin Lee
8cab65d1e8
Fixed a warning message when LoggingHAndler is used
2009-02-08 16:40:05 +00:00
Trustin Lee
dd971b5f79
Prettier string representation of ChannelEvent implementations
2009-02-08 16:37:49 +00:00
Trustin Lee
52e4288964
Prettier string representation of ChannelEvent implementations
2009-02-08 16:12:18 +00:00
Trustin Lee
fff170b71e
Removed unused code from HashedWheelTimer
2009-02-08 07:04:26 +00:00
Trustin Lee
c46be1c7f9
Made sure HashedWheelTimer.newTimeout does not throw an IllegalArgumentException for small delay
2009-02-08 06:57:40 +00:00
Trustin Lee
188c7f94aa
Fixed a bug where channelClosed event is not propagated in ReadTimeoutHandler
2009-02-07 12:48:14 +00:00
Trustin Lee
63e586586b
WriteTimeoutHandler's pipeline coverage is actually "all"
2009-02-05 10:32:52 +00:00
Trustin Lee
206e3a9081
Resolved issue: NETTY-112 LoggingHandler request
...
* Added LoggingHandler
2009-02-05 08:22:21 +00:00
Trustin Lee
b36872ae2f
Added getTimeoutNanos() so that a user can extend the behavior of WriteTimeoutHandler
2009-02-05 07:38:04 +00:00
Trustin Lee
874fc7db77
Deprecated ChannelConfig.writeTimeoutMillis in favor of WriteTimeoutHandler
2009-02-05 07:07:02 +00:00
Trustin Lee
dde0232e19
* Added WriteTimeoutHandler
...
* Improved HashWheelTimeout.cancel()
2009-02-05 06:55:14 +00:00
Trustin Lee
c79bbd063f
Reduced the amount of the heap allocated for hexdump generation (512KiB -> 2KiB)
2009-02-05 06:34:17 +00:00
Trustin Lee
8f92cfb80a
Optimized event implementation to reduce memory footprint and improve performance somewhat
2009-02-05 05:56:47 +00:00
Trustin Lee
ebcf1b84e0
Documentation on writeComplete event type
2009-02-05 05:29:25 +00:00
Trustin Lee
0ea4c19c5c
* Added WriteCompletionEvent
...
* Added SimpleChannelHandler.writeComplete
* Added SimpleUpstreamChannelHandler.writeComplete
2009-02-05 05:20:37 +00:00
Trustin Lee
eb522dcd56
Reverted back recent changes related with TrafficMonitor
2009-02-05 05:03:34 +00:00
Trustin Lee
d93d74677e
Reverting back recent changes related with TrafficMonitor
2009-02-05 04:57:56 +00:00