Shared.Models.Properties.IMetadataConfiguration
This commit is contained in:
@ -1,3 +1,6 @@
|
||||
using View_by_Distance.Shared.Models.Properties;
|
||||
using View_by_Distance.Shared.Models.Stateless.Methods;
|
||||
|
||||
namespace View_by_Distance.Shared.Models.Stateless;
|
||||
|
||||
internal abstract class Id
|
||||
@ -17,4 +20,46 @@ internal abstract class Id
|
||||
return result;
|
||||
}
|
||||
|
||||
internal static NameWithoutExtension GetNameWithoutExtension(IMetadataConfiguration configuration, string file)
|
||||
{
|
||||
NameWithoutExtension result;
|
||||
int? id;
|
||||
short? multiplier;
|
||||
char negativeMarker;
|
||||
int absoluteValueOfId;
|
||||
string fileNameWithoutExtension = Path.GetFileNameWithoutExtension(file);
|
||||
short sortOrderOnlyLengthIndex = IId.GetSortOrderOnlyLengthIndex(configuration.Offset);
|
||||
bool nameWithoutExtensionIsIdFormat = IId.NameWithoutExtensionIsIdFormat(fileNameWithoutExtension);
|
||||
bool nameWithoutExtensionIsPaddedIdFormat = IId.NameWithoutExtensionIsPaddedIdFormat(fileNameWithoutExtension, sortOrderOnlyLengthIndex);
|
||||
if (!nameWithoutExtensionIsIdFormat && !nameWithoutExtensionIsPaddedIdFormat)
|
||||
id = null;
|
||||
else if (nameWithoutExtensionIsIdFormat)
|
||||
{
|
||||
if (!int.TryParse(fileNameWithoutExtension, out absoluteValueOfId))
|
||||
id = null;
|
||||
else
|
||||
id = absoluteValueOfId;
|
||||
}
|
||||
else
|
||||
{
|
||||
negativeMarker = fileNameWithoutExtension[sortOrderOnlyLengthIndex - 2];
|
||||
if (negativeMarker == '7')
|
||||
multiplier = 1;
|
||||
else if (negativeMarker == '3')
|
||||
multiplier = -1;
|
||||
else
|
||||
multiplier = null;
|
||||
if (!int.TryParse(fileNameWithoutExtension[sortOrderOnlyLengthIndex..], out absoluteValueOfId))
|
||||
id = null;
|
||||
else
|
||||
{
|
||||
id = absoluteValueOfId * multiplier;
|
||||
if (id is null || !fileNameWithoutExtension.EndsWith(id.Value.ToString()[1..]))
|
||||
id = null;
|
||||
}
|
||||
}
|
||||
result = new(fileNameWithoutExtension, id, nameWithoutExtensionIsIdFormat, nameWithoutExtensionIsPaddedIdFormat);
|
||||
return result;
|
||||
}
|
||||
|
||||
}
|
@ -1,3 +1,5 @@
|
||||
using View_by_Distance.Shared.Models.Properties;
|
||||
|
||||
namespace View_by_Distance.Shared.Models.Stateless.Methods;
|
||||
|
||||
public interface IId
|
||||
@ -18,9 +20,9 @@ public interface IId
|
||||
static string GetPaddedId(int intMinValueLength, int index, int id) =>
|
||||
id > -1 ? $"{index}070{id.ToString().PadLeft(intMinValueLength, '0')}" : $"{index}030{id.ToString()[1..].PadLeft(intMinValueLength, '0')}";
|
||||
|
||||
bool TestStatic_NameWithoutExtensionIsPaddedIdFormat(string fileNameWithoutExtension, int sortOrderOnlyLengthIndex) =>
|
||||
bool TestStatic_NameWithoutExtensionIsPaddedIdFormat(string fileNameWithoutExtension, short sortOrderOnlyLengthIndex) =>
|
||||
NameWithoutExtensionIsPaddedIdFormat(fileNameWithoutExtension, sortOrderOnlyLengthIndex);
|
||||
static bool NameWithoutExtensionIsPaddedIdFormat(string fileNameWithoutExtension, int sortOrderOnlyLengthIndex) =>
|
||||
static bool NameWithoutExtensionIsPaddedIdFormat(string fileNameWithoutExtension, short sortOrderOnlyLengthIndex) =>
|
||||
fileNameWithoutExtension.Length > sortOrderOnlyLengthIndex
|
||||
&& fileNameWithoutExtension[sortOrderOnlyLengthIndex] == '0'
|
||||
&& fileNameWithoutExtension[sortOrderOnlyLengthIndex - 3] == '0'
|
||||
@ -31,9 +33,9 @@ public interface IId
|
||||
static short GetSortOrderOnlyLengthIndex(int offset) =>
|
||||
(short)(offset.ToString().Length + 3);
|
||||
|
||||
bool TestStatic_NameWithoutExtensionIsPaddedIdFormat(FileHolder fileHolder, int sortOrderOnlyLengthIndex) =>
|
||||
NameWithoutExtensionIsPaddedIdFormat(fileHolder, sortOrderOnlyLengthIndex);
|
||||
static bool NameWithoutExtensionIsPaddedIdFormat(FileHolder fileHolder, int sortOrderOnlyLengthIndex) =>
|
||||
NameWithoutExtensionIsPaddedIdFormat(fileHolder.NameWithoutExtension, sortOrderOnlyLengthIndex);
|
||||
NameWithoutExtension TestStatic_GetNameWithoutExtension(IMetadataConfiguration configuration, string file) =>
|
||||
GetNameWithoutExtension(configuration, file);
|
||||
static NameWithoutExtension GetNameWithoutExtension(IMetadataConfiguration configuration, string file) =>
|
||||
Id.GetNameWithoutExtension(configuration, file);
|
||||
|
||||
}
|
@ -66,9 +66,9 @@ public interface IPath
|
||||
static (string, int) GetDirectoryNameAndIndex(int resultAllInOneSubdirectoryLength, string fileName) =>
|
||||
XPath.GetDirectoryNameAndIndex(resultAllInOneSubdirectoryLength, fileName);
|
||||
|
||||
Dictionary<string, string[]> TestStatic_GetKeyValuePairs(IAAConfiguration aAConfiguration, string? resultsFullGroupDirectory, string[]? directories) =>
|
||||
Dictionary<string, string[]> TestStatic_GetKeyValuePairs(IMetadataConfiguration aAConfiguration, string? resultsFullGroupDirectory, string[]? directories) =>
|
||||
GetKeyValuePairs(aAConfiguration, resultsFullGroupDirectory, directories);
|
||||
static Dictionary<string, string[]> GetKeyValuePairs(IAAConfiguration propertyConfiguration, string? resultsFullGroupDirectory, string[]? directories) =>
|
||||
static Dictionary<string, string[]> GetKeyValuePairs(IMetadataConfiguration propertyConfiguration, string? resultsFullGroupDirectory, string[]? directories) =>
|
||||
XPath.GetKeyValuePairs(propertyConfiguration, resultsFullGroupDirectory, directories);
|
||||
|
||||
}
|
@ -5,44 +5,44 @@ namespace View_by_Distance.Shared.Models.Stateless.Methods;
|
||||
public interface IResult
|
||||
{
|
||||
|
||||
string TestStatic_GetRelativePath(IAAConfiguration aAConfiguration, string path) =>
|
||||
string TestStatic_GetRelativePath(IMetadataConfiguration aAConfiguration, string path) =>
|
||||
GetRelativePath(aAConfiguration, path);
|
||||
static string GetRelativePath(IAAConfiguration aAConfiguration, string path) =>
|
||||
static string GetRelativePath(IMetadataConfiguration aAConfiguration, string path) =>
|
||||
XResult.GetRelativePath(aAConfiguration, path);
|
||||
|
||||
string TestStatic_GetResultsGroupDirectory(IAAConfiguration aAConfiguration, string description, bool create) =>
|
||||
string TestStatic_GetResultsGroupDirectory(IMetadataConfiguration aAConfiguration, string description, bool create) =>
|
||||
GetResultsGroupDirectory(aAConfiguration, description, create);
|
||||
static string GetResultsGroupDirectory(IAAConfiguration aAConfiguration, string description, bool create) =>
|
||||
static string GetResultsGroupDirectory(IMetadataConfiguration aAConfiguration, string description, bool create) =>
|
||||
XResult.GetResultsGroupDirectory(aAConfiguration, description, create);
|
||||
|
||||
string TestStatic_GetResultsGroupDirectory(IAAConfiguration aAConfiguration, string description) =>
|
||||
string TestStatic_GetResultsGroupDirectory(IMetadataConfiguration aAConfiguration, string description) =>
|
||||
GetResultsGroupDirectory(aAConfiguration, description);
|
||||
static string GetResultsGroupDirectory(IAAConfiguration aAConfiguration, string description) =>
|
||||
static string GetResultsGroupDirectory(IMetadataConfiguration aAConfiguration, string description) =>
|
||||
XResult.GetResultsGroupDirectory(aAConfiguration, description, create: true);
|
||||
|
||||
string TestStatic_GetResultsDateGroupDirectory(IAAConfiguration aAConfiguration, string description) =>
|
||||
string TestStatic_GetResultsDateGroupDirectory(IMetadataConfiguration aAConfiguration, string description) =>
|
||||
GetResultsDateGroupDirectory(aAConfiguration, description);
|
||||
static string GetResultsDateGroupDirectory(IAAConfiguration aAConfiguration, string description) =>
|
||||
static string GetResultsDateGroupDirectory(IMetadataConfiguration aAConfiguration, string description) =>
|
||||
XResult.GetResultsDateGroupDirectory(aAConfiguration, description);
|
||||
|
||||
string TestStatic_GetResultsDateGroupDirectory(IAAConfiguration aAConfiguration, string description, string jsonGroup) =>
|
||||
string TestStatic_GetResultsDateGroupDirectory(IMetadataConfiguration aAConfiguration, string description, string jsonGroup) =>
|
||||
GetResultsDateGroupDirectory(aAConfiguration, description, jsonGroup);
|
||||
static string GetResultsDateGroupDirectory(IAAConfiguration aAConfiguration, string description, string jsonGroup) =>
|
||||
static string GetResultsDateGroupDirectory(IMetadataConfiguration aAConfiguration, string description, string jsonGroup) =>
|
||||
XResult.GetResultsDateGroupDirectory(aAConfiguration, description, jsonGroup);
|
||||
|
||||
List<string> TestStatic_GetDirectoryInfoCollection(IAAConfiguration aAConfiguration, string sourceDirectory, string dateGroupDirectory, string contentDescription, string singletonDescription, string collectionDescription, bool converted) =>
|
||||
List<string> TestStatic_GetDirectoryInfoCollection(IMetadataConfiguration aAConfiguration, string sourceDirectory, string dateGroupDirectory, string contentDescription, string singletonDescription, string collectionDescription, bool converted) =>
|
||||
GetDirectoryInfoCollection(aAConfiguration, sourceDirectory, dateGroupDirectory, contentDescription, singletonDescription, collectionDescription, converted);
|
||||
static List<string> GetDirectoryInfoCollection(IAAConfiguration aAConfiguration, string sourceDirectory, string dateGroupDirectory, string contentDescription, string singletonDescription, string collectionDescription, bool converted) =>
|
||||
static List<string> GetDirectoryInfoCollection(IMetadataConfiguration aAConfiguration, string sourceDirectory, string dateGroupDirectory, string contentDescription, string singletonDescription, string collectionDescription, bool converted) =>
|
||||
XResult.GetDirectoryInfoCollection(aAConfiguration, sourceDirectory, dateGroupDirectory, contentDescription, singletonDescription, collectionDescription, converted);
|
||||
|
||||
string TestStatic_GetResultsFullGroupDirectory(IAAConfiguration aAConfiguration, string description, string outputResolution, bool includeResizeGroup, bool includeModel, bool includePredictorModel) =>
|
||||
string TestStatic_GetResultsFullGroupDirectory(IMetadataConfiguration aAConfiguration, string description, string outputResolution, bool includeResizeGroup, bool includeModel, bool includePredictorModel) =>
|
||||
GetResultsFullGroupDirectory(aAConfiguration, description, outputResolution, includeResizeGroup, includeModel, includePredictorModel);
|
||||
static string GetResultsFullGroupDirectory(IAAConfiguration aAConfiguration, string description, string outputResolution, bool includeResizeGroup, bool includeModel, bool includePredictorModel) =>
|
||||
static string GetResultsFullGroupDirectory(IMetadataConfiguration aAConfiguration, string description, string outputResolution, bool includeResizeGroup, bool includeModel, bool includePredictorModel) =>
|
||||
XResult.GetResultsFullGroupDirectory(aAConfiguration, description, outputResolution, includeResizeGroup, includeModel, includePredictorModel);
|
||||
|
||||
List<string> TestStatic_GetDirectoryInfoCollection(IAAConfiguration aAConfiguration, string sourceDirectory, string description, string outputResolution, bool includeResizeGroup, bool includeModel, bool includePredictorModel, string contentDescription, string singletonDescription, string collectionDescription) =>
|
||||
List<string> TestStatic_GetDirectoryInfoCollection(IMetadataConfiguration aAConfiguration, string sourceDirectory, string description, string outputResolution, bool includeResizeGroup, bool includeModel, bool includePredictorModel, string contentDescription, string singletonDescription, string collectionDescription) =>
|
||||
GetDirectoryInfoCollection(aAConfiguration, sourceDirectory, description, outputResolution, includeResizeGroup, includeModel, includePredictorModel, contentDescription, singletonDescription, collectionDescription);
|
||||
static List<string> GetDirectoryInfoCollection(IAAConfiguration aAConfiguration, string sourceDirectory, string description, string outputResolution, bool includeResizeGroup, bool includeModel, bool includePredictorModel, string contentDescription, string singletonDescription, string collectionDescription) =>
|
||||
static List<string> GetDirectoryInfoCollection(IMetadataConfiguration aAConfiguration, string sourceDirectory, string description, string outputResolution, bool includeResizeGroup, bool includeModel, bool includePredictorModel, string contentDescription, string singletonDescription, string collectionDescription) =>
|
||||
XResult.GetDirectoryInfoCollection(aAConfiguration, sourceDirectory, description, outputResolution, includeResizeGroup, includeModel, includePredictorModel, contentDescription, singletonDescription, collectionDescription);
|
||||
|
||||
}
|
@ -283,7 +283,7 @@ internal abstract class XPath
|
||||
return (result, converted);
|
||||
}
|
||||
|
||||
internal static Dictionary<string, string[]> GetKeyValuePairs(IAAConfiguration aAConfiguration, string? resultsFullGroupDirectory, string[]? directories)
|
||||
internal static Dictionary<string, string[]> GetKeyValuePairs(IMetadataConfiguration aAConfiguration, string? resultsFullGroupDirectory, string[]? directories)
|
||||
{
|
||||
Dictionary<string, string[]> results = [];
|
||||
string directory;
|
||||
|
@ -5,7 +5,7 @@ namespace View_by_Distance.Shared.Models.Stateless;
|
||||
internal abstract class XResult
|
||||
{
|
||||
|
||||
internal static string GetResultsDateGroupDirectory(IAAConfiguration aAConfiguration, string description, string jsonGroup)
|
||||
internal static string GetResultsDateGroupDirectory(IMetadataConfiguration aAConfiguration, string description, string jsonGroup)
|
||||
{
|
||||
string result = Path.Combine(GetResultsDateGroupDirectory(aAConfiguration, description), jsonGroup);
|
||||
if (!Directory.Exists(result))
|
||||
@ -13,7 +13,7 @@ internal abstract class XResult
|
||||
return result;
|
||||
}
|
||||
|
||||
internal static string GetResultsDateGroupDirectory(IAAConfiguration aAConfiguration, string description)
|
||||
internal static string GetResultsDateGroupDirectory(IMetadataConfiguration aAConfiguration, string description)
|
||||
{
|
||||
string result = Path.Combine(GetResultsGroupDirectory(aAConfiguration, description, create: true), aAConfiguration.DateGroup);
|
||||
if (!Directory.Exists(result))
|
||||
@ -21,13 +21,13 @@ internal abstract class XResult
|
||||
return result;
|
||||
}
|
||||
|
||||
internal static string GetRelativePath(IAAConfiguration aAConfiguration, string path)
|
||||
internal static string GetRelativePath(IMetadataConfiguration aAConfiguration, string path)
|
||||
{
|
||||
string result = Methods.IPath.GetRelativePath(path, aAConfiguration.RootDirectory.Length);
|
||||
return result;
|
||||
}
|
||||
|
||||
private static void CheckContent(IAAConfiguration aAConfiguration, string dateGroupDirectory, string contentDescription, string result)
|
||||
private static void CheckContent(IMetadataConfiguration aAConfiguration, string dateGroupDirectory, string contentDescription, string result)
|
||||
{
|
||||
string checkDirectory;
|
||||
checkDirectory = Path.Combine(dateGroupDirectory, aAConfiguration.ResultContent, aAConfiguration.ResultAllInOne);
|
||||
@ -41,7 +41,7 @@ internal abstract class XResult
|
||||
_ = Directory.CreateDirectory(checkDirectory);
|
||||
}
|
||||
|
||||
private static void CheckSingleton(IAAConfiguration aAConfiguration, string dateGroupDirectory, string singletonDescription, bool converted, string result)
|
||||
private static void CheckSingleton(IMetadataConfiguration aAConfiguration, string dateGroupDirectory, string singletonDescription, bool converted, string result)
|
||||
{
|
||||
string checkDirectory;
|
||||
checkDirectory = Path.Combine(dateGroupDirectory, aAConfiguration.ResultSingleton, aAConfiguration.ResultAllInOne);
|
||||
@ -58,7 +58,7 @@ internal abstract class XResult
|
||||
_ = Directory.CreateDirectory(checkDirectory);
|
||||
}
|
||||
|
||||
private static void CheckCollection(IAAConfiguration aAConfiguration, string dateGroupDirectory, string collectionDescription, bool converted, string result)
|
||||
private static void CheckCollection(IMetadataConfiguration aAConfiguration, string dateGroupDirectory, string collectionDescription, bool converted, string result)
|
||||
{
|
||||
string checkDirectory = Path.Combine(dateGroupDirectory, aAConfiguration.ResultCollection, aAConfiguration.ResultAllInOne);
|
||||
if (!Directory.Exists(checkDirectory))
|
||||
@ -74,7 +74,7 @@ internal abstract class XResult
|
||||
_ = Directory.CreateDirectory(checkDirectory);
|
||||
}
|
||||
|
||||
internal static string GetResultsFullGroupDirectory(IAAConfiguration aAConfiguration, string description, string outputResolution, bool includeResizeGroup, bool includeModel, bool includePredictorModel)
|
||||
internal static string GetResultsFullGroupDirectory(IMetadataConfiguration aAConfiguration, string description, string outputResolution, bool includeResizeGroup, bool includeModel, bool includePredictorModel)
|
||||
{
|
||||
string result = GetResultsDateGroupDirectory(aAConfiguration, description);
|
||||
if (includeResizeGroup)
|
||||
@ -103,7 +103,7 @@ internal abstract class XResult
|
||||
return result;
|
||||
}
|
||||
|
||||
internal static List<string> GetDirectoryInfoCollection(IAAConfiguration aAConfiguration, string sourceDirectory, string dateGroupDirectory, string contentDescription, string singletonDescription, string collectionDescription, bool converted)
|
||||
internal static List<string> GetDirectoryInfoCollection(IMetadataConfiguration aAConfiguration, string sourceDirectory, string dateGroupDirectory, string contentDescription, string singletonDescription, string collectionDescription, bool converted)
|
||||
{
|
||||
List<string> results = [];
|
||||
string sourceDirectorySegment = GetRelativePath(aAConfiguration, sourceDirectory);
|
||||
@ -118,7 +118,7 @@ internal abstract class XResult
|
||||
return results;
|
||||
}
|
||||
|
||||
internal static string GetResultsGroupDirectory(IAAConfiguration aAConfiguration, string description, bool create)
|
||||
internal static string GetResultsGroupDirectory(IMetadataConfiguration aAConfiguration, string description, bool create)
|
||||
{
|
||||
string result = Path.Combine($"{aAConfiguration.RootDirectory}-Results", description.Replace('_', ')'));
|
||||
if (create && !Directory.Exists(result))
|
||||
@ -126,7 +126,7 @@ internal abstract class XResult
|
||||
return result;
|
||||
}
|
||||
|
||||
internal static List<string> GetDirectoryInfoCollection(IAAConfiguration aAConfiguration, string sourceDirectory, string description, string outputResolution, bool includeResizeGroup, bool includeModel, bool includePredictorModel, string contentDescription, string singletonDescription, string collectionDescription)
|
||||
internal static List<string> GetDirectoryInfoCollection(IMetadataConfiguration aAConfiguration, string sourceDirectory, string description, string outputResolution, bool includeResizeGroup, bool includeModel, bool includePredictorModel, string contentDescription, string singletonDescription, string collectionDescription)
|
||||
{
|
||||
List<string> results;
|
||||
bool converted = false;
|
||||
|
Reference in New Issue
Block a user