using DeepDrftContent.FileDatabase.Models;
namespace DeepDrftContent.FileDatabase.Services;
///
/// Factory for creating media vaults
///
public static class MediaVaultFactory
{
public static async Task From(string rootPath, MediaVaultType mediaType, IndexFactoryService? factoryService = null)
{
return mediaType switch
{
MediaVaultType.Media => await MediaFileVault.FromAsync(rootPath, factoryService),
MediaVaultType.Image => await ImageVault.FromAsync(rootPath, factoryService),
MediaVaultType.Audio => await AudioVault.FromAsync(rootPath, factoryService),
_ => null
};
}
}