Package net.dona.doip.server
Class DoipServer
- java.lang.Object
-
- net.dona.doip.server.DoipServer
-
public class DoipServer extends java.lang.ObjectA DOIP server. It is constructed via aDoipServerConfigand aDoipProcessorwhich determines request-handling logic. The DoipProcessor can be automatically instantiated and managed if not provided to the server on construction in which case the DoipServerConfig must specify the class name of the DoipProcessor. The DOIP server will set up a listener according to the DoipServerConfig, and when requests come in, will pass them to the DoipProcessor to populate the response.
-
-
Constructor Summary
Constructors Constructor Description DoipServer(DoipServerConfig config)Constructs a DoipServer.DoipServer(DoipServerConfig config, DoipProcessor doipProcessor)Constructs a DoipServer with a previously instantiatedDoipProcessor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description intgetPort()voidinit()Initializes the server listener and thread pool and begins serving requests.voidshutdown()Shuts down the server listener and thread pool.
-
-
-
Constructor Detail
-
DoipServer
public DoipServer(DoipServerConfig config)
Constructs a DoipServer. The provided configuration must specify aDoipProcessorclass name viaDoipServerConfig.processorClasswhich will be used to instantiate a DoipProcessor when the server'sinit()method is called. The DoipProcessor will be initialized usingDoipServerConfig.processorConfigand will be shut down along with the server when the server'sshutdown()method is called.- Parameters:
config- the server configuration object
-
DoipServer
public DoipServer(DoipServerConfig config, DoipProcessor doipProcessor)
Constructs a DoipServer with a previously instantiatedDoipProcessor. TheDoipServerConfigis used only to determine the properties of the listener. The DoipServer does not call theDoipProcessor.init(JsonObject)orDoipProcessor.shutdown()methods.- Parameters:
config- the server configuration object (used for listener properties only)doipProcessor- a DoipProcessor instance used to handle requests
-
-
Method Detail
-
init
public void init() throws java.lang.ExceptionInitializes the server listener and thread pool and begins serving requests. If theDoipProcessorwas not provided at construction, it will be instantiated and initialized.- Throws:
java.lang.Exception
-
getPort
public int getPort()
-
shutdown
public void shutdown()
Shuts down the server listener and thread pool. If theDoipProcessorwas not provided at construction but was instead instantiated byinit(), it will be shut down here.- Throws:
java.lang.Exception
-
-