/// <summary> /// The logic to run when the <see cref="ModelSearcher" /> is cleared. /// </summary> protected virtual void OnModelSearcherCleared() { _backForwardNavigator.UpdateCurrentItem(-1); _backForwardNavigator.UpdateNavigationCollection(new int[0]); DependentLocators.ForEach(locator => locator.RequestDisable(_adminToken)); Model.Clear(); ClearAndDisableDependentLocators(_adminToken); }
/// <summary> /// Used to refresh all locators save for the <see cref="ModelSearcher" />. /// </summary> /// <param name="token">The token for use in locking.</param> /// <returns>Task for async use.</returns> protected Task RefreshDependentLocators(object token) => Task.WhenAll(DependentLocators.Select(loc => loc.RefreshLocator(Model.Id, token)).ToArray());