program SwaggerPrimer; {$APPTYPE CONSOLE} uses {$IFDEF MSWINDOWS} WinAPI.ShellAPI, WinAPI.Windows, {$ENDIF} System.SysUtils, MVCFramework.Logger, MVCFramework.Commons, MVCFramework.Signal, Web.ReqMulti, Web.WebReq, Web.WebBroker, IdContext, IdHTTPWebBrokerBridge, MyControllerU in 'MyControllerU.pas', WebModuleU in 'WebModuleU.pas' {MyWebModule: TWebModule} , EntitiesU in 'EntitiesU.pas'; {$R *.res} procedure RunServer(APort: Integer); var LServer: TIdHTTPWebBrokerBridge; begin LogI('** DMVCFramework Server ** build ' + DMVCFRAMEWORK_VERSION); LServer := TIdHTTPWebBrokerBridge.Create(nil); try LServer.OnParseAuthentication := TMVCParseAuthentication.OnParseAuthentication; LServer.DefaultPort := APort; LServer.MaxConnections := 0; LServer.ListenQueue := 200; LServer.Active := True; LogI('CTRL+C to Quit'); WaitForTerminationSignal; finally LServer.Free; end; end; begin ReportMemoryLeaksOnShutdown := True; IsMultiThread := True; try if WebRequestHandler <> nil then WebRequestHandler.WebModuleClass := WebModuleClass; WebRequestHandlerProc.MaxConnections := 1024; {$IFDEF MSWINDOWS} ShellExecute(0, PChar('open'), PChar('http://localhost:8080/swagger'), nil, nil, sw_show); {$ENDIF} RunServer(8080); except on E: Exception do LogException(E, 'Shutdown'); end; end.