public void Organize(string unorganizedDirectoryPath, string organizedDirectoryPath, string duplicatesDirectoryPath, CancellationToken cancellationToken) { VerifyArgument.IsNotNullOrEmpty("unorganizedDirectoryPath", unorganizedDirectoryPath); VerifyArgument.IsNotNullOrEmpty("organizedDirectoryPath", organizedDirectoryPath); VerifyArgument.IsNotNullOrEmpty("duplicatesDirectoryPath", duplicatesDirectoryPath); this._unorganizedDirectoryPath = unorganizedDirectoryPath; this._organizedDirectoryPath = organizedDirectoryPath; this._duplicatesDirectoryPath = duplicatesDirectoryPath; if (!Directory.Exists(this._unorganizedDirectoryPath)) { throw new DirectoryNotFoundException(string.Format("Directory not found. {0}", this._unorganizedDirectoryPath)); } OrganizeDirectory(this._unorganizedDirectoryPath, cancellationToken); }