Beispiel #1
0
        /// <summary>
        /// Method that calls the Cartridge Health Check method.
        /// </summary>
        /// <param name="serviceType"></param>
        /// <param name="value"></param>
        /// <returns></returns>
        public static HealthCheck CheckUp(WorkBenchServiceType serviceType, string value)
        {
            IWorkBenchHealthCheck workBenchHealCheck = GetService <IWorkBenchHealthCheck>(serviceType);
            string serviceKey = serviceType.ToString();
            var    checkup    = workBenchHealCheck.HealthCheck(serviceKey, value);

            return(checkup);
        }
        public static void AddToCache(WorkBenchServiceType singletonType, IWorkBenchService singleton)
        {
            if (_singletonCache.ContainsKey(singletonType))
            {
                throw new ArgumentException("type", $"The SingletonType '{singletonType.ToString()}' has been already set. Only one Workbench service of a given type is allowed.");
            }

            _singletonCache.Add(singletonType, singleton);
        }
Beispiel #3
0
        /// <summary>
        /// Get active cartridges from exposed _singletonCache property from Workbench
        /// </summary>
        /// <typeparam name="T"></typeparam>
        /// <param name="singletonType"></param>
        /// <param name="mandatoryParam"></param>
        /// <returns></returns>
        internal static T GetService <T>(WorkBenchServiceType singletonType, Boolean mandatoryParam = true)
        {
            IWorkBenchService service;

            if (!WorkBench._singletonCache.TryGetValue(singletonType, out service))
            {
                if (mandatoryParam)
                {
                    throw new ArgumentException($"No Workbench service of type '{singletonType.ToString()}' was injected on Startup.");
                }
            }

            return((T)service);
        }
        public static object GetRegisteredService(WorkBenchServiceType serviceType)
        {
            if (!_isServicesUp)
            {
                // Trigger initializations over Workbench Services on demand
                InitializeServices();
            }

            IWorkBenchService IWorkBenchService;

            _singletonCache.TryGetValue(serviceType, out IWorkBenchService);

            return(IWorkBenchService != null ? IWorkBenchService : null);
        }
 public static object GetRegisteredService(WorkBenchServiceType serviceType)
 => Workbench.Instance.GetRegisteredService((WorkbenchServiceType)serviceType);
 public static void AddToCache(WorkBenchServiceType singletonType, IWorkBenchService singleton) => Workbench.Instance.AddToCache((WorkbenchServiceType)singletonType, (IWorkbenchService)singleton);