// CleanDirectoryRecursively(buffer<bytes<0x301>, 0x19, 0x301> path) public long CleanDirectoryRecursively(ServiceCtx context) { string name = ReadUtf8String(context); string dirName = _provider.GetFullPath(name); if (!_provider.DirectoryExists(dirName)) { return(MakeError(ErrorModule.Fs, FsErr.PathDoesNotExist)); } if (IsPathAlreadyInUse(dirName)) { return(MakeError(ErrorModule.Fs, FsErr.PathAlreadyInUse)); } foreach (DirectoryEntry entry in _provider.GetEntries(dirName)) { if (_provider.DirectoryExists(entry.Path)) { _provider.DeleteDirectory(entry.Path, true); } else if (_provider.FileExists(entry.Path)) { _provider.DeleteFile(entry.Path); } } return(0); }
// CleanDirectoryRecursively(buffer<bytes<0x301>, 0x19, 0x301> path) public long CleanDirectoryRecursively(ServiceCtx Context) { string Name = ReadUtf8String(Context); string DirName = Provider.GetFullPath(Name); if (!Provider.DirectoryExists(DirName)) { return(MakeError(ErrorModule.Fs, FsErr.PathDoesNotExist)); } if (IsPathAlreadyInUse(DirName)) { return(MakeError(ErrorModule.Fs, FsErr.PathAlreadyInUse)); } foreach (DirectoryEntry Entry in Provider.GetEntries(DirName)) { if (Provider.DirectoryExists(Entry.Path)) { Provider.DeleteDirectory(Entry.Path, true); } else if (Provider.FileExists(Entry.Path)) { Provider.DeleteFile(Entry.Path); } } return(0); }