Package ch.qos.logback.core.net.server
Class AbstractServerSocketAppender<E>
- java.lang.Object
-
- ch.qos.logback.core.spi.ContextAwareBase
-
- ch.qos.logback.core.AppenderBase<E>
-
- ch.qos.logback.core.net.server.AbstractServerSocketAppender<E>
-
- All Implemented Interfaces:
Appender<E>
,ContextAware
,FilterAttachable<E>
,LifeCycle
- Direct Known Subclasses:
ServerSocketAppender
,ServerSocketAppender
,SSLServerSocketAppenderBase
public abstract class AbstractServerSocketAppender<E> extends AppenderBase<E>
This is the super class for module specific ServerSocketAppender implementations can derive from.- Author:
- Carl Harris
-
-
Field Summary
Fields Modifier and Type Field Description static int
DEFAULT_BACKLOG
DefaultServerSocket
backlogstatic int
DEFAULT_CLIENT_QUEUE_SIZE
Default queue size used for each client-
Fields inherited from class ch.qos.logback.core.AppenderBase
name, started
-
Fields inherited from class ch.qos.logback.core.spi.ContextAwareBase
context
-
-
Constructor Summary
Constructors Constructor Description AbstractServerSocketAppender()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected void
append(E event)
protected ServerListener<ch.qos.logback.core.net.server.RemoteReceiverClient>
createServerListener(java.net.ServerSocket socket)
protected ServerRunner<ch.qos.logback.core.net.server.RemoteReceiverClient>
createServerRunner(ServerListener<ch.qos.logback.core.net.server.RemoteReceiverClient> listener, java.util.concurrent.Executor executor)
java.lang.String
getAddress()
Gets the local address for the listener.int
getBacklog()
Gets the listener queue depth.int
getClientQueueSize()
Gets the event queue size used for each client connection.protected java.net.InetAddress
getInetAddress()
Gets the local address for the listener.int
getPort()
Gets the local port for the listener.protected abstract PreSerializationTransformer<E>
getPST()
Gets a transformer that will be used to convert a received event to aSerializable
form.protected javax.net.ServerSocketFactory
getServerSocketFactory()
Gets the factory used to createServerSocket
objects.protected abstract void
postProcessEvent(E event)
Post process an event received via#append(E)
.void
setAddress(java.lang.String address)
Sets the local address for the listener.void
setBacklog(int backlog)
Sets the listener queue depth.void
setClientQueueSize(int clientQueueSize)
Sets the event queue size used for each client connection.void
setPort(int port)
Sets the local port for the listener.void
start()
void
stop()
-
Methods inherited from class ch.qos.logback.core.AppenderBase
addFilter, clearAllFilters, doAppend, getCopyOfAttachedFiltersList, getFilterChainDecision, getName, isStarted, setName, toString
-
Methods inherited from class ch.qos.logback.core.spi.ContextAwareBase
addError, addError, addInfo, addInfo, addStatus, addWarn, addWarn, getContext, getDeclaredOrigin, getStatusManager, setContext
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface ch.qos.logback.core.spi.ContextAware
addError, addError, addInfo, addInfo, addStatus, addWarn, addWarn, getContext, setContext
-
-
-
-
Field Detail
-
DEFAULT_BACKLOG
public static final int DEFAULT_BACKLOG
DefaultServerSocket
backlog- See Also:
- Constant Field Values
-
DEFAULT_CLIENT_QUEUE_SIZE
public static final int DEFAULT_CLIENT_QUEUE_SIZE
Default queue size used for each client- See Also:
- Constant Field Values
-
-
Method Detail
-
start
public void start()
- Specified by:
start
in interfaceLifeCycle
- Overrides:
start
in classAppenderBase<E>
-
createServerListener
protected ServerListener<ch.qos.logback.core.net.server.RemoteReceiverClient> createServerListener(java.net.ServerSocket socket)
-
createServerRunner
protected ServerRunner<ch.qos.logback.core.net.server.RemoteReceiverClient> createServerRunner(ServerListener<ch.qos.logback.core.net.server.RemoteReceiverClient> listener, java.util.concurrent.Executor executor)
-
stop
public void stop()
- Specified by:
stop
in interfaceLifeCycle
- Overrides:
stop
in classAppenderBase<E>
-
append
protected void append(E event)
- Specified by:
append
in classAppenderBase<E>
-
postProcessEvent
protected abstract void postProcessEvent(E event)
Post process an event received via#append(E)
.- Parameters:
event
-
-
getPST
protected abstract PreSerializationTransformer<E> getPST()
Gets a transformer that will be used to convert a received event to aSerializable
form.- Returns:
-
getServerSocketFactory
protected javax.net.ServerSocketFactory getServerSocketFactory() throws java.lang.Exception
Gets the factory used to createServerSocket
objects.The default implementation delegates to
ServerSocketFactory.getDefault()
. Subclasses may override to private a different socket factory implementation.- Returns:
- socket factory.
- Throws:
java.lang.Exception
-
getInetAddress
protected java.net.InetAddress getInetAddress() throws java.net.UnknownHostException
Gets the local address for the listener.- Returns:
- an
InetAddress
representation of the local address. - Throws:
java.net.UnknownHostException
-
getPort
public int getPort()
Gets the local port for the listener.- Returns:
- local port
-
setPort
public void setPort(int port)
Sets the local port for the listener.- Parameters:
port
- the local port to set
-
getBacklog
public int getBacklog()
Gets the listener queue depth.This represents the number of connected clients whose connections have not yet been accepted.
- Returns:
- queue depth
- See Also:
ServerSocket
-
setBacklog
public void setBacklog(int backlog)
Sets the listener queue depth.This represents the number of connected clients whose connections have not yet been accepted.
- Parameters:
backlog
- the queue depth to set- See Also:
ServerSocket
-
getAddress
public java.lang.String getAddress()
Gets the local address for the listener.- Returns:
- a string representation of the local address
-
setAddress
public void setAddress(java.lang.String address)
Sets the local address for the listener.- Parameters:
address
- a host name or a string representation of an IP address
-
getClientQueueSize
public int getClientQueueSize()
Gets the event queue size used for each client connection.- Returns:
- queue size
-
setClientQueueSize
public void setClientQueueSize(int clientQueueSize)
Sets the event queue size used for each client connection.- Parameters:
clientQueueSize
- the queue size to set
-
-