Added TODOs for future splitting of the web server from the node.

This commit is contained in:
Clinton Alexander 2017-01-31 16:03:34 +00:00
parent a5f6fb9479
commit 876bae67cb
3 changed files with 5 additions and 0 deletions

View File

@ -89,6 +89,7 @@ fun main(args: Array<String>) {
try { try {
cmdlineOptions.baseDirectory.createDirectories() cmdlineOptions.baseDirectory.createDirectories()
// TODO: Webserver should be split and start from inside a WAR container
if (!cmdlineOptions.isWebserver) { if (!cmdlineOptions.isWebserver) {
val node = conf.createNode() val node = conf.createNode()
node.start() node.start()

View File

@ -24,6 +24,8 @@ import java.time.LocalDateTime
/** /**
* Utilities and serialisers for working with JSON representations of basic types. This adds Jackson support for * Utilities and serialisers for working with JSON representations of basic types. This adds Jackson support for
* the java.time API, some core types, and Kotlin data classes. * the java.time API, some core types, and Kotlin data classes.
*
* TODO: This does not belong in node. It should be moved to the client module or a dedicated webserver module.
*/ */
object JsonSupport { object JsonSupport {
interface PartyObjectMapper { interface PartyObjectMapper {

View File

@ -27,6 +27,7 @@ import java.lang.reflect.InvocationTargetException
import java.net.InetAddress import java.net.InetAddress
import java.util.* import java.util.*
// TODO: Split into a separate module under client that packages into WAR formats.
class WebServer(val config: FullNodeConfiguration) { class WebServer(val config: FullNodeConfiguration) {
private companion object { private companion object {
val log = loggerFor<WebServer>() val log = loggerFor<WebServer>()
@ -51,6 +52,7 @@ class WebServer(val config: FullNodeConfiguration) {
// Note that the web server handlers will all run concurrently, and not on the node thread. // Note that the web server handlers will all run concurrently, and not on the node thread.
val handlerCollection = HandlerCollection() val handlerCollection = HandlerCollection()
// TODO: Move back into the node itself.
// Export JMX monitoring statistics and data over REST/JSON. // Export JMX monitoring statistics and data over REST/JSON.
if (config.exportJMXto.split(',').contains("http")) { if (config.exportJMXto.split(',').contains("http")) {
val classpath = System.getProperty("java.class.path").split(System.getProperty("path.separator")) val classpath = System.getProperty("java.class.path").split(System.getProperty("path.separator"))