/// <summary> /// Registers a instance of filter with a unique name to the <see cref="SyncronizedFilterManagerService"/>. /// </summary> /// <param name="filter">The filter to register.</param> /// <returns><see cref="true"/> if the filter was registered successfully; otherwise, <see cref="false"/>.</returns> public static bool RegisterFilter(SyncronizedFilter filter) { if (!filter.HasName) { throw new ArgumentException(ExceptionResource.STRING_NULLWHITESPACE); } return(s_registeredFilters.TryAdd(filter.Name, filter)); }
/// <summary> /// Unregsitsters a already registered filter form the <see cref="SyncronizedFilterManagerService"/>. If the filter was unregistered successfully, then disposes the filter. /// </summary> /// <param name="filter">The filter to unregister.</param> /// <returns></returns> public static bool UnregisterFilter(SyncronizedFilter filter, bool disposes = true) { if (!filter.HasName) { throw new ArgumentException(ExceptionResource.STRING_NULLWHITESPACE); } bool result = s_registeredFilters.Remove(filter.Name); if (result && disposes) { filter.Dispose(); } return(result); }