c

org.apache.spark.network.server

TransportChannelHandler

class TransportChannelHandler extends SimpleChannelInboundHandler[Message]

The single Transport-level Channel handler which is used for delegating requests to the TransportRequestHandler and responses to the TransportResponseHandler.

All channels created in the transport layer are bidirectional. When the Client initiates a Netty Channel with a RequestMessage (which gets handled by the Server's RequestHandler), the Server will produce a ResponseMessage (handled by the Client's ResponseHandler). However, the Server also gets a handle on the same Channel, so it may then begin to send RequestMessages to the Client. This means that the Client also needs a RequestHandler and the Server needs a ResponseHandler, for the Client's responses to the Server's requests.

This class also handles timeouts from a io.netty.handler.timeout.IdleStateHandler. We consider a connection timed out if there are outstanding fetch or RPC requests but no traffic on the channel for at least requestTimeoutMs. Note that this is duplex traffic; we will not timeout if the client is continuously sending but getting no responses, for simplicity.

Linear Supertypes
SimpleChannelInboundHandler[Message], ChannelInboundHandlerAdapter, ChannelInboundHandler, ChannelHandlerAdapter, ChannelHandler, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. TransportChannelHandler
  2. SimpleChannelInboundHandler
  3. ChannelInboundHandlerAdapter
  4. ChannelInboundHandler
  5. ChannelHandlerAdapter
  6. ChannelHandler
  7. AnyRef
  8. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Instance Constructors

  1. new TransportChannelHandler(client: TransportClient, responseHandler: TransportResponseHandler, requestHandler: TransportRequestHandler, requestTimeoutMs: Long, skipChunkFetchRequest: Boolean, closeIdleConnections: Boolean, transportContext: TransportContext)

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##: Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. def acceptInboundMessage(msg: AnyRef): Boolean

    Overwrite acceptInboundMessage to properly delegate ChunkFetchRequest messages to ChunkFetchRequestHandler.

    Overwrite acceptInboundMessage to properly delegate ChunkFetchRequest messages to ChunkFetchRequestHandler.

    Definition Classes
    TransportChannelHandler → SimpleChannelInboundHandler
    Annotations
    @Override()
  5. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  6. def channelActive(ctx: ChannelHandlerContext): Unit
    Definition Classes
    TransportChannelHandler → ChannelInboundHandlerAdapter → ChannelInboundHandler
    Annotations
    @Override()
  7. def channelInactive(ctx: ChannelHandlerContext): Unit
    Definition Classes
    TransportChannelHandler → ChannelInboundHandlerAdapter → ChannelInboundHandler
    Annotations
    @Override()
  8. def channelRead(arg0: ChannelHandlerContext, arg1: AnyRef): Unit
    Definition Classes
    SimpleChannelInboundHandler → ChannelInboundHandlerAdapter → ChannelInboundHandler
    Annotations
    @throws(classOf[java.lang.Exception])
  9. def channelRead0(ctx: ChannelHandlerContext, request: Message): Unit
    Definition Classes
    TransportChannelHandler → SimpleChannelInboundHandler
    Annotations
    @Override()
  10. def channelReadComplete(arg0: ChannelHandlerContext): Unit
    Definition Classes
    ChannelInboundHandlerAdapter → ChannelInboundHandler
    Annotations
    @throws(classOf[java.lang.Exception]) @Skip()
  11. def channelRegistered(ctx: ChannelHandlerContext): Unit
    Definition Classes
    TransportChannelHandler → ChannelInboundHandlerAdapter → ChannelInboundHandler
    Annotations
    @Override()
  12. def channelUnregistered(ctx: ChannelHandlerContext): Unit
    Definition Classes
    TransportChannelHandler → ChannelInboundHandlerAdapter → ChannelInboundHandler
    Annotations
    @Override()
  13. def channelWritabilityChanged(arg0: ChannelHandlerContext): Unit
    Definition Classes
    ChannelInboundHandlerAdapter → ChannelInboundHandler
    Annotations
    @throws(classOf[java.lang.Exception]) @Skip()
  14. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native()
  15. def ensureNotSharable(): Unit
    Attributes
    protected[channel]
    Definition Classes
    ChannelHandlerAdapter
  16. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  17. def equals(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef → Any
  18. def exceptionCaught(ctx: ChannelHandlerContext, cause: Throwable): Unit
    Definition Classes
    TransportChannelHandler → ChannelInboundHandlerAdapter → ChannelInboundHandler → ChannelHandlerAdapter → ChannelHandler
    Annotations
    @Override()
  19. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable])
  20. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  21. def getClient(): TransportClient
  22. def getResponseHandler(): TransportResponseHandler
  23. def handlerAdded(arg0: ChannelHandlerContext): Unit
    Definition Classes
    ChannelHandlerAdapter → ChannelHandler
    Annotations
    @throws(classOf[java.lang.Exception])
  24. def handlerRemoved(arg0: ChannelHandlerContext): Unit
    Definition Classes
    ChannelHandlerAdapter → ChannelHandler
    Annotations
    @throws(classOf[java.lang.Exception])
  25. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  26. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  27. def isSharable(): Boolean
    Definition Classes
    ChannelHandlerAdapter
  28. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  29. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  30. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  31. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  32. def toString(): String
    Definition Classes
    AnyRef → Any
  33. def userEventTriggered(ctx: ChannelHandlerContext, evt: AnyRef): Unit

    Triggered based on events from an io.netty.handler.timeout.IdleStateHandler.

    Triggered based on events from an io.netty.handler.timeout.IdleStateHandler.

    Definition Classes
    TransportChannelHandler → ChannelInboundHandlerAdapter → ChannelInboundHandler
    Annotations
    @Override()
  34. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  35. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  36. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()

Inherited from SimpleChannelInboundHandler[Message]

Inherited from ChannelInboundHandlerAdapter

Inherited from ChannelInboundHandler

Inherited from ChannelHandlerAdapter

Inherited from ChannelHandler

Inherited from AnyRef

Inherited from Any

Ungrouped