using System.Drawing.Imaging; using System.Reflection; using System.Text; using View_by_Distance.Shared.Models; using View_by_Distance.Shared.Models.Methods; using View_by_Distance.Shared.Models.Properties; namespace View_by_Distance.Property.Models.Stateless; public interface IProperty { const string DateTimeFormat = "yyyy:MM:dd HH:mm:ss"; // public static (DateTime?, DateTime[], int?, string?) Get(bool populateId, IMetadata? metadata, FilePath filePath, bool isIgnoreExtension, bool isValidImageFormatExtension, ASCIIEncoding asciiEncoding) => Property.Get(populateId, metadata, filePath, isIgnoreExtension, isValidImageFormatExtension, asciiEncoding); // public static (DateTime?, DateTime[], int?, string?) Get(IPropertyConfiguration propertyConfiguration, bool populateId, FileHolder fileHolder, bool isIgnoreExtension, bool isValidImageFormatExtension, ASCIIEncoding asciiEncoding) => Property.Get(populateId, null, FilePath.Get(propertyConfiguration, fileHolder, index: null), isIgnoreExtension, isValidImageFormatExtension, asciiEncoding); public static byte[] GetBytes(string value) => Property.GetBytes(value); public static DateTime? GetDateTime(string dateTimeFormat, string? value) => Property.GetDateTime(dateTimeFormat, value); public static double GetStandardDeviation(List values, double average) => Property.GetStandardDeviation(values, average); public static bool Any(Container.Models.Container[] propertyHolderCollections) => Property.Any(propertyHolderCollections); public static TimeSpan GetThreeStandardDeviationHigh(int minimum, Container.Models.Container container) => Property.GetThreeStandardDeviationHigh(minimum, container); public static PropertyItem GetPropertyItem(ConstructorInfo constructorInfo, int id, short type, string value) => Property.GetPropertyItem(constructorInfo, id, type, value); public static (int, List, List) Get(Container.Models.Container container, TimeSpan threeStandardDeviationHigh, int i) => Property.Get(container, threeStandardDeviationHigh, i); public static (DateTime?, DateTime[], int?, string?) Get(bool populateId, FilePath filePath, bool isIgnoreExtension, bool isValidImageFormatExtension, ASCIIEncoding asciiEncoding) => Property.Get(populateId, null, filePath, isIgnoreExtension, isValidImageFormatExtension, asciiEncoding); public static (DateTime?, DateTime[], int?, string?) Get(IPropertyConfiguration propertyConfiguration, bool populateId, IMetadata? metadata, FileHolder fileHolder, bool isIgnoreExtension, bool isValidImageFormatExtension, ASCIIEncoding asciiEncoding) => Property.Get(populateId, metadata, FilePath.Get(propertyConfiguration, fileHolder, index: null), isIgnoreExtension, isValidImageFormatExtension, asciiEncoding); public static (string?, DateTime[], Shared.Models.Property) GetProperty(bool populateId, IMetadata? metadata, FilePath filePath, Shared.Models.Property? property, bool isIgnoreExtension, bool isValidImageFormatExtension, int? id, ASCIIEncoding asciiEncoding) => Property.GetProperty(populateId, metadata, filePath, property, isIgnoreExtension, isValidImageFormatExtension, id, asciiEncoding); internal byte[] TestStatic_GetBytes(string value) => GetBytes(value); internal DateTime? TestStatic_GetDateTime(string dateTimeFormat, string? value) => GetDateTime(dateTimeFormat, value); internal double TestStatic_GetStandardDeviation(List values, double average) => GetStandardDeviation(values, average); internal bool TestStatic_Any(Container.Models.Container[] propertyHolderCollections) => Any(propertyHolderCollections); internal TimeSpan TestStatic_GetThreeStandardDeviationHigh(int minimum, Container.Models.Container container) => GetThreeStandardDeviationHigh(minimum, container); internal PropertyItem TestStatic_GetPropertyItem(ConstructorInfo constructorInfo, int id, short type, string value) => GetPropertyItem(constructorInfo, id, type, value); internal (int, List, List) TestStatic_Get(Container.Models.Container container, TimeSpan threeStandardDeviationHigh, int i) => Get(container, threeStandardDeviationHigh, i); internal (DateTime?, DateTime[], int?, string?) TestStatic_Get(bool populateId, FilePath filePath, bool isIgnoreExtension, bool isValidImageFormatExtension, ASCIIEncoding asciiEncoding) => Get(populateId, filePath, isIgnoreExtension, isValidImageFormatExtension, asciiEncoding); internal (DateTime?, DateTime[], int?, string?) TestStatic_Get(IPropertyConfiguration propertyConfiguration, bool populateId, FileHolder fileHolder, bool isIgnoreExtension, bool isValidImageFormatExtension, ASCIIEncoding asciiEncoding) => Get(propertyConfiguration, populateId, fileHolder, isIgnoreExtension, isValidImageFormatExtension, asciiEncoding); internal (DateTime?, DateTime[], int?, string?) TestStatic_Get(bool populateId, IMetadata? metadata, FilePath filePath, bool isIgnoreExtension, bool isValidImageFormatExtension, ASCIIEncoding asciiEncoding) => Get(populateId, metadata, filePath, isIgnoreExtension, isValidImageFormatExtension, asciiEncoding); internal (DateTime?, DateTime[], int?, string?) TestStatic_Get(IPropertyConfiguration propertyConfiguration, bool populateId, IMetadata? metadata, FileHolder fileHolder, bool isIgnoreExtension, bool isValidImageFormatExtension, ASCIIEncoding asciiEncoding) => Get(propertyConfiguration, populateId, metadata, fileHolder, isIgnoreExtension, isValidImageFormatExtension, asciiEncoding); internal (string?, DateTime[], Shared.Models.Property) TestStatic_GetProperty(bool populateId, IMetadata? metadata, FilePath filePath, Shared.Models.Property? property, bool isIgnoreExtension, bool isValidImageFormatExtension, int? id, ASCIIEncoding asciiEncoding) => GetProperty(populateId, metadata, filePath, property, isIgnoreExtension, isValidImageFormatExtension, id, asciiEncoding); }