using System; using System.Collections.Generic; using System.IO; using System.Threading.Tasks; using Teknik.Configuration; using Teknik.Utilities; namespace Teknik.StorageService { public abstract class StorageService : IStorageService { protected readonly StorageConfig _config; public StorageService(StorageConfig config) { _config = config; } public abstract string GetUniqueFileName(); public abstract Stream GetFile(string fileName); public abstract List GetFileNames(); public abstract Task SaveFile(string fileName, Stream file); public abstract Task SaveEncryptedFile(string fileName, Stream file, PooledArray key, PooledArray iv); public abstract void DeleteFile(string fileName); } }