public CassandraProvider(IConfiguration configuration, IKeyspaceNamingStrategy keyspaceNamingStrategy, ICassandraReplicationStrategy replicationStrategy, IInitializer initializer = null)
        {
            if (configuration is null)
            {
                throw new ArgumentNullException(nameof(configuration));
            }
            if (keyspaceNamingStrategy is null)
            {
                throw new ArgumentNullException(nameof(keyspaceNamingStrategy));
            }
            if (replicationStrategy is null)
            {
                throw new ArgumentNullException(nameof(replicationStrategy));
            }

            this.configuration          = configuration;
            this.keyspaceNamingStrategy = keyspaceNamingStrategy;
            this.replicationStrategy    = replicationStrategy;
            this.initializer            = initializer;
        }
示例#2
0
        public CassandraProvider(IOptionsMonitor <CassandraProviderOptions> optionsMonitor, IKeyspaceNamingStrategy keyspaceNamingStrategy, ICassandraReplicationStrategy replicationStrategy, ILogger <CassandraProvider> logger, IInitializer initializer = null)
        {
            if (optionsMonitor is null)
            {
                throw new ArgumentNullException(nameof(optionsMonitor));
            }
            if (keyspaceNamingStrategy is null)
            {
                throw new ArgumentNullException(nameof(keyspaceNamingStrategy));
            }
            if (replicationStrategy is null)
            {
                throw new ArgumentNullException(nameof(replicationStrategy));
            }

            this.options = optionsMonitor.CurrentValue;
            this.keyspaceNamingStrategy = keyspaceNamingStrategy;
            this.replicationStrategy    = replicationStrategy;
            this.initializer            = initializer;
            this.logger = logger;
        }