run method

dynamic run()

Implementation

run() async {
  ProcessSignal.sigint.watch().listen((event) {
    if(event==ProcessSignal.sigint) exit(0);
  });

  this._server = await HttpServer.bind(_host, _port,shared:true);
  print("Running server on http://${_host.address}:$_port");

  await for (HttpRequest request in this._server!) {
    if(corsPolicy!=null) request = corsPolicy!.applyPolicy(request);
    try{
      if(_isWebRequest(request) && webServer!=null){
        await webServer!.handleRequest(request);
      }else if(_isRESTRequest(request) && restServer!=null){
        await restServer!.handleRequest(request);
      }else{
        request.response
          ..statusCode = 410
          ..write("Invalid request. Please verify the URL.")
          ..close();
        print("${_host.address} - - [${ServerUtils.printDateTime()}] '${request.method} ${request.requestedUri.path} HTTP/${request.protocolVersion}' 400 [BAD REQUEST]");
      }
      continue;
    }catch(e,s){
      print(e);
      print(s);
      continue;
    }
  }
}