public static async Task RunAsConsoleAsync(Endpoints.EndpointRunner endpointRunner)
        {
            await endpointRunner.StartAsync();

            await new HostBuilder().RunConsoleAsync();
            await endpointRunner.StopAsync();
        }
 public static Task RunAsServiceAsync(Endpoints.EndpointRunner endpointRunner)
 {
     using (var service = new Endpoints.Service(endpointRunner))
     {
         ServiceBase.Run(service);
         return(Task.CompletedTask);
     }
 }
        public static async Task RunAsConsoleAsync(Endpoints.EndpointRunner endpointRunner, Func <IEndpointInstance, Task> commandSchedule)
        {
            await endpointRunner.StartAsync();

            if (null == commandSchedule)
            {
                commandSchedule = instance => new HostBuilder().RunConsoleAsync();
            }

            await commandSchedule(endpointRunner.Instance);

            await endpointRunner.StopAsync();
        }