public object GetService(Type serviceType) { if (_provider == null) { lock (_object) if (_provider == null) { _provider = new ImageServerServiceProvider(); } } return(_provider.GetService(serviceType)); }
public object GetService(Type serviceType) { // Note: The object is cached for performance purpose. // For servicibility, cache is invalidated periodically so that changing the settings (EnterpriseImageServerServiceSettings) // will not require restarting all services/IIS in the farm. lock (_cache) { const string cacheId = "Settings"; var provider = _cache.Get(cacheId, new CacheGetOptions("Default")) as ImageServerServiceProvider; if (provider == null) { provider = new ImageServerServiceProvider(); _cache.Put(cacheId, provider, new CachePutOptions("Default", _cacheDuration, false)); } return(provider.GetService(serviceType)); } }