public FileSystemItemBase(IDirectoryInfo directory, string name, IFileSystemItem parent, bool isValid, TryCreateFileSystemItem tryCreateChild = null)
        {
            Directory          = directory;
            Name               = name;
            Parent             = parent;
            _itemItselfIsValid = isValid;

            if (tryCreateChild != null)
            {
                Children = directory.GetChildrenFileSystemItems(this, tryCreateChild);
            }
            else
            {
                Children = ImmutableList <IFileSystemItem> .Empty;
            }

            UpdateIsValid();
        }
Example #2
0
 private ArchiveRoot(string archiveRootDirectoryPath)
 {
     _directoryPath = archiveRootDirectoryPath;
     _directoryInfo = FileSystemProvider.Instance.DirectoryInfo.FromDirectoryName(archiveRootDirectoryPath);
     Children       = _directoryInfo.GetChildrenFileSystemItems(null, AssetDirectory.TryCreate);
 }