void LocateVC(GenericNode node) { node.Meta[META_VC] = null; node.Meta[META_ROOT] = null; node.Meta[META_STATUS] = VCItemStatus.Unknown; if (node.Parent != null && node.Parent is GenericNode) { GenericNode parent = (GenericNode)node.Parent; if (parent.Meta != null && parent.Meta.ContainsKey(META_VC)) { node.Meta[META_VC] = parent.Meta[META_VC]; node.Meta[META_ROOT] = parent.Meta[META_ROOT]; return; } } WatcherVCResult result = fsWatchers.ResolveVC(node.BackingPath); if (result != null) { node.Meta[META_VC] = result.Manager; node.Meta[META_ROOT] = result.Watcher.Path; } }
internal WatcherVCResult ResolveVC(string path, bool andStatus) { WatcherVCResult result = ResolveVC(path); if (result != null && andStatus) { result.Status = result.Manager.GetOverlay(path, result.Watcher.Path); } return(result); }