Commit Graph

3188 Commits

Author SHA1 Message Date
Frédéric Brégier
ac39f39f36 Update codec-http/src/main/java/io/netty/handler/codec/http/HttpPostRequestDecoder.java 2012-05-30 17:31:03 -07:00
Frédéric Brégier
5d2bf43b59 Optimize Buffer access while decoding by going through backend array when possible (divide by almost 2 the time spent in decoding) 2012-05-30 17:30:47 -07:00
Frédéric Brégier
759d0633a4 Add the SeekAheadOptimize class to enable faster seek of bytes values in HttpPostRequestDecoder 2012-05-30 17:30:36 -07:00
Trustin Lee
e8bc276ddd Fix in addContent when switching from MemoryAttribute if it is done when
last buffer added, in order to not close immediately the underlying
file before adding the last buffer.

- Contribution by @fredericBregier
2012-05-30 17:28:51 -07:00
Trustin Lee
dba9a6d408 Close channel when needed / Call force() only when necessary
- Contribution by @fredericBregier
2012-05-30 17:26:41 -07:00
Trustin Lee
92f010d688 Use int instead of long for maxFramePayloadLength 2012-05-30 17:21:51 -07:00
Trustin Lee
67ee22e23a Add max frame length for web socket to limit chance of DOS attack (#283)
- Contributed by @veebs
2012-05-30 17:13:00 -07:00
Trustin Lee
ec43aa121f Case-insensitive matching for Upgrade and Connection header (#278) 2012-05-30 16:43:04 -07:00
Trustin Lee
1d7067719b Allow to disable the use of sun.misc.Unsafe (#272)
- Contributed by @normanmaurer
- Added io.netty.noUnsafe property
2012-05-30 16:38:23 -07:00
Trustin Lee
42abb6df3a QueueFactory cleanup
- Really attempt to create a queue to determine LTQ can be initialized
  in runtime, and cache the result
- Remove unnecessary Class<T> parameter in createQueue()
- Remove unused createQueue(Collection)
2012-05-30 16:19:22 -07:00
Trustin Lee
c7004ed142 Use Sec-WebSocket-Origin instead of Origin (#264)
- Contributed by @normanmaurer
2012-05-30 16:04:34 -07:00
Trustin Lee
367895f660 Add port to Origin if the port is non default (80/443). (#262) 2012-05-30 16:00:40 -07:00
Trustin Lee
4ff98c359c Add PrematureChannelClosureException 2012-05-30 15:57:57 -07:00
Trustin Lee
7e94632d41 Add port to 'Origin' if the port is non default (80/443) (#262)
- Contributed by @normanmaurer
2012-05-30 15:57:39 -07:00
Trustin Lee
5e896cf0b3 Add a note that explain the behavior of CookieEncoder (#94)
- Contributed by @normanmaurer
2012-05-30 15:53:20 -07:00
Trustin Lee
b5d715343a Fail if DynamicChannelBuffer attempts to exceed the max capacity (#258)
- Contributed by @normanmaurer
2012-05-30 15:51:24 -07:00
Trustin Lee
8eda2280b3 Add test for HttpClientCodec missing response handling (#256, #259)
- Contributed by @normanmaurer
2012-05-30 15:48:57 -07:00
Trustin Lee
e3431db547 Use logger instead of System.err 2012-05-30 15:46:38 -07:00
Trustin Lee
6288e02a9a System.out.println -> InternalLogger
- Remove unnecessary output, too
2012-05-30 15:44:21 -07:00
Trustin Lee
f428853b35 Remove IpV4Subnet.main()
- Should run as a test case
2012-05-30 15:41:39 -07:00
Trustin Lee
54047c69cf Remove IpSubnet.main()
- Should be run as a test case
2012-05-30 15:40:51 -07:00
Trustin Lee
65c526c1c8 Use a logger in ZStream
- Contributed by @CruzBishop
2012-05-30 15:39:40 -07:00
Trustin Lee
6dee9f7b0c Use a logger in SocketAddresses
- Contributed by @CruzBishop
2012-05-30 15:37:53 -07:00
Trustin Lee
922cec1f9b Add an option to tell a user if there was a missing response (#256)
- Contributed by @normanmaurer
2012-05-30 15:37:01 -07:00
Trustin Lee
24eb85cdf5 Fix indentation 2012-05-30 14:16:39 -07:00
Trustin Lee
b87ce6a3cf Update README 2012-05-30 13:31:17 -07:00
Trustin Lee
e10d113678 Do not report Android as Java 7 2012-05-30 13:20:32 -07:00
Trustin Lee
e5bcc74cd5 Warn if the last inbound handler forwarded an exceptionCaught() event 2012-05-30 11:48:04 -07:00
Trustin Lee
cca35454d2 Ensure channelInboundBufferUpdated is fired after channelActive 2012-05-30 11:32:39 -07:00
Trustin Lee
47fa2ef2e8 Use LinkedHashSet instead of HashSet to preserve order of execution 2012-05-30 10:17:45 -07:00
Trustin Lee
9f9045c3b4 Add EventLoop implementation for the local transport 2012-05-30 04:33:43 -07:00
Trustin Lee
c17e5b458a Typo 2012-05-30 04:28:01 -07:00
Trustin Lee
4154f42520 Less restriction in shutdown hook modification 2012-05-30 04:27:19 -07:00
Trustin Lee
078a502c5f Add shutdown hooks to SingleThreadEventLoop
- LocalChannel and LocalServerChannel uses it to close themselves on
  shutdown
- LocalEcho example does not call close() anymore because the channels
  are closed automatically on shutdown
2012-05-30 04:23:15 -07:00
Trustin Lee
243f6581c6 Safer shutdown 2012-05-30 04:06:15 -07:00
Trustin Lee
65e224f149 Safer shutdown 2012-05-30 04:05:10 -07:00
Trustin Lee
a53ecbf5f1 Implement the local transport
- Replace the old local example with localecho example
- Channel's outbound buffer is guaranteed to be created on construction
  time.
2012-05-30 03:58:14 -07:00
Trustin Lee
392623749e Fix compilation errors 2012-05-30 02:01:48 -07:00
Trustin Lee
78974e85c5 AbstractUnsafe.out() -> directOutbound()
- to avoid confusion between Channel.outbound()
2012-05-30 00:38:23 -07:00
Trustin Lee
f4c6bcafaf Keep channel's outbound buffer in AbstractChannel
- Replace firstOut() with newOutboundBuffer()
2012-05-30 00:35:53 -07:00
Trustin Lee
05770b138d CodecUtil should be final 2012-05-29 17:25:38 -07:00
Trustin Lee
a9948d681e Throw NoSuchBufferException instead of returning null
- Exception in this case makes a user less confusing
- To reduce the overhead of filling the stack trace,
  NoSuchBufferException has a public pre-constructed instance.
  - This is necessary because codec framework sometimes need to support
    both type of outbound buffers.
- Fixed a bug where SpdyFrameEncoder did not handle ping messages
- Reduced memory copy in codec embedder (EmbeddedChannel)
2012-05-29 17:25:09 -07:00
Trustin Lee
8237afff64 Ported most examples
- Renamed ChannelBootstrap to Bootstrap
- Renamed ServerChannelBootstrap to ServerBootstrap
- Moved bootstrap classes to io.netty.bootstrap as before
- Moved unfoldAndAdd() to a separate utility class
- Fixed a bug in unfoldAndAdd() where it did not handle ChannelBuffer
  correctly
2012-05-29 16:41:26 -07:00
Trustin Lee
b10cf29393 Add isDecodable/isEncodable() to codecs to support stacked codecs 2012-05-29 13:34:01 -07:00
Trustin Lee
026715e818 Refactor the pipeline API to support stacked codecs
- Previous API did not support the pipeline which contains multiple
  MessageToStreamEncoders because there was no way to find the closest
  outbound byte buffer.  Now you always get the correct buffer even if
  the handler that provides the buffer is placed distantly.
  For example:
  
    Channel -> MsgAEncoder -> MsgBEncoder -> MsgCEncoder
  
  Msg(A|B|C)Encoder will all have access to the channel's outbound
  byte buffer.  Previously, it was simply impossible.

- Improved ChannelBufferHolder.toString()
2012-05-29 12:09:29 -07:00
Trustin Lee
81e8c49931 Fix bugs in ZlibDecoder / Port the factorial example
- Fixed IndexOutOfBoundsException in ZlibDecoder
- Fixed a bug where ZlibDecoder raises an exception when a connection
  is closed
2012-05-29 00:06:00 -07:00
Trustin Lee
e00f303e4f Fix compilation error caused by recent changes in AbstractChannel 2012-05-28 05:32:48 -07:00
Trustin Lee
ef4ee49800 Merge branch 'master' into next-api 2012-05-28 05:30:13 -07:00
Trustin Lee
6d39c342b6 Add FIXME 2012-05-28 05:20:32 -07:00
Trustin Lee
e48281471b Limit future notification stack depth / Robost writeCounter management
- Also ported the discard example while testing this commit
2012-05-28 05:05:49 -07:00