Package net.dona.doip.server
Class DoipServer
java.lang.Object
net.dona.doip.server.DoipServer
A DOIP server. It is constructed via a
DoipServerConfig and a DoipProcessor which
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
ConstructorsConstructorDescriptionDoipServer(DoipServerConfig config) Constructs a DoipServer.DoipServer(DoipServerConfig config, DoipProcessor doipProcessor) Constructs a DoipServer with a previously instantiatedDoipProcessor. -
Method Summary
Modifier and TypeMethodDescriptionintgetPort()voidinit()Initializes the server listener and thread pool and begins serving requests.voidlogAccess(String remoteHost, String clientId, String requestId, String operationId, String targetId, String status, Long responseTime) voidshutdown()Shuts down the server listener and thread pool.
-
Constructor Details
-
DoipServer
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
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 Details
-
init
Initializes the server listener and thread pool and begins serving requests. If theDoipProcessorwas not provided at construction, it will be instantiated and initialized.- Throws:
Exception- if a new instance of a processor specified by this DoipServer's configuration cannot be constructed, or if a server socket cannot be initialized
-
getPort
public int getPort() -
logAccess
-
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.
-