Files
satellite-provider/SatelliteProvider.Common/Configs/StorageConfig.cs
T
2025-11-19 12:17:27 +01:00

23 lines
774 B
C#

namespace SatelliteProvider.Common.Configs;
public class StorageConfig
{
public string TilesDirectory { get; set; } = "/tiles";
public string ReadyDirectory { get; set; } = "/ready";
public string GetTileSubdirectoryPath(int zoomLevel, int tileX, int tileY)
{
var xBucket = tileX / 1000;
var yBucket = tileY / 1000;
return Path.Combine(TilesDirectory, zoomLevel.ToString(), xBucket.ToString(), yBucket.ToString());
}
public string GetTileFilePath(int zoomLevel, int tileX, int tileY, string timestamp)
{
var subdirectory = GetTileSubdirectoryPath(zoomLevel, tileX, tileY);
var fileName = $"tile_{zoomLevel}_{tileX}_{tileY}_{timestamp}.jpg";
return Path.Combine(subdirectory, fileName);
}
}