public class SimpleSocketServer
extends java.lang.Thread
SocketNode based server.
<b>Usage:</b> java ch.qos.logback.classic.net.SimpleSocketServer port configFile
where port is a port number where the server listens and
configFile is an xml configuration file fed to
JoranConfigurator.
| Modifier and Type | Field and Description |
|---|---|
private boolean |
closed |
private java.util.concurrent.CountDownLatch |
latch |
private LoggerContext |
lc |
(package private) org.slf4j.Logger |
logger |
private int |
port |
private java.net.ServerSocket |
serverSocket |
private java.util.List<SocketNode> |
socketNodeList |
| Constructor and Description |
|---|
SimpleSocketServer(LoggerContext lc,
int port) |
| Modifier and Type | Method and Description |
|---|---|
void |
close() |
static void |
configureLC(LoggerContext lc,
java.lang.String configFile) |
protected static void |
doMain(java.lang.Class<? extends SimpleSocketServer> serverClass,
java.lang.String[] argv) |
protected java.lang.String |
getClientThreadName(java.net.Socket socket)
Returns a name to identify each client thread.
|
java.util.concurrent.CountDownLatch |
getLatch()
Used for testing purposes
|
protected javax.net.ServerSocketFactory |
getServerSocketFactory()
Gets the platform default
ServerSocketFactory. |
protected java.lang.String |
getServerThreadName()
Returns the name given to the server thread.
|
boolean |
isClosed() |
static void |
main(java.lang.String[] argv) |
(package private) static int |
parsePortNumber(java.lang.String portStr) |
void |
run() |
(package private) void |
setLatch(java.util.concurrent.CountDownLatch latch)
Used for testing purposes
|
(package private) void |
signalAlmostReadiness()
Signal another thread that we have established a connection
This is useful for testing purposes.
|
void |
socketNodeClosing(SocketNode sn) |
(package private) static void |
usage(java.lang.String msg) |
activeCount, checkAccess, clone, countStackFrames, currentThread, destroy, dumpStack, enumerate, getAllStackTraces, getContextClassLoader, getDefaultUncaughtExceptionHandler, getId, getName, getPriority, getStackTrace, getState, getThreadGroup, getUncaughtExceptionHandler, holdsLock, interrupt, interrupted, isAlive, isDaemon, isInterrupted, join, join, join, resume, setContextClassLoader, setDaemon, setDefaultUncaughtExceptionHandler, setName, setPriority, setUncaughtExceptionHandler, sleep, sleep, start, stop, stop, suspend, toString, yieldorg.slf4j.Logger logger
private final int port
private final LoggerContext lc
private boolean closed
private java.net.ServerSocket serverSocket
private java.util.List<SocketNode> socketNodeList
private java.util.concurrent.CountDownLatch latch
public SimpleSocketServer(LoggerContext lc, int port)
public static void main(java.lang.String[] argv)
throws java.lang.Exception
java.lang.Exceptionprotected static void doMain(java.lang.Class<? extends SimpleSocketServer> serverClass, java.lang.String[] argv) throws java.lang.Exception
java.lang.Exceptionpublic void run()
run in interface java.lang.Runnablerun in class java.lang.Threadprotected java.lang.String getServerThreadName()
protected java.lang.String getClientThreadName(java.net.Socket socket)
protected javax.net.ServerSocketFactory getServerSocketFactory()
ServerSocketFactory.
Subclasses may override to provide a custom server socket factory.
void signalAlmostReadiness()
void setLatch(java.util.concurrent.CountDownLatch latch)
latch - public java.util.concurrent.CountDownLatch getLatch()
public boolean isClosed()
public void close()
public void socketNodeClosing(SocketNode sn)
static void usage(java.lang.String msg)
static int parsePortNumber(java.lang.String portStr)
public static void configureLC(LoggerContext lc, java.lang.String configFile) throws JoranException
JoranException