startServer method
Starts, and returns the server.
Implementation
Future<Server> startServer([address, int port = 0]) {
var host = address ?? '127.0.0.1';
return generateServer(host, port).then((server) {
this.server = server;
return Future.wait(app.startupHooks.map(app.configure)).then((_) {
app.optimizeForProduction();
_sub = this.server?.listen((request) {
var stream = createResponseStreamFromRawRequest(request);
stream.listen((response) {
// TODO: To be revisited
handleRawRequest(request, response);
});
});
return Future.value(this.server!);
});
}).catchError((error) {
app.logger.severe('Failed to create server', error);
throw ArgumentError('[Driver]Failed to create server');
});
}