Commit Graph

5854 Commits

Author SHA1 Message Date
Trustin Lee
2b84314fdd Add Recycler.Handle.recycle() so that it's possible to recycle an object without an explicit reference to Recycler 2014-02-13 17:24:37 -08:00
Trustin Lee
df346a023b Change the return type of EmbeddedChannel.read*() from Object to an ad-hoc type parameter
.. so that there's no need to explicitly down-cast.

Fixes #2067
2014-02-13 17:19:26 -08:00
Trustin Lee
5e69955d23 Fix another buffer leak in XmlFrameDecoderTest 2014-02-13 17:15:06 -08:00
Trustin Lee
457cd2f6fa Fix buffer leaks in XmlFrameDecoderTest 2014-02-13 17:14:59 -08:00
Trustin Lee
502ccabab3 Fix inspector warnings 2014-02-13 17:13:55 -08:00
Mirko Caserta
ee8571824b CDATA support 2014-02-13 17:13:49 -08:00
Mirko Caserta
086dbd1ba1 Fixed the XML decoder 2014-02-13 17:13:39 -08:00
Trustin Lee
2d5a3b5898 Add XML decoder
- based on @mcaserta's work at https://github.com/netty/netty/pull/1121
- not ready for a merge yet
2014-02-13 17:13:29 -08:00
Frederic Bregier
9bd44a1d7c Add support for 'charset' property for multipart boundaries
- Fixes #2004
2014-02-13 17:12:59 -08:00
Michael Nitschinger
b17a765615 codec-memcache: prefix abstract classes with Abstract. 2014-02-13 17:09:21 -08:00
Michael Nitschinger
fcb32a77b9 codec-memcache: No need to allocate a buffer if no extra is used. 2014-02-13 17:09:13 -08:00
Trustin Lee
6e23cf8c92 Fix checkstyle 2014-02-13 17:08:22 -08:00
Trustin Lee
516795fcfb Add convenient logging methods for logging exceptions quickly
.. Mainly useful for writing tests or ad-hoc debugging
2014-02-13 17:08:14 -08:00
Trustin Lee
9840de82f0 Fix another buffer leak in BinaryMemcacheDecoderTest 2014-02-13 17:05:25 -08:00
Trustin Lee
b592a18cd1 Fix buffer leaks in BinaryMemcacheDecoderTest 2014-02-13 17:05:19 -08:00
Trustin Lee
ccd231b8f4 Fix a buffer leak in BinaryMemcacheDecoder 2014-02-13 17:05:05 -08:00
Trustin Lee
acf7dbf811 Fix buffer leaks in BinaryMemcacheEncoderTest 2014-02-13 17:04:58 -08:00
Trustin Lee
a8bc720977 Fixed buffer leaks in LoggingHandlerTest 2014-02-13 17:03:21 -08:00
Trustin Lee
86c4166c24 Fixed various buffer leaks in FixedCompositeByteBufTest 2014-02-13 17:03:13 -08:00
Trustin Lee
fab56bae94 Fix a buffer leak in BinaryMemcacheObjectAggregatorTest 2014-02-13 17:03:05 -08:00
Trustin Lee
d417e3dbd0 Fix a buffer leak in BinaryMemcacheObjectAggregatorTest 2014-02-13 17:02:58 -08:00
Trustin Lee
26fc84529f Also record retain() and release() 2014-02-13 16:58:45 -08:00
Trustin Lee
0ff98c98e2 readableBytes() ==0 -> !isReadable() 2014-02-13 16:56:35 -08:00
Trustin Lee
d31a3e4120 Hide protocol detail from users 2014-02-13 16:56:22 -08:00
Michael Nitschinger
215e75c7d9 codec-memcache: increase default buffer size and only encode extras if set. 2014-02-13 16:55:46 -08:00
Trustin Lee
bea2acdf12 Allow specifying a custom charset for a multipart Attribute
- Fixed #2025
- Adapted from @BabyDuncan's pull request: #2031
- Overall ugliness clean-up
2014-02-13 16:55:22 -08:00
Norman Maurer
2351b8ddd9 Add FixedCompositeByteBuf which can be used to write an array of ByteBuf in an efficient way.
This implementation does not produce as much GC pressure as CompositeByteBuf and so is prefered,
for writing an array of ByteBufs. Be aware that FixedCompositeByteBuf is readonly.

When using this in a project that make heavy use of CompositeByteBuf for writes we was able to cut
down allocation to a half.
2014-02-13 16:52:31 -08:00
Michael Nitschinger
f03c32e137 [codec-memcache] encode key directly, no need to use unpooled. 2014-02-13 16:51:51 -08:00
Michael Nitschinger
a1526bedd3 codec-memcache: removed println in test case. 2014-02-13 16:51:45 -08:00
Michael Nitschinger
183bfe8f9f codec-memcache: fix decoding issue for value parts.
This changeset fixes an issue when decoding would stop if the value
comes separated in two or more packets, leading to invalid bytes read.
2014-02-13 16:51:37 -08:00
Trustin Lee
3d874f0bd7 Improve documentation for the two-args formatter in LoggingHandler 2014-02-13 16:51:26 -08:00
Trustin Lee
fbed62249c Rename formatUserMessage to formatSimple and use it in two-args formatter in LoggingHandler 2014-02-13 16:51:15 -08:00
Trustin Lee
a9150ee7d6 Simplify two-args message formatter in LoggingHandler 2014-02-13 16:51:06 -08:00
Trustin Lee
2e58497160 Make LoggingHandler.appendHexDump(..) protected for the subclasses 2014-02-13 16:50:50 -08:00
Trustin Lee
835b4443f3 Optimize and clean up LoggingHandler
- Use ': ' instead of '(...)' for simpler string concatenation and prettier presentation
- Optimize the overall performance of format*() methods
- All format*() methods are now expected to encode the channel information by themselves so that StringBuilder instances are created less often.
- Use a look-up table for generating per-row prefixes
- Hid formatByteBuf(), formatByteBufHolder(), and formatNonByteBuf() from user because a user can always override format(ctx, eventName, arg).  For example, to disable hexdump:

    protected void format(ChannelHandlerContext ctx, String eventName, Object arg) {
        if (arg instanceof ByteBuf) {
            super.format(ctx, eventName, arg.toString());
        } else {
            super.format(ctx, eventName, arg);
        }
    }
2014-02-13 16:50:31 -08:00
Norman Maurer
f6ffc5c1c7 [#1682] HttpVersion.valueOf(...) should not convert to uppercase 2014-02-13 16:36:36 -08:00
Michael Nitschinger
c78544cfaa Avoid memory leak when encoding the key 2014-02-13 16:36:09 -08:00
Vladimir Krivosheev
eb308cfff6 ability to use Executor instead of ThreadFactory 2014-02-13 16:14:41 -08:00
Trustin Lee
780516471f Bring back ChannelGroup.find(id) 2014-02-13 15:53:45 -08:00
Trustin Lee
40003ed250 Resurrect Channel.id() with global uniqueness
- Fixes #1810
- Add a new interface ChannelId and its default implementation which generates globally unique channel ID.
- Replace AbstractChannel.hashCode with ChannelId.hashCode() and ChannelId.shortValue()
- Add variants of ByteBuf.hexDump() which accept byte[] instead of ByteBuf.
2014-02-13 15:53:07 -08:00
Trustin Lee
ef4bc99849 Remove unnecessary parenthesis 2014-02-13 15:52:06 -08:00
Daniel Bevenius
fa33529ca5 Adding check for zero readable bytes in WebSocket08FrameDecoder decode. 2014-02-13 15:49:44 -08:00
Trustin Lee
812481602a Don't create an EmbeddedSocketAddress every time 2014-02-13 15:45:47 -08:00
Trustin Lee
d748113c7d Abstract classes' names should start with 'Abstract' 2014-02-13 15:39:05 -08:00
Trustin Lee
71b6439c66 Fixed various inspector warnings 2014-02-13 15:38:52 -08:00
Trustin Lee
3dd7fba320 Moved constant classes out of util 2014-02-13 15:38:20 -08:00
Michael Nitschinger
5551fc7351 adding memcache codec to netty-all project. 2014-02-13 15:38:08 -08:00
Trustin Lee
a327a25a6c Use StringUtil.simpleClassName(..) instead of Class.getSimpleName() where necessary
- Class.getSimpleName() doesn't render anonymous classes very well
- + some minor cleanup
2014-02-13 15:37:16 -08:00
Michael Nitschinger
20f6f7e018 Implementing the Binary Memcache protocol
This changeset implements the full memcache binary protocol spec, including
a first batch of tests. Ascii protocol and more coverage and helper classes
will follow.
2014-02-13 15:29:38 -08:00
Trustin Lee
ebc78dab1d Add a getter method for accessing the ClassPool of JavassistTypeParameterMatcherGenerator
.. so that a user can even manipulate the class pool as they wish.
2014-02-13 15:25:55 -08:00