Class VirtualServerChannel

java.lang.Object
io.netty.util.DefaultAttributeMap
io.netty.channel.AbstractChannel
io.netty.channel.AbstractServerChannel
io.quarkus.netty.runtime.virtual.VirtualServerChannel
All Implemented Interfaces:
io.netty.channel.Channel, io.netty.channel.ChannelOutboundInvoker, io.netty.channel.ServerChannel, io.netty.util.AttributeMap, Comparable<io.netty.channel.Channel>

public class VirtualServerChannel extends io.netty.channel.AbstractServerChannel
A ServerChannel for the local transport which allows in VM communication. This is a bit different from a LocalServerChannel in regular Netty as it does not require a client event loop and exposes the client inbound queue directly.
  • Nested Class Summary

    Nested classes/interfaces inherited from class io.netty.channel.AbstractChannel

    io.netty.channel.AbstractChannel.AbstractUnsafe

    Nested classes/interfaces inherited from interface io.netty.channel.Channel

    io.netty.channel.Channel.Unsafe
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    io.netty.channel.ChannelConfig
     
    protected void
     
    protected void
    doBind(SocketAddress localAddress)
     
    protected void
     
    protected void
     
    protected void
     
    boolean
     
    protected boolean
    isCompatible(io.netty.channel.EventLoop loop)
     
    boolean
     
     
    protected SocketAddress
     
    protected VirtualChannel
    A factory method for VirtualChannels.
     
    (package private) VirtualChannel
     

    Methods inherited from class io.netty.channel.AbstractServerChannel

    doDisconnect, doWrite, filterOutboundMessage, metadata, newUnsafe, remoteAddress0

    Methods inherited from class io.netty.channel.AbstractChannel

    alloc, bind, bind, bytesBeforeUnwritable, bytesBeforeWritable, close, close, closeFuture, compareTo, connect, connect, connect, connect, deregister, deregister, disconnect, disconnect, doShutdownOutput, equals, eventLoop, flush, hashCode, id, invalidateLocalAddress, invalidateRemoteAddress, isRegistered, isWritable, maxMessagesPerWrite, newChannelPipeline, newFailedFuture, newId, newProgressivePromise, newPromise, newSucceededFuture, parent, pipeline, read, toString, unsafe, validateFileRegion, voidPromise, write, write, writeAndFlush, writeAndFlush

    Methods inherited from class io.netty.util.DefaultAttributeMap

    attr, hasAttr

    Methods inherited from class java.lang.Object

    clone, finalize, getClass, notify, notifyAll, wait, wait, wait

    Methods inherited from interface io.netty.util.AttributeMap

    attr, hasAttr

    Methods inherited from interface io.netty.channel.Channel

    alloc, bytesBeforeUnwritable, bytesBeforeWritable, closeFuture, eventLoop, flush, id, isRegistered, isWritable, parent, pipeline, read, unsafe

    Methods inherited from interface io.netty.channel.ChannelOutboundInvoker

    bind, bind, close, close, connect, connect, connect, connect, deregister, deregister, disconnect, disconnect, newFailedFuture, newProgressivePromise, newPromise, newSucceededFuture, voidPromise, write, write, writeAndFlush, writeAndFlush

    Methods inherited from interface java.lang.Comparable

    compareTo
  • Constructor Details

    • VirtualServerChannel

      public VirtualServerChannel()
  • Method Details

    • config

      public io.netty.channel.ChannelConfig config()
    • localAddress

      public VirtualAddress localAddress()
      Specified by:
      localAddress in interface io.netty.channel.Channel
      Overrides:
      localAddress in class io.netty.channel.AbstractChannel
    • remoteAddress

      public VirtualAddress remoteAddress()
      Specified by:
      remoteAddress in interface io.netty.channel.Channel
      Overrides:
      remoteAddress in class io.netty.channel.AbstractServerChannel
    • isOpen

      public boolean isOpen()
    • isActive

      public boolean isActive()
    • isCompatible

      protected boolean isCompatible(io.netty.channel.EventLoop loop)
      Specified by:
      isCompatible in class io.netty.channel.AbstractChannel
    • localAddress0

      protected SocketAddress localAddress0()
      Specified by:
      localAddress0 in class io.netty.channel.AbstractChannel
    • doRegister

      protected void doRegister() throws Exception
      Overrides:
      doRegister in class io.netty.channel.AbstractChannel
      Throws:
      Exception
    • doBind

      protected void doBind(SocketAddress localAddress) throws Exception
      Specified by:
      doBind in class io.netty.channel.AbstractChannel
      Throws:
      Exception
    • doClose

      protected void doClose() throws Exception
      Specified by:
      doClose in class io.netty.channel.AbstractChannel
      Throws:
      Exception
    • doDeregister

      protected void doDeregister() throws Exception
      Overrides:
      doDeregister in class io.netty.channel.AbstractChannel
      Throws:
      Exception
    • doBeginRead

      protected void doBeginRead() throws Exception
      Specified by:
      doBeginRead in class io.netty.channel.AbstractChannel
      Throws:
      Exception
    • serve

    • newLocalChannel

      protected VirtualChannel newLocalChannel(VirtualClientConnection peer)
      A factory method for VirtualChannels. Users may override it to create custom instances of VirtualChannels.