netty5/transport/src/main/java/io/netty/channel
Norman Maurer fd0d06ee39
Replace reflection usage with MethodHandles when performance matters (#10097)
Motivation:

As we have java8 as a minimum target we can use MethodHandles. We should do so when we expect to have a method called multiple times.

Modifications:

- Replace usage of reflection with MethodHandles where it makes sense
- Remove some code which was there to support java < 8

Result:

Faster code
2020-03-11 21:04:40 +01:00
..
embedded Ensure the DefaultChannelHandlerContext is unlinked once removed (#9970) 2020-03-01 08:13:33 +01:00
group Correctly calculate the initial size of the LinkedHashMap during DefaultChannelGroup.write* (#10055) 2020-02-24 19:31:23 +01:00
internal Enforce writeSpinCount to limit resource consumption per socket (#7478) 2017-12-07 16:00:52 -08:00
local Only use static Exception instances when we can ensure addSuppressed … (#9152) 2019-05-17 22:42:53 +02:00
nio Remove assert check that is not valid anymore now that an Channel is tied to an EventLoop from the beginning. (#9966) 2020-01-24 14:10:14 -08:00
socket Replace reflection usage with MethodHandles when performance matters (#10097) 2020-03-11 21:04:40 +01:00
AbstractChannel.java Ensure the DefaultChannelHandlerContext is unlinked once removed (#9970) 2020-03-01 08:13:33 +01:00
AbstractCoalescingBufferQueue.java migrate java8: use requireNonNull (#8840) 2019-02-04 10:32:25 +01:00
AbstractServerChannel.java migrate java8: use requireNonNull (#8840) 2019-02-04 10:32:25 +01:00
AdaptiveRecvByteBufAllocator.java Fix incorrect calculation of next buffer size in AdaptiveRecvByteBufAllocator (#9555) 2019-09-27 10:00:34 +02:00
AddressedEnvelope.java Enable a user specify an arbitrary information with ReferenceCounted.touch() 2014-02-13 18:16:25 -08:00
Channel.java Cleanup usage of Channel*Handler (#9959) 2020-01-20 17:47:17 -08:00
ChannelConfig.java Cleanup usage of Channel*Handler (#9959) 2020-01-20 17:47:17 -08:00
ChannelDuplexHandler.java Merge ChannelInboundHandler and ChannelOutboundHandler into ChannelHa… (#8957) 2019-03-28 09:28:27 +00:00
ChannelException.java Only use static Exception instances when we can ensure addSuppressed … (#9152) 2019-05-17 22:42:53 +02:00
ChannelFactory.java Tighten contract between Channel and EventLoop by require the EventLoop on Channel construction. (#8587) 2019-01-14 20:11:13 +01:00
ChannelFlushPromiseNotifier.java migrate java8: use requireNonNull (#8840) 2019-02-04 10:32:25 +01:00
ChannelFuture.java trivial javadoc fixes 2016-03-16 20:18:29 +01:00
ChannelFutureListener.java Java 8 migration: replace anonymous types with lambda (#8751) 2019-01-25 10:51:05 +01:00
ChannelHandler.java Rename SimpleChannelInboundHandler.channelRead0() to messageReceived() (#8819) 2019-11-01 07:23:07 +01:00
ChannelHandlerAdapter.java Merge ChannelInboundHandler and ChannelOutboundHandler into ChannelHa… (#8957) 2019-03-28 09:28:27 +00:00
ChannelHandlerContext.java Cleanup usage of Channel*Handler (#9959) 2020-01-20 17:47:17 -08:00
ChannelHandlerMask.java Add log level check simply before logging. (#10080) 2020-03-05 14:46:22 +01:00
ChannelId.java fix the typos 2017-04-20 04:56:09 +02:00
ChannelInboundHandler.java Merge ChannelInboundHandler and ChannelOutboundHandler into ChannelHa… (#8957) 2019-03-28 09:28:27 +00:00
ChannelInboundHandlerAdapter.java Deprecate ChannelInboundHandlerAdapter and ChannelOutboundHandlerAdapter (#8929) 2019-03-13 09:46:10 +01:00
ChannelInboundInvoker.java Cleanup usage of Channel*Handler (#9959) 2020-01-20 17:47:17 -08:00
ChannelInitializer.java Cleanup usage of Channel*Handler (#9959) 2020-01-20 17:47:17 -08:00
ChannelMetadata.java use checkPositive/checkPositiveOrZero (#8803) 2019-01-31 09:06:59 +01:00
ChannelOption.java Deprecate ChannelOption.newInstance(...) (#8997) 2019-04-05 12:10:16 +02:00
ChannelOutboundBuffer.java Use lambdas whenever possible (#9979) 2020-01-30 09:28:24 +01:00
ChannelOutboundHandler.java Merge ChannelInboundHandler and ChannelOutboundHandler into ChannelHa… (#8957) 2019-03-28 09:28:27 +00:00
ChannelOutboundHandlerAdapter.java Deprecate ChannelInboundHandlerAdapter and ChannelOutboundHandlerAdapter (#8929) 2019-03-13 09:46:10 +01:00
ChannelOutboundInvoker.java Cleanup usage of Channel*Handler (#9959) 2020-01-20 17:47:17 -08:00
ChannelPipeline.java Ensure the DefaultChannelHandlerContext is unlinked once removed (#9970) 2020-03-01 08:13:33 +01:00
ChannelPipelineException.java Remove apiviz tags - we are focusing on user guide instead and putting diagrams there 2013-02-14 12:09:16 -08:00
ChannelProgressiveFuture.java Make EventExecutor.shutdownGracefully() return Future 2013-06-12 08:00:54 +09:00
ChannelProgressiveFutureListener.java Replace TransferFuture(Listener) with (Channel)ProgressiveFuture(Listener) 2013-04-15 15:26:20 +09:00
ChannelProgressivePromise.java [#2618] Introduce ChannelPromise.unvoid() and ChannelFuture.isVoid() 2014-07-03 14:17:12 +02:00
ChannelPromise.java [#2618] Introduce ChannelPromise.unvoid() and ChannelFuture.isVoid() 2014-07-03 14:17:12 +02:00
ChannelPromiseAggregator.java Deprecate PromiseAggregator 2016-03-14 10:53:30 -07:00
ChannelPromiseNotifier.java [#5598] Ensure SslHandler not log false-positives when try to close the channel due timeout. 2016-07-30 21:15:09 +02:00
CoalescingBufferQueue.java migrate java8: use requireNonNull (#8840) 2019-02-04 10:32:25 +01:00
CombinedChannelDuplexHandler.java Cleanup usage of Channel*Handler (#9959) 2020-01-20 17:47:17 -08:00
CompleteChannelFuture.java Introduce Future.toStage() which allows to obtain a CompletionStage a… (#9004) 2019-04-11 14:52:33 +02:00
ConnectTimeoutException.java [#1036] Add special ConnectTimeoutException which is thrown if a connection failed because of a timeout 2013-03-07 20:53:45 +01:00
DefaultAddressedEnvelope.java migrate java8: use requireNonNull (#8840) 2019-02-04 10:32:25 +01:00
DefaultChannelConfig.java migrate java8: use requireNonNull (#8840) 2019-02-04 10:32:25 +01:00
DefaultChannelHandlerContext.java Ensure the DefaultChannelHandlerContext is unlinked once removed (#9970) 2020-03-01 08:13:33 +01:00
DefaultChannelId.java Java 8 migration. Remove ThreadLocalProvider and inline java.util.concurrent.ThreadLocalRandom.current() where necessary. (#8762) 2019-01-22 20:14:28 +01:00
DefaultChannelPipeline.java Ensure the DefaultChannelHandlerContext is unlinked once removed (#9970) 2020-03-01 08:13:33 +01:00
DefaultChannelProgressivePromise.java Remove code that accounts for changing EventExecutors in DefaultPromise (#8996) 2019-04-03 10:36:55 +02:00
DefaultChannelPromise.java Remove code that accounts for changing EventExecutors in DefaultPromise (#8996) 2019-04-03 10:36:55 +02:00
DefaultFileRegion.java Remove extra checks to fix #9456 (#9523) 2019-08-30 10:40:04 +02:00
DefaultMaxBytesRecvByteBufAllocator.java use checkPositive/checkPositiveOrZero (#8803) 2019-01-31 09:06:59 +01:00
DefaultMaxMessagesRecvByteBufAllocator.java use checkPositive/checkPositiveOrZero (#8803) 2019-01-31 09:06:59 +01:00
DefaultMessageSizeEstimator.java use checkPositive/checkPositiveOrZero (#8803) 2019-01-31 09:06:59 +01:00
DefaultSelectStrategy.java Decouple EventLoop details from the IO handling for each transport to… (#8680) 2019-01-23 08:32:05 +01:00
DefaultSelectStrategyFactory.java EPOLL SelectStrategy 2016-03-30 15:11:35 -07:00
DelegatingChannelPromiseNotifier.java Introduce Future.toStage() which allows to obtain a CompletionStage a… (#9004) 2019-04-11 14:52:33 +02:00
EventLoop.java Decouple EventLoop details from the IO handling for each transport to… (#8680) 2019-01-23 08:32:05 +01:00
EventLoopException.java Fix types in javadocs 2013-07-22 19:14:36 +02:00
EventLoopGroup.java Tighten contract between Channel and EventLoop by require the EventLoop on Channel construction. (#8587) 2019-01-14 20:11:13 +01:00
ExtendedClosedChannelException.java Include the original Exception that caused the Channel to be closed in the ClosedChannelException (#8863) 2019-02-15 13:24:13 -08:00
FailedChannelFuture.java migrate java8: use requireNonNull (#8840) 2019-02-04 10:32:25 +01:00
FileRegion.java Fix minor spelling issues in javadocs (#8701) 2019-01-14 07:25:13 +01:00
FixedRecvByteBufAllocator.java use checkPositive/checkPositiveOrZero (#8803) 2019-01-31 09:06:59 +01:00
IoExecutionContext.java Decouple EventLoop details from the IO handling for each transport to… (#8680) 2019-01-23 08:32:05 +01:00
IoHandler.java Decouple EventLoop details from the IO handling for each transport to… (#8680) 2019-01-23 08:32:05 +01:00
IoHandlerFactory.java Decouple EventLoop details from the IO handling for each transport to… (#8680) 2019-01-23 08:32:05 +01:00
MaxBytesRecvByteBufAllocator.java Cleanup usage of Channel*Handler (#9959) 2020-01-20 17:47:17 -08:00
MaxMessagesRecvByteBufAllocator.java Cleanup usage of Channel*Handler (#9959) 2020-01-20 17:47:17 -08:00
MessageSizeEstimator.java Documentation update to MessageSizeEstimator (#9034) 2019-04-12 19:16:40 +02:00
MultithreadEventLoopGroup.java Add one new constructor with ThreadFactory / Executor only 2019-11-18 10:01:19 +01:00
PendingBytesTracker.java migrate java8: use requireNonNull (#8840) 2019-02-04 10:32:25 +01:00
PendingWriteQueue.java Use lambdas whenever possible (#9979) 2020-01-30 09:28:24 +01:00
PreferHeapByteBufAllocator.java migrate java8: use requireNonNull (#8840) 2019-02-04 10:32:25 +01:00
RecvByteBufAllocator.java migrate java8: use requireNonNull (#8840) 2019-02-04 10:32:25 +01:00
ReflectiveChannelFactory.java migrate java8: use requireNonNull (#8840) 2019-02-04 10:32:25 +01:00
ReflectiveServerChannelFactory.java migrate java8: use requireNonNull (#8840) 2019-02-04 10:32:25 +01:00
SelectStrategy.java Decouple EventLoop details from the IO handling for each transport to… (#8680) 2019-01-23 08:32:05 +01:00
SelectStrategyFactory.java Allow to customize NIO (channel) select strategies. 2016-03-30 15:01:25 -07:00
ServerChannel.java Tighten contract between Channel and EventLoop by require the EventLoop on Channel construction. (#8587) 2019-01-14 20:11:13 +01:00
ServerChannelFactory.java Tighten contract between Channel and EventLoop by require the EventLoop on Channel construction. (#8587) 2019-01-14 20:11:13 +01:00
SimpleChannelInboundHandler.java Cleanup usage of Channel*Handler (#9959) 2020-01-20 17:47:17 -08:00
SimpleUserEventChannelHandler.java Cleanup usage of Channel*Handler (#9959) 2020-01-20 17:47:17 -08:00
SingleThreadEventLoop.java migrate java8: use requireNonNull (#8840) 2019-02-04 10:32:25 +01:00
SucceededChannelFuture.java Fix most inspector warnings 2014-07-02 19:55:07 +09:00
VoidChannelPromise.java Introduce Future.toStage() which allows to obtain a CompletionStage a… (#9004) 2019-04-11 14:52:33 +02:00
WriteBufferWaterMark.java use checkPositive/checkPositiveOrZero (#8803) 2019-01-31 09:06:59 +01:00
package-info.java Remove apiviz tags - we are focusing on user guide instead and putting diagrams there 2013-02-14 12:09:16 -08:00