/// <summary> /// Initialises a new instance of the <see cref="DocumentDbAccess"/> class for testing. /// </summary> /// <param name="dbConfig">The database config,</param> /// <param name="configManager">The document config manager.</param> /// <param name="documentClient">The document client.</param> /// <param name="dbService">The document db service.</param> /// <param name="queryPolicy">The document query policy.</param> /// <remarks> /// <para>This constructor should be used for internal testing only.</para> /// </remarks> internal DocumentDbAccess( DocumentDbConfig dbConfig, ServiceDbConfigManager configManager, IDocumentClient documentClient, IDocumentDbService dbService, IDocumentQueryPolicy queryPolicy) { if (dbConfig == null) { throw new ArgumentNullException(nameof(dbConfig)); } if (configManager == null) { throw new ArgumentNullException(nameof(configManager)); } if (documentClient == null) { throw new ArgumentNullException(nameof(documentClient)); } if (dbService == null) { throw new ArgumentNullException(nameof(dbService)); } if (queryPolicy == null) { throw new ArgumentNullException(nameof(queryPolicy)); } _dbConfig = dbConfig; _configManager = configManager; _queryPolicy = queryPolicy; _client = documentClient; _dbService = dbService; }
/// <summary> /// Initialises a new instance of the <see cref="DocumentDbAccess"/> class. /// </summary> /// <param name="dbConfig">The database config.</param> /// <param name="configManager">The document config manager.</param> public DocumentDbAccess(DocumentDbConfig dbConfig, ServiceDbConfigManager configManager) { if (dbConfig == null) { throw new ArgumentNullException(nameof(dbConfig)); } if (configManager == null) { throw new ArgumentNullException(nameof(configManager)); } _dbConfig = dbConfig; _configManager = configManager; _queryPolicy = new DocumentQueryPolicy(); var dbService = new DocumentDbService(configManager, dbConfig); _dbService = dbService; _client = dbService.Client; }