public ObservationRecordingManager(IValueAggregator valueAggregator, IEnumerable<IValueRecordingTrigger> triggers, IValueRecorder recorder, TimeSpan? minTimeBetweenRecordings = null) { ValueRecorder = recorder; RecordingTriggers = new Collection<IValueRecordingTrigger>(triggers.ToList()); ValueAggregator = valueAggregator; m_minTimeBetweenRecording = minTimeBetweenRecordings ?? TimeSpan.Zero; }
public ClusterNode(ClusterContext context, IConnectionPoolFactory connectionPoolFactory, ILogger <ClusterNode> logger, ObjectPool <OperationBuilder> operationBuilderPool, ICircuitBreaker circuitBreaker, ISaslMechanismFactory saslMechanismFactory, IRedactor redactor, IPEndPoint endPoint, BucketType bucketType, NodeAdapter nodeAdapter, IRequestTracer tracer, IValueRecorder valueRecorder) { _context = context ?? throw new ArgumentNullException(nameof(context)); _logger = logger ?? throw new ArgumentNullException(nameof(logger)); _circuitBreaker = circuitBreaker ?? throw new ArgumentException(nameof(circuitBreaker)); _operationBuilderPool = operationBuilderPool ?? throw new ArgumentNullException(nameof(operationBuilderPool)); _saslMechanismFactory = saslMechanismFactory ?? throw new ArgumentException(nameof(saslMechanismFactory)); _redactor = redactor ?? throw new ArgumentNullException(nameof(redactor)); _tracer = tracer; BucketType = bucketType; EndPoint = endPoint ?? throw new ArgumentNullException(nameof(endPoint)); _valueRecorder = valueRecorder ?? throw new ArgumentNullException(nameof(valueRecorder)); _cachedToString = $"{EndPoint}-{_id}"; KeyEndPoints = new ReadOnlyObservableCollection <IPEndPoint>(_keyEndPoints); UpdateKeyEndPoints(); ((INotifyCollectionChanged)_keyEndPoints).CollectionChanged += (_, e) => OnKeyEndPointsChanged(e); if (connectionPoolFactory == null) { throw new ArgumentNullException(nameof(connectionPoolFactory)); } ConnectionPool = connectionPoolFactory.Create(this); if (nodeAdapter != null) { NodesAdapter = nodeAdapter; } }
public static AnalyticsRequest Create(string statement, IValueRecorder recorder, AnalyticsOptions options) { return(new(options.ReadonlyValue) { RetryStrategy = options.RetryStrategyValue ?? new BestEffortRetryStrategy(), Timeout = options.TimeoutValue !.Value, ClientContextId = options.ClientContextIdValue, Statement = statement, Token = options.Token, Options = options, Recorder = recorder });