Package ru.bitel.bgbilling.kernel.network.dhcp

# Class DhcpListenerWorker<D extends Idable>

java.lang.Object
ru.bitel.bgbilling.kernel.base.server.logger.BGLogger
ru.bitel.common.worker.WorkerTask<DhcpListenerWorkerContext>
ru.bitel.bgbilling.kernel.network.processor.ProcessorRequest<DhcpListenerWorkerContext>
ru.bitel.bgbilling.kernel.network.dhcp.DhcpListenerWorker<D>

All Implemented Interfaces:
  `Runnable`

public class DhcpListenerWorker<D extends Idable> extends ru.bitel.bgbilling.kernel.network.processor.ProcessorRequest<DhcpListenerWorkerContext>

- ## Nested Class Summary

  ## Nested classes/interfaces inherited from class ru.bitel.common.worker.WorkerTask

  `ru.bitel.common.worker.WorkerTask.BlockingExecutionHandler`

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `int`
  `agentDeviceId`
  `protected static final InetAddress`
  `broadcastAddress`
  `protected static final InetSocketAddress`
  `broadcastAddress68`
  `String`
  `circuitId`
  `long`
  `connectionId`
  `protected D`
  `device`
  `int`
  `interfaceId`
  `int`
  `relayDeviceId`
  `protected DhcpPacket`
  `request`
  `protected DhcpPacket`
  `response`

  ### Fields inherited from class ru.bitel.bgbilling.kernel.network.processor.ProcessorRequest

  `clientAddress, data, millis`

  ### Fields inherited from class ru.bitel.common.worker.WorkerTask

  `context`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `DhcpListenerWorker(ru.bitel.bgbilling.kernel.network.processor.DatagramListener listener, DhcpProcessor<D> processor, SocketAddress clientAddress, long millis, ByteBuffer data, int overloadLevel)`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `D`
  `getDevice()`
  `int`
  `getOverloadLevel()`
  0-9 текущая загруженность пула, >=10 - второй пул
  `DhcpPacket`
  `getRequest()`
  `boolean`
  `isConnectionModified()`
  Было ли соединение начато/остановлено при обработке данного `request`.
  `protected void`
  `runImpl()`
  `void`
  `setConnectionModified(boolean connectionModified)`
  Было ли соединение начато/остановлено при обработке данного `request`.
  `void`
  `setDevice(D device)`
  `void`
  `setResponse(DhcpPacket response)`

  ### Methods inherited from class ru.bitel.bgbilling.kernel.network.processor.ProcessorRequest

  `send`

  ### Methods inherited from class ru.bitel.common.worker.WorkerTask

  `newBlockingFixedThreadPool, newFixedThreadPool, newFixedThreadPool, newScheduledThreadPool, run, runSync, runSync, setContext`

  ### Methods inherited from class ru.bitel.bgbilling.kernel.base.server.logger.BGLogger

  `error, error, error, getLogger, logError, logError, warn`

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

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

  ### Methods inherited from interface java.lang.Runnable

  `run`

- ## Field Details

  - ### interfaceId

    public int interfaceId

  - ### circuitId

    public String circuitId

  - ### connectionId

    public long connectionId

  - ### relayDeviceId

    public int relayDeviceId

  - ### agentDeviceId

    public int agentDeviceId

  - ### device

    protected D extends Idable device

  - ### request

    protected DhcpPacket request

  - ### response

    protected DhcpPacket response

  - ### broadcastAddress

    protected static final InetAddress broadcastAddress

  - ### broadcastAddress68

    protected static final InetSocketAddress broadcastAddress68

- ## Constructor Details

  - ### DhcpListenerWorker

    public DhcpListenerWorker(ru.bitel.bgbilling.kernel.network.processor.DatagramListener listener, DhcpProcessor<D> processor, SocketAddress clientAddress, long millis, ByteBuffer data, int overloadLevel)

- ## Method Details

  - ### getOverloadLevel

    public int getOverloadLevel()
    0-9 текущая загруженность пула, >=10 - второй пул
    Returns:

  - ### runImpl

    protected void runImpl()
    Specified by:
      `runImpl` in class `ru.bitel.common.worker.WorkerTask<DhcpListenerWorkerContext>`

  - ### setDevice

    public void setDevice(D device)

  - ### getDevice

    public D getDevice()

  - ### setResponse

    public void setResponse(DhcpPacket response)

  - ### isConnectionModified

    public boolean isConnectionModified()
    Было ли соединение начато/остановлено при обработке данного `request`.

  - ### setConnectionModified

    public void setConnectionModified(boolean connectionModified)
    Было ли соединение начато/остановлено при обработке данного `request`.

  - ### getRequest

    public DhcpPacket getRequest()