Class RadiusListener<N extends ru.bitel.bgbilling.kernel.network.radius.nas.Nas<?,?,?>>
java.lang.Object
ru.bitel.common.io.DatagramChannelListener
ru.bitel.bgbilling.kernel.network.radius.RadiusListener<N>
- Type Parameters:
N
-
- All Implemented Interfaces:
java.lang.Runnable
,ru.bitel.bgbilling.kernel.network.processor.ProcessorListener
,ru.bitel.common.worker.ThreadContextFactory<ru.bitel.common.worker.ThreadContext>
public class RadiusListener<N extends ru.bitel.bgbilling.kernel.network.radius.nas.Nas<?,?,?>>
extends ru.bitel.common.io.DatagramChannelListener
implements ru.bitel.bgbilling.kernel.network.processor.ProcessorListener
Слушатель радиус пакетов.
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
RadiusListener.Mode
-
Field Summary
Fields Modifier and Type Field Description static bitel.billing.server.util.RequestCounter
accountingStartCounter
Deprecated.static bitel.billing.server.util.RequestCounter
accountingStopCounter
Deprecated.static bitel.billing.server.util.RequestCounter
accountingUpdateCounter
Deprecated.static bitel.billing.server.util.RequestCounter
accountingUpdateIgnoreCount
Deprecated.static bitel.billing.server.util.RequestCounter
antispamIgnoreCount
Deprecated.static bitel.billing.server.util.RequestCounter
authenticationAcceptCounter
Deprecated.static bitel.billing.server.util.RequestCounter
authenticationIgnoreCount
Deprecated.static bitel.billing.server.util.RequestCounter
authenticationRejectCounter
Deprecated.protected ru.bitel.bgbilling.kernel.network.radius.datalog.hourly.RadiusHourlyDataLogger
dataLogger
protected RadiusListener.Mode
mode
protected RadiusProcessor<?,N,?>
processor
protected Setup
setup
protected java.lang.String
threadCountParamName
protected java.lang.String
threadQueueParamName
Fields inherited from class ru.bitel.common.io.DatagramChannelListener
byteBufferCapacity, channel, directByteBuffer, host, inited, maxPacketSize, port, selector
-
Constructor Summary
Constructors Constructor Description RadiusListener(java.lang.String host, int port, int byteBufferCapacity, int socketRcvBuf, RadiusProcessor<?,N,?> processor, RadiusListener.Mode mode, Setup setup, ru.bitel.bgbilling.kernel.network.radius.datalog.hourly.RadiusHourlyDataLogger dataLogger, int threadCount, int maxQueueSize, java.lang.Boolean defaultAutoCommit)
-
Method Summary
Modifier and Type Method Description int
getActiveThreadCount()
int
getCurrentThreadCount()
int
getMaxQueueSize()
long
getQueueSize()
int
getSlow1QueueSize()
int
getSlow2QueueSize()
long
getTaskCount()
int
getThreadCount()
boolean
isSkipAccountingRequestsOnSlow()
ru.bitel.bgbilling.kernel.network.processor.ProcessorRequest<?>
newRequest(java.net.SocketAddress clientAddress, long millis, java.nio.ByteBuffer data, int overloadLevel)
ru.bitel.common.worker.ThreadContext
newThreadContext()
void
onPacket(java.net.SocketAddress clientAddress, java.nio.ByteBuffer data)
void
setMaxQueueSize(int maxQueueSize)
void
setSkipAccountingRequestsOnSlow(boolean skipAccountingRequestsOnSlow)
void
setThreadCount(int count)
java.lang.Thread
startListener()
java.lang.String
toString()
protected void
toString(java.lang.StringBuilder result)
Methods inherited from class ru.bitel.common.io.DatagramChannelListener
init, run, select, send, sendResponse, setReuseAddress, shutdown
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface ru.bitel.bgbilling.kernel.network.processor.ProcessorListener
send
-
Field Details
-
accountingStartCounter
@Deprecated public static bitel.billing.server.util.RequestCounter accountingStartCounterDeprecated. -
accountingStopCounter
@Deprecated public static bitel.billing.server.util.RequestCounter accountingStopCounterDeprecated. -
accountingUpdateCounter
@Deprecated public static bitel.billing.server.util.RequestCounter accountingUpdateCounterDeprecated. -
authenticationAcceptCounter
@Deprecated public static bitel.billing.server.util.RequestCounter authenticationAcceptCounterDeprecated. -
authenticationRejectCounter
@Deprecated public static bitel.billing.server.util.RequestCounter authenticationRejectCounterDeprecated. -
authenticationIgnoreCount
@Deprecated public static bitel.billing.server.util.RequestCounter authenticationIgnoreCountDeprecated. -
accountingUpdateIgnoreCount
@Deprecated public static bitel.billing.server.util.RequestCounter accountingUpdateIgnoreCountDeprecated. -
antispamIgnoreCount
@Deprecated public static bitel.billing.server.util.RequestCounter antispamIgnoreCountDeprecated. -
mode
-
setup
-
processor
protected final RadiusProcessor<?,N extends ru.bitel.bgbilling.kernel.network.radius.nas.Nas<?,?,?>,?> processor -
dataLogger
protected final ru.bitel.bgbilling.kernel.network.radius.datalog.hourly.RadiusHourlyDataLogger dataLogger -
threadCountParamName
protected java.lang.String threadCountParamName -
threadQueueParamName
protected java.lang.String threadQueueParamName
-
-
Constructor Details
-
RadiusListener
@ConstructorProperties({"host","port","recvBufferSize","soRCVBUF","processor","mode","setup","dataLogger","threadCount","maxQueueSize","defaultAutoCommit"}) public RadiusListener(java.lang.String host, int port, int byteBufferCapacity, int socketRcvBuf, RadiusProcessor<?,N,?> processor, RadiusListener.Mode mode, Setup setup, ru.bitel.bgbilling.kernel.network.radius.datalog.hourly.RadiusHourlyDataLogger dataLogger, int threadCount, int maxQueueSize, java.lang.Boolean defaultAutoCommit)- Parameters:
host
-port
-byteBufferCapacity
- буфер на потокsocketRcvBuf
- рекомендуемый буфер сокетаprocessor
-mode
-setup
-dataLogger
- RadiusHourlyDataLogger, если нужно сохранять логиthreadCount
- количество потоков или 0, если брать из setupmaxQueueSize
- размер очереди или 0, если брать из setup
-
-
Method Details
-
newThreadContext
public ru.bitel.common.worker.ThreadContext newThreadContext()- Specified by:
newThreadContext
in interfaceru.bitel.common.worker.ThreadContextFactory<N extends ru.bitel.bgbilling.kernel.network.radius.nas.Nas<?,?,?>>
-
newRequest
public ru.bitel.bgbilling.kernel.network.processor.ProcessorRequest<?> newRequest(java.net.SocketAddress clientAddress, long millis, java.nio.ByteBuffer data, int overloadLevel)- Specified by:
newRequest
in interfaceru.bitel.bgbilling.kernel.network.processor.ProcessorListener
-
onPacket
public void onPacket(java.net.SocketAddress clientAddress, java.nio.ByteBuffer data)- Overrides:
onPacket
in classru.bitel.common.io.DatagramChannelListener
-
startListener
public java.lang.Thread startListener() -
toString
public java.lang.String toString()- Overrides:
toString
in classjava.lang.Object
-
toString
protected void toString(java.lang.StringBuilder result) -
getThreadCount
public int getThreadCount() -
setThreadCount
public void setThreadCount(int count) -
getMaxQueueSize
public int getMaxQueueSize() -
setMaxQueueSize
public void setMaxQueueSize(int maxQueueSize) -
getSlow1QueueSize
public int getSlow1QueueSize() -
getSlow2QueueSize
public int getSlow2QueueSize() -
getCurrentThreadCount
public int getCurrentThreadCount() -
getActiveThreadCount
public int getActiveThreadCount() -
getTaskCount
public long getTaskCount() -
getQueueSize
public long getQueueSize() -
isSkipAccountingRequestsOnSlow
public boolean isSkipAccountingRequestsOnSlow() -
setSkipAccountingRequestsOnSlow
public void setSkipAccountingRequestsOnSlow(boolean skipAccountingRequestsOnSlow)
-