/// <summary> /// Updates the type cache. /// </summary> private void DoMetadataUpdate(object state) { try { if (!Server.IsRunning) { return; } ComAeClientManager system = (ComAeClientManager)SystemContext.SystemHandle; ComAeClient client = (ComAeClient)system.SelectClient(SystemContext, true); AeTypeCache cache = new AeTypeCache(); cache.LoadEventTypes(client); lock (Lock) { if (m_typeCache == null) { m_typeCache = cache; } m_typeCache.EventTypes = cache.EventTypes; m_typeCache.UpdateCache(SystemContext, NamespaceIndex); } } catch (Exception e) { Utils.Trace(e, "Unexpected error updating event type cache."); } }