using System; using log4net; using Quadarax.Foundation.Common.Object.Bee.Core.Pattern; using Quadarax.Foundation.Infrastructure.Layers; namespace Quadarax.Foundation.Infrastructure { internal class GlobalContainer : Singleton { private GlobalLayer _global; private ILog _logger; public GlobalLayer RootLayer => _global; public GlobalContainer() { _logger = LogManager.GetLogger(GetType()); } public void CreateGlobal(string globalLayerName) where TGlobalLayer : GlobalLayer { _global = (GlobalLayer) Activator.CreateInstance(typeof(TGlobalLayer), globalLayerName); } public string Dump() { return _global.Dump(); } } }