public sealed override void LoadItems(IFSItemLoader itemsLoader) { ValideteChildItemsStete(itemsLoader); if (!AddItems(itemsLoader, _enumerator)) { itemsLoader.ItemsLoaderState = _loaderStateFactory.CreateLoadedItemsState(_explorer.GetLastWriteTime(itemsLoader.ItemPath)); } }
protected void ValideteChildItemsStete(IFSItemLoader itemsLoader) { foreach (var itemManager in itemsLoader.ItemCollection.ItemManagers) { if (itemsLoader.IsLoadingItems) { itemManager.ValidateItemState(); } } }
public void ValidateItemState(IFSItemLoader itemsLoader) { if (IsValidCurrentItem(itemsLoader.ItemPath)) { return; } itemsLoader.ItemsLoaderState = _loaderStateFactory.CreatePreLoadItemsState(); itemsLoader.BeginLoadItems(); }
public sealed override void LoadItems(IFSItemLoader itemLoader) { itemLoader.ItemCollection.Clear(); if (_explorer.HasItems(itemLoader.ItemPath)) { itemLoader.ItemCollection.Add(null); itemLoader.ItemsLoaderState = _loaderStateFactory.CreateLoadItemsState(_explorer.GetLastWriteTime(itemLoader.ItemPath)); } else { itemLoader.ItemsLoaderState = _loaderStateFactory.CreateLoadedItemsState(_explorer.GetLastWriteTime(itemLoader.ItemPath)); } }
protected bool AddItems(IFSItemLoader itemLoader, IEnumerator <FSItemModel> enumerator) { var hasNext = enumerator.MoveNext(); if (!hasNext) { return(hasNext); } do { itemLoader.ItemCollection.Add(enumerator.Current); } while (/*itemLoader.IsLoadingItems && */ (hasNext = enumerator.MoveNext())); return(hasNext); }
public FSItemManager(IFSItemLoader itemLoader, IFSItemWatcher watcher) { _itemLoader = itemLoader; _watcher = watcher; }
public abstract void LoadItems(IFSItemLoader itemLoader);