org.apache.cassandra.thrift

## Class THsHaDisruptorServer

- java.lang.Object
- - org.apache.thrift.server.TServer
  - - org.apache.thrift.server.AbstractNonblockingServer
    - - org.apache.thrift.server.TNonblockingServer
      - - com.thinkaurelius.thrift.TDisruptorServer
        - - org.apache.cassandra.thrift.THsHaDisruptorServer

- All Implemented Interfaces:
    com.thinkaurelius.thrift.TDisruptorServerMBean

      public class THsHaDisruptorServer
      extends com.thinkaurelius.thrift.TDisruptorServer

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class and Description
    --- | ---
    `static class` | `THsHaDisruptorServer.Factory`

    - ### Nested classes/interfaces inherited from class com.thinkaurelius.thrift.TDisruptorServer

      `com.thinkaurelius.thrift.TDisruptorServer.AbstractSelectorThread, com.thinkaurelius.thrift.TDisruptorServer.AcceptorThread, com.thinkaurelius.thrift.TDisruptorServer.Args, com.thinkaurelius.thrift.TDisruptorServer.InvocationHandler, com.thinkaurelius.thrift.TDisruptorServer.RandomSelectorLoadBalancer, com.thinkaurelius.thrift.TDisruptorServer.SelectorLoadBalancer, com.thinkaurelius.thrift.TDisruptorServer.SelectorThread`

    - ### Nested classes/interfaces inherited from class org.apache.thrift.server.TNonblockingServer

      `org.apache.thrift.server.TNonblockingServer.SelectAcceptThread`

    - ### Nested classes/interfaces inherited from class org.apache.thrift.server.AbstractNonblockingServer

      `org.apache.thrift.server.AbstractNonblockingServer.AbstractNonblockingServerArgs<T extends org.apache.thrift.server.AbstractNonblockingServer.AbstractNonblockingServerArgs<T>>, org.apache.thrift.server.AbstractNonblockingServer.AbstractSelectThread, org.apache.thrift.server.AbstractNonblockingServer.AsyncFrameBuffer, org.apache.thrift.server.AbstractNonblockingServer.FrameBuffer`

    - ### Nested classes/interfaces inherited from class org.apache.thrift.server.TServer

      `org.apache.thrift.server.TServer.AbstractServerArgs<T extends org.apache.thrift.server.TServer.AbstractServerArgs<T>>`

  - ### Field Summary

    - ### Fields inherited from class com.thinkaurelius.thrift.TDisruptorServer

      `MBEAN_NAME`

    - ### Fields inherited from class org.apache.thrift.server.AbstractNonblockingServer

      `LOGGER`

    - ### Fields inherited from class org.apache.thrift.server.TServer

      `eventHandler_, inputProtocolFactory_, inputTransportFactory_, outputProtocolFactory_, outputTransportFactory_, processorFactory_, serverTransport_`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `THsHaDisruptorServer(com.thinkaurelius.thrift.TDisruptorServer.Args args)` All the arguments to Non Blocking Server will apply here.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `beforeClose(com.thinkaurelius.thrift.Message buffer)`
    `protected void` | `beforeInvoke(com.thinkaurelius.thrift.Message buffer)`

    - ### Methods inherited from class com.thinkaurelius.thrift.TDisruptorServer

      `getNumberOfSelectors, getRingBufferSize, gracefullyShutdownInvokerPool, isHeapBasedAllocationUsed, isStopped, joinSelector, requestInvoke, startThreads, stop, useHeapBasedAllocation, waitForShutdown`

    - ### Methods inherited from class org.apache.thrift.server.AbstractNonblockingServer

      `serve, startListening, stopListening`

    - ### Methods inherited from class org.apache.thrift.server.TServer

      `getEventHandler, isServing, setServerEventHandler, setServing`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### THsHaDisruptorServer

          public THsHaDisruptorServer(com.thinkaurelius.thrift.TDisruptorServer.Args args)

      All the arguments to Non Blocking Server will apply here. In addition, executor pool will be responsible for creating the internal threads which will process the data. threads for selection usually are equal to the number of cpu's

  - ### Method Detail

    - #### beforeInvoke

          protected void beforeInvoke(com.thinkaurelius.thrift.Message buffer)

      Specified by:
        `beforeInvoke` in class `com.thinkaurelius.thrift.TDisruptorServer`

    - #### beforeClose

          public void beforeClose(com.thinkaurelius.thrift.Message buffer)

      Overrides:
        `beforeClose` in class `com.thinkaurelius.thrift.TDisruptorServer`

Copyright © 2018 The Apache Software Foundation