// Copyright (c) .NET Foundation. All rights reserved. // Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. using System; namespace Microsoft.AspNetCore.Razor.Tools { internal abstract class EventBus { public static readonly EventBus Default = new DefaultEventBus(); /// /// Called when the server updates the keep alive value. /// public virtual void UpdateKeepAlive(TimeSpan timeSpan) { } /// /// Called each time the server listens for new connections. /// public virtual void ConnectionListening() { } /// /// Called when a connection to the server occurs. /// public virtual void ConnectionReceived() { } /// /// Called when one or more connections have completed processing. The number of connections /// processed is provided in . /// public virtual void ConnectionCompleted(int count) { } /// /// Called when a compilation is completed successfully and the response is written to the stream. /// public virtual void CompilationCompleted() { } /// /// Called when a bad client connection was detected and the server will be shutting down as a /// result. /// public virtual void ConnectionRudelyEnded() { } /// /// Called when the server is shutting down because the keep alive timeout was reached. /// public virtual void KeepAliveReached() { } private class DefaultEventBus : EventBus { } } }