Norman Maurer
0ac5fd9f18
Let BufUtil.retain(...) return the given object
2013-03-10 19:50:26 +01:00
Trustin Lee
63116239ac
Always use EmptyByteBuf when a user attempts to construct a buffer with 0 maxCapacity / Make EmptyByteBuf remember the allocator it came from / Optimize EmptyByteBuf a little bit
2013-03-08 11:03:11 +09:00
Trustin Lee
096e4c95ef
Fix checkstyle
2013-03-08 10:39:52 +09:00
Trustin Lee
12f1d96914
Relaxed memory access constraint of ReferenceCounted.refCnt() for potentially better performance / More precise reference counting for MessageBuf
2013-03-08 10:32:20 +09:00
Trustin Lee
303f83043b
Fix checkstyle
2013-03-06 18:23:08 +09:00
Trustin Lee
88df53ec1a
Fix infinite recursion when transferring data between different type of buffers / Add ByteBuf.hasMemoryAddress/memoryAddress()
...
- Fixes : #1109 and #1110
2013-03-06 18:22:16 +09:00
Trustin Lee
3d6d9f394d
Fix checkstyle
2013-03-06 17:10:26 +09:00
Trustin Lee
81ce0555e6
Add UnpooledUnsafeDirectByteBuf and use it when low-level access is available
...
- Remove PooledUnsafeDirectByteBuf.setMedium() which is redundant
- Fix constructor visibility
2013-03-06 16:01:46 +09:00
Trustin Lee
6c3d5ed907
Use _set* in AbstractByteBuf.write*()
2013-03-06 14:56:27 +09:00
Trustin Lee
1c1570ffc4
Make field access via ByteBuf.read/write*() faster by avoiding unnecessary boundary checks
...
- also disabled a time consuming test that is actually a regression test
2013-03-06 10:32:29 +09:00
Trustin Lee
5f2c2cdc9b
Fix a bug in PoolArena and PoolSubpage where subpage pools are not updated correctly
...
- Make PoolSubpage a linked list node in the pool
- Now that a subpage is added to and removed from the pool correctly, allocating a subpage from the pool became vastly simpler.
2013-03-05 23:55:41 +09:00
Trustin Lee
4cb023f190
Add more variants of ByteBufAllocator.ioBuffer() / Update Javadoc
2013-03-05 17:59:31 +09:00
Trustin Lee
8d88acb4a7
Change ByteBufAllocator.buffer() to allocate a direct buffer only when the platform can handle a direct buffer reliably
...
- Rename directbyDefault to preferDirect
- Add a system property 'io.netty.prederDirect' to allow a user from changing the preference on launch-time
- Merge UnpooledByteBufAllocator.DEFAULT_BY_* to DEFAULT
2013-03-05 17:55:24 +09:00
Trustin Lee
307e6c47d8
Make hasUnsafe() return true only when all necessary low level operations are available for reliable direct buffer access
2013-03-05 17:25:54 +09:00
Trustin Lee
7e17f71b30
Make PlatformDependent work with the platforms without unaligned access support
2013-03-05 14:27:52 +09:00
Trustin Lee
d4d01ba52c
Optimize SlicedByteBuf a little bit
2013-02-27 15:19:25 -08:00
Trustin Lee
49aa907bd0
[maven-release-plugin] prepare for next development iteration
2013-02-26 16:55:07 -08:00
Trustin Lee
5026c2f359
[maven-release-plugin] prepare release netty-4.0.0.Beta2
2013-02-26 16:54:53 -08:00
Trustin Lee
a9a8d5d8c2
Clean-up
2013-02-21 14:17:04 -08:00
Norman Maurer
74738fbd08
[ #1061 ] Add workaround to not use PooledUnsafeDirectByteBuf when running on latest OpenJDK6 because of missing Unsafe method
2013-02-19 12:21:08 +01:00
Norman Maurer
4ed5b07e4e
[ #1060 ] Fix bug in CompositeByteBuf which let the buffer expand in a incorrect way and so result in corrupted data
2013-02-19 09:43:31 +01:00
Norman Maurer
1c6ed9b2ce
Add javadocs
2013-02-17 20:12:48 +01:00
Trustin Lee
d68a04a879
[maven-release-plugin] prepare for next development iteration
2013-02-14 12:56:24 -08:00
Trustin Lee
59e638f8f5
[maven-release-plugin] prepare release netty-4.0.0.Beta1
2013-02-14 12:56:15 -08:00
Trustin Lee
1011227b88
Remove apiviz tags - we are focusing on user guide instead and putting diagrams there
2013-02-14 12:09:16 -08:00
Norman Maurer
7c002504a1
[ #1051 ] Increment by the correct value
2013-02-14 14:28:47 +01:00
Norman Maurer
5370573400
Change ReferenceCounted.retain* to return itself and so allow method chaining
2013-02-14 07:39:44 +01:00
Trustin Lee
a1540a49d3
More safety in DefaultMessageBuf
2013-02-13 14:58:21 -08:00
Norman Maurer
a8216e7ce0
Fix possible NPE
2013-02-13 09:52:07 +01:00
Trustin Lee
4aacf50758
Prettify APIviz diagrams / Remove an empty package
2013-02-11 18:33:15 +09:00
Trustin Lee
aca0d5fa68
Make CompositeyteBuf and MessageBuf call release() on its elements when it is deallocated
2013-02-11 17:19:53 +09:00
Trustin Lee
bf0bfe9a69
Fix inspector warnings
2013-02-11 16:52:43 +09:00
Trustin Lee
0e341c9d72
Fix covariant return types in ChannelConfig interfaces for method chaining
...
- Does it really worth doing this? I'm tempted to remove support for method chaining for ChannelConfig.
2013-02-11 15:08:51 +09:00
Trustin Lee
4f6d05365a
Fix a race condition in reference counter implementation / Reference count never goes below 0
2013-02-10 14:22:14 +09:00
Trustin Lee
b9996908b1
Implement reference counting
...
- Related: #1029
- Replace Freeable with ReferenceCounted
- Add AbstractReferenceCounted
- Add AbstractReferenceCountedByteBuf
- Add AbstractDerivedByteBuf
- Add EmptyByteBuf
2013-02-10 13:10:09 +09:00
Trustin Lee
43af599d52
Faster memory copy between direct buffer and byte array (part 2)
2013-02-09 02:09:37 +09:00
Trustin Lee
9a676bc7d5
Faster memory copy between direct buffer and byte array
2013-02-09 01:55:01 +09:00
Trustin Lee
affd514b8c
Rename ByteBufUtil to BufUtil and move ChannelHandlerUtil.freeMessage() there / Remove ChannelHandlerUtil
2013-02-08 23:23:26 +09:00
Trustin Lee
44ea0a116f
Replace ChannelHandlerUtil.unfoldAndAdd() with MessageBuf.unfoldAndAdd() / Remove unused methods in ChannelHandlerUtil
2013-02-08 23:07:20 +09:00
Trustin Lee
d4742bbe16
Clean up abstract ChannelHandler impls / Remove ChannelHandlerContext.hasNext*()
...
- Rename ChannelHandlerAdapter to ChannelDuplexHandler
- Add ChannelHandlerAdapter that implements only ChannelHandler
- Rename CombinedChannelHandler to CombinedChannelDuplexHandler and
improve runtime validation
- Remove ChannelInbound/OutboundHandlerAdapter which are not useful
- Make ChannelOutboundByteHandlerAdapter similar to
ChannelInboundByteHandlerAdapter
- Make the tail and head handler of DefaultChannelPipeline accept both
bytes and messages. ChannelHandlerContext.hasNext*() were removed
because they always return true now.
- Removed various unnecessary null checks.
- Correct method/field names:
inboundBufferSuspended -> channelReadSuspended
2013-02-07 23:47:45 +09:00
Trustin Lee
7eed272e57
Add FilteredMessageBuf
2013-02-07 23:37:04 +09:00
Norman Maurer
fd75615d7a
[ #870 ] Convert all modules into osgi bundles
2013-02-06 07:57:11 +01:00
Trustin Lee
2ec932798f
Replace .readable() and .writable() to .isReadable() and .isWritable()
2013-01-31 18:24:33 +01:00
Trustin Lee
42c65cca3a
Make MessageBuf bounded
...
- Move common methods from ByteBuf to Buf
- Rename ensureWritableBytes() to ensureWritable()
- Rename readable() to isReadable()
- Rename writable() to isWritable()
- Add isReadable(int) and isWritable(int)
- Add AbstractMessageBuf
- Rewrite DefaultMessageBuf and QueueBackedMessageBuf
- based on Josh Bloch's public domain ArrayDeque impl
2013-01-31 18:11:06 +01:00
Norman Maurer
ee9f30a2b9
*ChannelBuffer* -> *ByteBuf* and ChannelBuffersTest -> UnpooledTest
2013-01-21 21:02:25 +01:00
Courtney Robinson
7b6cbdbb1e
[ #964 ] ByteBuf.readLine() must return null when no more data is available in ByteBuf
2013-01-21 20:56:00 +01:00
Trustin Lee
ba8c8171fa
Fix leaks in buffer tests
2013-01-18 13:49:17 +09:00
Trustin Lee
b5c87b0f9c
Fix failing tests
2013-01-18 13:34:00 +09:00
Trustin Lee
d0afe6cad0
Consistent exception messages
2013-01-18 13:10:54 +09:00
Trustin Lee
ad15155f04
Ensure cascaded derivation of a buffer does not result in an infinitely nested buffer.
2013-01-17 13:55:48 +09:00