Package ch.qos.logback.classic.net

# Class SimpleSocketServer

java.lang.Object
java.lang.Thread
ch.qos.logback.classic.net.SimpleSocketServer

All Implemented Interfaces:
  `Runnable`

Direct Known Subclasses:
  `SimpleSSLSocketServer`

public class SimpleSocketServer extends Thread
A simple `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`.

Since:
  0.8.4
Author:
  Ceki Gülcü, Sébastien Pennec

## Nested Class Summary

## Nested classes/interfaces inherited from class java.lang.Thread

`Thread.State, Thread.UncaughtExceptionHandler`

## Field Summary

### Fields inherited from class java.lang.Thread

`MAX_PRIORITY, MIN_PRIORITY, NORM_PRIORITY`

## Constructor Summary

Constructors
Constructor
Description
`SimpleSocketServer(LoggerContext lc, int port)`

## Method Summary

Modifier and Type
Method
Description
`void`
`close()`
`static void`
`configureLC(LoggerContext lc, String configFile)`
`protected static void`
`doMain(Class<? extends SimpleSocketServer> serverClass, String[] argv)`
`protected String`
`getClientThreadName(Socket socket)`
Returns a name to identify each client thread.
`CountDownLatch`
`getLatch()`
Used for testing purposes
`protected ServerSocketFactory`
`getServerSocketFactory()`
Gets the platform default `ServerSocketFactory`.
`protected String`
`getServerThreadName()`
Returns the name given to the server thread.
`boolean`
`isClosed()`
`static void`
`main(String[] argv)`
`void`
`run()`
`void`
`socketNodeClosing(SocketNode sn)`

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

`activeCount, checkAccess, clone, countStackFrames, currentThread, dumpStack, enumerate, getAllStackTraces, getContextClassLoader, getDefaultUncaughtExceptionHandler, getId, getName, getPriority, getStackTrace, getState, getThreadGroup, getUncaughtExceptionHandler, holdsLock, interrupt, interrupted, isAlive, isDaemon, isInterrupted, join, join, join, onSpinWait, resume, setContextClassLoader, setDaemon, setDefaultUncaughtExceptionHandler, setName, setPriority, setUncaughtExceptionHandler, sleep, sleep, start, stop, suspend, toString, yield`

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

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

## Constructor Details

### SimpleSocketServer

public SimpleSocketServer(LoggerContext lc, int port)

## Method Details

### main

public static void main(String[] argv) throws Exception

Throws:
  `Exception`

### doMain

protected static void doMain(Class<? extends SimpleSocketServer> serverClass, String[] argv) throws Exception

Throws:
  `Exception`

### run

public void run()

Specified by:
  `run` in interface `Runnable`
Overrides:
  `run` in class `Thread`

### getServerThreadName

protected String getServerThreadName()
Returns the name given to the server thread.

### getClientThreadName

protected String getClientThreadName(Socket socket)
Returns a name to identify each client thread.

### getServerSocketFactory

protected ServerSocketFactory getServerSocketFactory()
Gets the platform default `ServerSocketFactory`.

Subclasses may override to provide a custom server socket factory.

### getLatch

public CountDownLatch getLatch()
Used for testing purposes

### isClosed

public boolean isClosed()

### close

public void close()

### socketNodeClosing

public void socketNodeClosing(SocketNode sn)

### configureLC

public static void configureLC(LoggerContext lc, String configFile) throws JoranException

Throws:
  `JoranException`