41 lines
2.2 KiB
C#
41 lines
2.2 KiB
C#
using View_by_Distance.Shared.Models.Properties;
|
|
|
|
namespace View_by_Distance.Shared.Models.Stateless.Methods;
|
|
|
|
public interface IId
|
|
{
|
|
|
|
bool TestStatic_NameWithoutExtensionIsIdFormat(string fileNameWithoutExtension) =>
|
|
NameWithoutExtensionIsIdFormat(fileNameWithoutExtension);
|
|
static bool NameWithoutExtensionIsIdFormat(string fileNameWithoutExtension) =>
|
|
Id.NameWithoutExtensionIsIdFormat(fileNameWithoutExtension);
|
|
|
|
bool TestStatic_NameWithoutExtensionIsIdFormat(FileHolder fileHolder) =>
|
|
NameWithoutExtensionIsIdFormat(fileHolder);
|
|
static bool NameWithoutExtensionIsIdFormat(FileHolder fileHolder) =>
|
|
NameWithoutExtensionIsIdFormat(fileHolder.NameWithoutExtension);
|
|
|
|
string TestStatic_GetPaddedId(int intMinValueLength, int index, int id) =>
|
|
GetPaddedId(intMinValueLength, index, id);
|
|
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, short sortOrderOnlyLengthIndex) =>
|
|
NameWithoutExtensionIsPaddedIdFormat(fileNameWithoutExtension, sortOrderOnlyLengthIndex);
|
|
static bool NameWithoutExtensionIsPaddedIdFormat(string fileNameWithoutExtension, short sortOrderOnlyLengthIndex) =>
|
|
fileNameWithoutExtension.Length > sortOrderOnlyLengthIndex
|
|
&& fileNameWithoutExtension[sortOrderOnlyLengthIndex] == '0'
|
|
&& fileNameWithoutExtension[sortOrderOnlyLengthIndex - 3] == '0'
|
|
&& fileNameWithoutExtension.All(l => char.IsNumber(l));
|
|
|
|
short TestStatic_GetSortOrderOnlyLengthIndex(int offset) =>
|
|
GetSortOrderOnlyLengthIndex(offset);
|
|
static short GetSortOrderOnlyLengthIndex(int offset) =>
|
|
(short)(offset.ToString().Length + 3);
|
|
|
|
NameWithoutExtension TestStatic_GetNameWithoutExtension(IMetadataConfiguration configuration, string file) =>
|
|
GetNameWithoutExtension(configuration, file);
|
|
static NameWithoutExtension GetNameWithoutExtension(IMetadataConfiguration configuration, string file) =>
|
|
Id.GetNameWithoutExtension(configuration, file);
|
|
|
|
} |