From 7cf5abd3ec68baa1561919ac8bbee9c74847b44f Mon Sep 17 00:00:00 2001 From: Josh Creek Date: Thu, 2 Sep 2021 20:35:47 +0100 Subject: [PATCH] refactor(*): Make IsInvalidFileName an extension method --- Creek.FileRepository/Helpers/StringHelper.cs | 5 +++-- Creek.FileRepository/Repositories/SftpRepository.cs | 8 ++++---- 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/Creek.FileRepository/Helpers/StringHelper.cs b/Creek.FileRepository/Helpers/StringHelper.cs index fa19330..81e865b 100644 --- a/Creek.FileRepository/Helpers/StringHelper.cs +++ b/Creek.FileRepository/Helpers/StringHelper.cs @@ -1,20 +1,21 @@ using System; using System.Collections.Generic; using System.Text; +using System.Text.RegularExpressions; namespace Creek.FileRepository.Helpers { /// /// A helper class for string methods. /// - internal class StringHelper + internal static class StringHelper { /// /// Checks if a filename contains invalid characters. /// /// The filename to be checked. /// Returns true if the filename contains invalid characters. - public static bool IsInvalidFileName(string filename) + public static bool IsInvalidFileName(this string filename) { char[] invalidCharacters = new char[] { '<', '>', ':', '\'', '/', '\\', '|', '?', '*' }; diff --git a/Creek.FileRepository/Repositories/SftpRepository.cs b/Creek.FileRepository/Repositories/SftpRepository.cs index d7557d2..ce6ad90 100644 --- a/Creek.FileRepository/Repositories/SftpRepository.cs +++ b/Creek.FileRepository/Repositories/SftpRepository.cs @@ -42,7 +42,7 @@ namespace Creek.FileRepository.Repositories /// Returns the filename. public async Task CreateFileAsync(RepoFile file) { - if (StringHelper.IsInvalidFileName(file.Filename)) + if (file.Filename.IsInvalidFileName()) { throw new ArgumentException($"The filename for'{nameof(file)}' contains invalid characters for a filename.", nameof(file)); } @@ -64,7 +64,7 @@ namespace Creek.FileRepository.Repositories { throw new ArgumentException($"'{nameof(filename)}' cannot be null or empty.", nameof(filename)); } - else if (StringHelper.IsInvalidFileName(filename)) + else if (filename.IsInvalidFileName()) { throw new ArgumentException($"'{nameof(filename)}' contains invalid characters for a filename.", nameof(filename)); } @@ -102,7 +102,7 @@ namespace Creek.FileRepository.Repositories { throw new ArgumentException($"'{nameof(filename)}' cannot be null or empty.", nameof(filename)); } - else if (StringHelper.IsInvalidFileName(filename)) + else if (filename.IsInvalidFileName()) { throw new ArgumentException($"'{nameof(filename)}' contains invalid characters for a filename.", nameof(filename)); } @@ -140,7 +140,7 @@ namespace Creek.FileRepository.Repositories /// Returns true if update was successful. public async Task UpdateFileAsync(RepoFile file) { - if (StringHelper.IsInvalidFileName(file.Filename)) + if (file.Filename.IsInvalidFileName()) { throw new ArgumentException($"The filename for'{nameof(file)}' contains invalid characters for a filename.", nameof(file)); }