ValidVideoFormatExtensions

This commit is contained in:
Mike Phares 2023-12-25 19:18:54 -07:00
parent 48eea2edbd
commit d830c1d5a4
4 changed files with 12 additions and 8 deletions

View File

@ -11,6 +11,7 @@ public class RenameConfiguration
public bool? MoveFilesToRoot { get; set; }
public bool? SkipIdFiles { get; set; }
public string[]? ValidImageFormatExtensions { get; set; }
public string[]? ValidVideoFormatExtensions { get; set; }
public override string ToString()
{
@ -40,6 +41,7 @@ public class RenameConfiguration
{
if (configuration.IgnoreExtensions is null || configuration.IgnoreExtensions.Length == 0) throw new NullReferenceException(nameof(configuration.IgnoreExtensions));
if (configuration.ValidImageFormatExtensions is null || configuration.ValidImageFormatExtensions.Length == 0) throw new NullReferenceException(nameof(configuration.ValidImageFormatExtensions));
if (configuration.ValidVideoFormatExtensions is null || configuration.ValidVideoFormatExtensions.Length == 0) throw new NullReferenceException(nameof(configuration.ValidVideoFormatExtensions));
}
private static Models.RenameConfiguration Get(RenameConfiguration? configuration, Shared.Models.MetadataConfiguration metadataConfiguration)
@ -50,12 +52,14 @@ public class RenameConfiguration
if (configuration.MoveFilesToRoot is null) throw new NullReferenceException(nameof(configuration.MoveFilesToRoot));
if (configuration.SkipIdFiles is null) throw new NullReferenceException(nameof(configuration.SkipIdFiles));
if (configuration.ValidImageFormatExtensions is null) throw new NullReferenceException(nameof(configuration.ValidImageFormatExtensions));
if (configuration.ValidVideoFormatExtensions is null) throw new NullReferenceException(nameof(configuration.ValidVideoFormatExtensions));
Verify(configuration);
result = new(metadataConfiguration,
configuration.IgnoreExtensions,
configuration.MoveFilesToRoot.Value,
configuration.SkipIdFiles.Value,
configuration.ValidImageFormatExtensions);
configuration.ValidImageFormatExtensions,
configuration.ValidVideoFormatExtensions);
return result;
}

View File

@ -8,7 +8,8 @@ public record RenameConfiguration(Shared.Models.MetadataConfiguration MetadataCo
string[] IgnoreExtensions,
bool MoveFilesToRoot,
bool SkipIdFiles,
string[] ValidImageFormatExtensions) : Shared.Models.Properties.IRenameConfiguration
string[] ValidImageFormatExtensions,
string[] ValidVideoFormatExtensions) : Shared.Models.Properties.IRenameConfiguration
{
public override string ToString()

View File

@ -46,10 +46,8 @@ public class Rename : IRename
{
List<string> results = [];
FilePath? result;
bool isIgnoreExtension;
bool isValidImageFormatExtension = renameConfiguration.ValidImageFormatExtensions.Contains(filePath.ExtensionLowered);
isIgnoreExtension = isValidImageFormatExtension && renameConfiguration.IgnoreExtensions.Contains(filePath.ExtensionLowered);
if (!isIgnoreExtension && isValidImageFormatExtension)
bool isValidVideoFormatExtensions = renameConfiguration.ValidVideoFormatExtensions.Contains(filePath.ExtensionLowered);
if (!isValidVideoFormatExtensions)
result = null;
else
{
@ -65,8 +63,8 @@ public class Rename : IRename
result = FilePath.Get(renameConfiguration.MetadataConfiguration, fileHolder, index: null);
if (!result.Name.EndsWith("-0001.jpg"))
throw new Exception();
isValidImageFormatExtension = renameConfiguration.ValidImageFormatExtensions.Contains(result.ExtensionLowered);
isIgnoreExtension = isValidImageFormatExtension && renameConfiguration.IgnoreExtensions.Contains(result.ExtensionLowered);
bool isValidImageFormatExtension = renameConfiguration.ValidImageFormatExtensions.Contains(result.ExtensionLowered);
bool isIgnoreExtension = isValidImageFormatExtension && renameConfiguration.IgnoreExtensions.Contains(result.ExtensionLowered);
if (isIgnoreExtension || !isValidImageFormatExtension)
throw new Exception();
if (result.DirectoryName is null)

View File

@ -7,5 +7,6 @@ public interface IRenameConfiguration
public string[] IgnoreExtensions { init; get; }
public bool SkipIdFiles { init; get; }
public string[] ValidImageFormatExtensions { init; get; }
public string[] ValidVideoFormatExtensions { init; get; }
}