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); FilePath TestStatic_GetFilePath(FilePath filePath, string file) => GetFilePath(filePath, file); static FilePath GetFilePath(FilePath filePath, string file) => Id.GetFilePath(filePath, file); FilePath TestStatic_GetFilePath(IMetadataConfiguration configuration, string file) => GetFilePath(configuration, file); static FilePath GetFilePath(IMetadataConfiguration configuration, string file) => Id.GetFilePath(configuration, file); int TestStatic_GetDeterministicHashCode(byte[] value) => GetDeterministicHashCode(value); static int GetDeterministicHashCode(byte[] value) => Id.GetDeterministicHashCode(value); }