public static string ResolvedConnectionString(this ICosmosPathFinderOption option) { var properties = new[] { new KeyValuePair <string, string>(nameof(option.AccountKey), option.AccountKey), new KeyValuePair <string, string>(nameof(option.DatabaseName), option.DatabaseName), }; return(new PropertyResolver(properties).Resolve(option.ConnectionString)); }
public StoreContainer(ICosmosPathFinderOption storeOption, CosmosClient cosmosClient, ILoggerFactory loggerFactory, ILogger <StoreContainer> logger) { storeOption.VerifyNotNull(nameof(storeOption)).Verify(); cosmosClient.VerifyNotNull(nameof(cosmosClient)); loggerFactory.VerifyNotNull(nameof(loggerFactory)); logger.VerifyNotNull(nameof(logger)); _storeOption = storeOption; _cosmosClient = cosmosClient; _loggerFactory = loggerFactory; _logger = logger; }
public CosmosPathFinderStore(ICosmosPathFinderOption storeOption, ILoggerFactory loggerFactory) { storeOption.VerifyNotNull(nameof(storeOption)).Verify(); loggerFactory.VerifyNotNull(nameof(loggerFactory)); _storeOption = storeOption; _logger = loggerFactory.CreateLogger <CosmosPathFinderStore>(); _cosmosClient = new CosmosClient(storeOption.ResolvedConnectionString()); Database = new StoreDatabase(_cosmosClient, loggerFactory.CreateLogger <StoreDatabase>()); Container = new StoreContainer(storeOption, _cosmosClient, loggerFactory, loggerFactory.CreateLogger <StoreContainer>()); }
public static void Verify(this ICosmosPathFinderOption option) { option.ConnectionString.VerifyNotEmpty(nameof(option.ConnectionString)); option.AccountKey.VerifyNotEmpty(nameof(option.AccountKey)); option.DatabaseName.VerifyNotEmpty(nameof(option.DatabaseName)); }