Namespace Zaya.Logging.Services
Classes
EmptyLoggingWrapper
No-op ILoggingWrapper: Wrap<T>(T) returns the same instance. Use as a default when logging is disabled so callers never need null checks.
Interfaces
ILoggable
Optional injection point when an instance is created without a wrapper in the constructor
(for example via Activator). The host may set Logging before or as part of Wrap<T>(T).
Prefer constructor injection of ILoggingWrapper when possible.
ILogger
Sink for log messages. Implemented by the host (or a sink package such as
Zaya.Logging.Impl.Microsoft). Plugins must not depend on this type for day-to-day logging —
use LogAttribute on implementation methods and Wrap<T>(T).
ILoggingWrapper
Wraps service instances in an interface proxy that logs methods marked with LogAttribute. Plugins receive this type (never the sink ILogger) and call Wrap<T>(T) when creating children.