Initial commit carried over from private repo. This is V2.
This commit is contained in:
@ -0,0 +1,25 @@
|
||||
using MessengerApi.Configuration.Model.Persistence;
|
||||
using MessengerApi.Configuration.Model.Persistence.Base;
|
||||
using MessengerApi.Configuration.Sources.Environment;
|
||||
|
||||
namespace MessengerApi.Configuration.Parsers
|
||||
{
|
||||
public static class EnvironmentPersistenceConfigurationParser
|
||||
{
|
||||
public static PersistenceConfiguration Parse(IEnvironmentConfigurationSource config)
|
||||
{
|
||||
var type = PersistenceTypeParser.Parse(config.GetValue<string>(Constants.EnvironmentVariables.PERSISTENCE_TYPE));
|
||||
|
||||
if(type == Enums.PersistenceTypes.Sql)
|
||||
{
|
||||
return new SqlPersistenceConfiguration(config);
|
||||
}
|
||||
else if(type == Enums.PersistenceTypes.PostgreSql)
|
||||
{
|
||||
return new NpgPersistenceConfiguration(config);
|
||||
}
|
||||
|
||||
throw new InvalidOperationException("Unrecognized persistence type.");
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user