Package ch.qos.logback.classic.net

## Class SimpleSSLSocketServer

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

All Implemented Interfaces:
  `java.lang.Runnable`

    public class SimpleSSLSocketServer
    extends SimpleSocketServer

A `SimpleSocketServer` that supports SSL.

          <b>Usage:</b> java ch.qos.logback.classic.net.ssl.SimpleSSLSocketServer port configFile

where port is a port number where the server listens and configFile is an xml configuration file fed to `JoranConfigurator`. When running the SimpleSSLServerFactory as shown above, it is necessary to configure JSSE system properties using `-Dname=value` on the command-line when starting the server. In particular, you will probably want/need to configure the following system properties:

- javax.net.ssl.keyStore
- javax.net.ssl.keyStorePassword
- javax.net.ssl.keyStoreType
- javax.net.ssl.trustStore
- javax.net.ssl.trustStorePassword
- javax.net.ssl.trustStoreType

See the Customizing the JSSE in the JSSE Reference Guide for details on how to set these system properties.

Author:
  Carl Harris

### Nested Class Summary

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

`java.lang.Thread.State, java.lang.Thread.UncaughtExceptionHandler`

### Field Summary

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

`MAX_PRIORITY, MIN_PRIORITY, NORM_PRIORITY`

### Constructor Summary

Constructors
`SimpleSSLSocketServer​(LoggerContext lc, int port)` Creates a new server using the default SSL context.
`SimpleSSLSocketServer​(LoggerContext lc, int port, javax.net.ssl.SSLContext sslContext)` Creates a new server using a custom SSL context.

### Method Summary

All Methods Static Methods Instance Methods Concrete Methods
`protected javax.net.ServerSocketFactory` `getServerSocketFactory()` Gets the platform default `ServerSocketFactory`.
`static void` `main​(java.lang.String[] argv)`

### Methods inherited from class ch.qos.logback.classic.net.SimpleSocketServer

`close, configureLC, doMain, getClientThreadName, getLatch, getServerThreadName, isClosed, run, socketNodeClosing`

### 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 Detail

#### SimpleSSLSocketServer

    public SimpleSSLSocketServer​(LoggerContext lc,
                                 int port)
                          throws java.security.NoSuchAlgorithmException

Creates a new server using the default SSL context.

Parameters:
  `lc` - logger context for received events
  `port` - port on which the server is to listen
Throws:
  `java.security.NoSuchAlgorithmException` - if the default SSL context cannot be created

#### SimpleSSLSocketServer

    public SimpleSSLSocketServer​(LoggerContext lc,
                                 int port,
                                 javax.net.ssl.SSLContext sslContext)

Creates a new server using a custom SSL context.

Parameters:
  `lc` - logger context for received events
  `port` - port on which the server is to listen
  `sslContext` - custom SSL context

### Method Detail

#### main

    public static void main​(java.lang.String[] argv)
                     throws java.lang.Exception

Throws:
  `java.lang.Exception`

#### getServerSocketFactory

    protected javax.net.ServerSocketFactory getServerSocketFactory()

Description copied from class: `SimpleSocketServer`
Gets the platform default `ServerSocketFactory`.

Subclasses may override to provide a custom server socket factory.

Overrides:
  `getServerSocketFactory` in class `SimpleSocketServer`