Issue Type: Improvement Improvement
Affects Versions: 1.0.10
Assignee: Logback dev list
Components: logback-classic, logback-core
Created: 22/Mar/13 4:50 PM
Description: In SimpleSocketServer.run, the ServerSocket constructor is invoked directly to create a new server socket. This makes it difficult for a subclass to have any influence over the creation of server sockets (e.g. to use an SSL server socket).

If SimpleSocketServer declared a method such as this:

protected ServerSocketFactory getServerSocketFactory() {
  return ServerSocketFactory.getDefault()
}

and used it in the run() implementation...

...
serverSocket = getServerSocketFactory().createSocket(port);
...

then a subclass could override it with, for example, an appropriately configured SSLServerSocketFactory...

public class MySSLSimpleSocketServer extends SimpleSocketServer {
  ...
  protected ServerSocketFactory getServerSocketFactory() {
    return mySslContext.getServerSocketFactory();
  }
  ...
}

Project: logback
Priority: Major Major
Reporter: Carl Harris
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira