From 0fe9924f5b2ed68bf8f64965be6cfea3b945d669 Mon Sep 17 00:00:00 2001 From: Josh Creek Date: Mon, 30 Aug 2021 13:16:56 +0100 Subject: [PATCH] feat(*): Add all repositories to factory --- FileRepository/Factory.cs | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/FileRepository/Factory.cs b/FileRepository/Factory.cs index 1164919..5720c30 100644 --- a/FileRepository/Factory.cs +++ b/FileRepository/Factory.cs @@ -44,25 +44,30 @@ namespace FileRepository /// Initialise an implementation of IFileRepository based on a selected enum member. /// /// The type of repository to initialise, based on the enum member. + /// The configuration to initialise the repository. /// Returns an initialised repository. public static IFileRepository GetFileRepository(RepositoryType repositoryType, IConfiguration config) { switch (repositoryType) { - //case RepositoryType.Disk: - // return new DiskRepo() { }; + case RepositoryType.Disk: + throw new NotImplementedException(); + return new DiskRepository(config); - //case RepositoryType.MongoDb: - // break; + case RepositoryType.MongoDb: + throw new NotImplementedException(); + return new MongoDbRepository(config); - //case RepositoryType.S3: - // break; + case RepositoryType.S3: + throw new NotImplementedException(); + return new S3Repository(config); case RepositoryType.Sftp: return new SftpRepository(config); - //case RepositoryType.Sql: - // break; + case RepositoryType.Sql: + throw new NotImplementedException(); + return new SqlRepository(config); default: string repositoryName = Enum.GetName(typeof(RepositoryType), value: repositoryType);