using Decal.Interop.Core; namespace Decal.Adapter; public sealed class ServiceProxy : IDecalService, IDecalDirectory { private ServiceBase wrapped; internal ServiceProxy(ServiceBase toWrap) { wrapped = toWrap; } void IDecalService.AfterPlugins() { wrapped.ServiceEvent(ServiceBase.ServiceEventType.AfterPluigins); } void IDecalService.BeforePlugins() { wrapped.ServiceEvent(ServiceBase.ServiceEventType.BeforePlugins); } void IDecalService.Initialize(DecalCore pDecal) { wrapped.standardEvent(ExtensionEvents.Startup); } void IDecalService.Terminate() { wrapped.standardEvent(ExtensionEvents.Shutdown); } object IDecalDirectory.Lookup(string strName) { return wrapped.ResolvePath(strName); } }