/// <summary> /// The default (latest supported) dependency chain setup. /// </summary> /// <param name="configuration">InfluxDb client configuration.</param> protected virtual void BootstrapInfluxDbLatest(IInfluxDbClientConfiguration configuration) { _requestClient = new InfluxDbRequestClient(configuration); // NOTE: once a breaking change occures, QueryBuilders will need to be resolved with factories _serieQueryBuilder = new Lazy <ISerieQueryBuilder>(() => new SerieQueryBuilder(), true); _databaseQueryBuilder = new Lazy <IDatabaseQueryBuilder>(() => new DatabaseQueryBuilder(), true); _retentionQueryBuilder = new Lazy <IRetentionQueryBuilder>(() => new RetentionQueryBuilder(), true); _cqQueryBuilder = new Lazy <ICqQueryBuilder>(() => new CqQueryBuilder(), true); _diagnosticsQueryBuilder = new Lazy <IDiagnosticsQueryBuilder>(() => new DiagnosticsQueryBuilder(), true); _userQueryBuilder = new Lazy <IUserQueryBuilder>(() => new UserQueryBuilder(), true); // NOTE: once a breaking change occures, Parsers will need to be resolved with factories _basicResponseParser = new Lazy <IBasicResponseParser>(() => new BasicResponseParser(), true); _serieResponseParser = new Lazy <ISerieResponseParser>(() => new SerieResponseParser(), true); _databaseResponseParser = new Lazy <IDatabaseResponseParser>(() => new DatabaseResponseParser(), true); _retentionResponseParser = new Lazy <IRetentionResponseParser>(() => new RetentionResponseParser(), true); _cqResponseParser = new Lazy <ICqResponseParser>(() => new CqResponseParser(), true); _diagnosticsResponseParser = new Lazy <IDiagnosticsResponseParser>(() => new DiagnosticsResponseParser(), true); _userResponseParser = new Lazy <IUserResponseParser>(() => new UserResponseParser(), true); // NOTE: once a breaking change occures, ClientModules will need to be resolved with factories _basicClientModule = new Lazy <IBasicClientModule>(() => new BasicClientModule(_requestClient, _basicResponseParser.Value)); var batchWriter = new Lazy <IBatchWriterFactory>(() => new BatchWriter(_basicClientModule.Value)); _serieClientModule = new Lazy <ISerieClientModule>(() => new SerieClientModule(_requestClient, _serieQueryBuilder.Value, _serieResponseParser.Value, batchWriter.Value)); _databaseClientModule = new Lazy <IDatabaseClientModule>(() => new DatabaseClientModule(_requestClient, _databaseQueryBuilder.Value, _databaseResponseParser.Value)); _retentionClientModule = new Lazy <IRetentionClientModule>(() => new RetentionClientModule(_requestClient, _retentionQueryBuilder.Value, _retentionResponseParser.Value)); _cqClientModule = new Lazy <ICqClientModule>(() => new CqClientModule(_requestClient, _cqQueryBuilder.Value, _cqResponseParser.Value)); _diagnosticsClientModule = new Lazy <IDiagnosticsClientModule>(() => new DiagnosticsClientModule(_requestClient, _diagnosticsQueryBuilder.Value, _diagnosticsResponseParser.Value)); _userClientModule = new Lazy <IUserClientModule>(() => new UserClientModule(_requestClient, _userQueryBuilder.Value, _userResponseParser.Value)); }
public InfluxDbClient(IInfluxDbClientConfiguration configuration) { var requestClientFactory = new InfluxDbClientBootstrap(configuration); var dependencies = requestClientFactory.GetClientDependencies(); _requestClient = dependencies.RequestClient; // NOTE: once a breaking change occures, QueryBuilders will need to be resolved with factories _serieQueryBuilder = new Lazy <ISerieQueryBuilder>(() => new SerieQueryBuilder(), true); _databaseQueryBuilder = new Lazy <IDatabaseQueryBuilder>(() => new DatabaseQueryBuilder(), true); _retentionQueryBuilder = new Lazy <IRetentionQueryBuilder>(() => new RetentionQueryBuilder(), true); _cqQueryBuilder = new Lazy <ICqQueryBuilder>(() => dependencies.CqQueryBuilder, true); _diagnosticsQueryBuilder = new Lazy <IDiagnosticsQueryBuilder>(() => new DiagnosticsQueryBuilder(), true); // NOTE: once a breaking change occures, Parsers will need to be resolved with factories _basicResponseParser = new Lazy <IBasicResponseParser>(() => new BasicResponseParser(), true); _serieResponseParser = new Lazy <ISerieResponseParser>(() => dependencies.SerieResponseParser, true); _databaseResponseParser = new Lazy <IDatabaseResponseParser>(() => new DatabaseResponseParser(), true); _retentionResponseParser = new Lazy <IRetentionResponseParser>(() => new RetentionResponseParser(), true); _cqResponseParser = new Lazy <ICqResponseParser>(() => new CqResponseParser(), true); _diagnosticsResponseParser = new Lazy <IDiagnosticsResponseParser>(() => new DiagnosticsParser(), true); // NOTE: once a breaking change occures, ClientModules will need to be resolved with factories _basicClientModule = new Lazy <IBasicClientModule>(() => new BasicClientModule(_requestClient, _basicResponseParser.Value)); _serieClientModule = new Lazy <ISerieClientModule>(() => new SerieClientModule(_requestClient, _serieQueryBuilder.Value, _serieResponseParser.Value)); _databaseClientModule = new Lazy <IDatabaseClientModule>(() => new DatabaseClientModule(_requestClient, _databaseQueryBuilder.Value, _databaseResponseParser.Value)); _retentionClientModule = new Lazy <IRetentionClientModule>(() => new RetentionClientModule(_requestClient, _retentionQueryBuilder.Value, _retentionResponseParser.Value)); _cqClientModule = new Lazy <ICqClientModule>(() => new CqClientModule(_requestClient, _cqQueryBuilder.Value, _cqResponseParser.Value)); _diagnosticsClientModule = new Lazy <IDiagnosticsClientModule>(() => new DiagnosticsClientModule(_requestClient, _diagnosticsQueryBuilder.Value, _diagnosticsResponseParser.Value)); }
/// <summary> /// InfluxDb client. /// </summary> /// <param name="configuration">InfluxDb client configuration.</param> public InfluxDbClient(IInfluxDbClientConfiguration configuration) { switch (configuration.InfluxVersion) { case InfluxDbVersion.Latest: case InfluxDbVersion.v_1_3: this.BootstrapInfluxDbLatest(configuration); break; case InfluxDbVersion.v_1_0_0: this.BootstrapInfluxDbLatest(configuration); this.BootstrapInfluxDb_v_1_0_0(configuration); break; case InfluxDbVersion.v_0_9_6: case InfluxDbVersion.v_0_9_5: this.BootstrapInfluxDbLatest(configuration); this.BootstrapInfluxDb_v_0_9_6(configuration); break; case InfluxDbVersion.v_0_9_2: this.BootstrapInfluxDbLatest(configuration); this.BootstrapInfluxDb_v_0_9_6(configuration); this.BootstrapInfluxDb_v_0_9_2(configuration); break; case InfluxDbVersion.v_0_8_x: throw new NotImplementedException("InfluxDB v0.8.x is not supported by InfluxData.Net library."); default: throw new ArgumentOutOfRangeException("influxDbClientConfiguration", String.Format("Unknown version {0}.", configuration.InfluxVersion)); } }
/// <summary> /// v0.9.6 and older dependency chain setup. /// </summary> /// <param name="configuration">InfluxDb client configuration.</param> protected virtual void BootstrapInfluxDb_v_0_9_6(IInfluxDbClientConfiguration configuration) { _requestClient = new InfluxDbRequestClient_v_0_9_6(configuration); _cqQueryBuilder = new Lazy <ICqQueryBuilder>(() => new CqQueryBuilder_v_0_9_6(), true); _serieResponseParser = new Lazy <ISerieResponseParser>(() => new SerieResponseParser_v_0_9_6(), true); _databaseClientModule = new Lazy <IDatabaseClientModule>(() => new DatabaseClientModule_v_0_9_6(_requestClient, _databaseQueryBuilder.Value, _databaseResponseParser.Value)); _cqClientModule = new Lazy <ICqClientModule>(() => new CqClientModule_v_0_9_6(_requestClient, _cqQueryBuilder.Value, _cqResponseParser.Value)); }
/// <summary> /// InfluxDb client. /// </summary> /// <param name="configuration">InfluxDb client configuration.</param> public InfluxDbClient(IInfluxDbClientConfiguration configuration) { switch (configuration.InfluxVersion) { case InfluxDbVersion.Latest: case InfluxDbVersion.v_1_3: this.BootstrapInfluxDbLatest(configuration); break; default: throw new NotImplementedException("InfluxDB Older Version is not supported by InfluxData.Net library."); } }
public InfluxDbClient(IInfluxDbClientConfiguration configuration) { var requestClientFactory = new RequestClientFactory(configuration); _requestClient = requestClientFactory.GetRequestClient(); // NOTE: once a breaking change occures, RequestModules will need to be resolved with factories _basicRequestModule = new Lazy<IBasicRequestModule>(() => new BasicRequestModule(_requestClient), true); _databaseRequestModule = new Lazy<IDatabaseRequestModule>(() => new DatabaseRequestModule(_requestClient), true); _retentionRequestModule = new Lazy<IRetentionRequestModule>(() => new RetentionRequestModule(_requestClient), true); _cqRequestModule = new Lazy<ICqRequestModule>(() => new CqRequestModule(_requestClient), true); // NOTE: once a breaking change occures, ClientModules will need to be resolved with factories _basicClientModule = new Lazy<IBasicClientModule>(() => new BasicClientModule(_requestClient, _basicRequestModule.Value)); _databaseClientModule = new Lazy<IDatabaseClientModule>(() => new DatabaseClientModule(_requestClient, _databaseRequestModule.Value)); _retentionClientModule = new Lazy<IRetentionClientModule>(() => new RetentionClientModule(_requestClient, _retentionRequestModule.Value)); _cqClientModule = new Lazy<ICqClientModule>(() => new CqClientModule(_requestClient, _cqRequestModule.Value)); }
public InfluxDbClient(IInfluxDbClientConfiguration configuration) { var requestClientFactory = new RequestClientFactory(configuration); _requestClient = requestClientFactory.GetRequestClient(); // NOTE: once a breaking change occures, RequestModules will need to be resolved with factories _basicRequestModule = new Lazy <IBasicRequestModule>(() => new BasicRequestModule(_requestClient), true); _databaseRequestModule = new Lazy <IDatabaseRequestModule>(() => new DatabaseRequestModule(_requestClient), true); _retentionRequestModule = new Lazy <IRetentionRequestModule>(() => new RetentionRequestModule(_requestClient), true); _cqRequestModule = new Lazy <ICqRequestModule>(() => new CqRequestModule(_requestClient), true); // NOTE: once a breaking change occures, ClientModules will need to be resolved with factories _basicClientModule = new Lazy <IBasicClientModule>(() => new BasicClientModule(_requestClient, _basicRequestModule.Value)); _databaseClientModule = new Lazy <IDatabaseClientModule>(() => new DatabaseClientModule(_requestClient, _databaseRequestModule.Value)); _retentionClientModule = new Lazy <IRetentionClientModule>(() => new RetentionClientModule(_requestClient, _retentionRequestModule.Value)); _cqClientModule = new Lazy <ICqClientModule>(() => new CqClientModule(_requestClient, _cqRequestModule.Value)); }
internal RequestClientFactory(IInfluxDbClientConfiguration configuration) { _configuration = configuration; }
public InfluxDbRequestClient(IInfluxDbClientConfiguration configuration) : base(configuration, "InfluxData.Net.InfluxDb") { }
public InfluxDbRequestClient_v_1_0_0(IInfluxDbClientConfiguration configuration) : base(configuration) { }
public InfluxDbRequestClient(IInfluxDbClientConfiguration configuration) : base(configuration, "Temporal.Net.InfluxDb") { _influxDbConfiguration = configuration; }
public InfluxDbRequestClient(IInfluxDbClientConfiguration configuration) : base(configuration.EndpointUri.AbsoluteUri, configuration.Username, configuration.Password, "InfluxData.Net.InfluxDb") { }
public InfluxDbClientBootstrap(IInfluxDbClientConfiguration configuration) { _configuration = configuration; }
public RequestClient(IInfluxDbClientConfiguration configuration) { _configuration = configuration; }
protected RequestClientBase(IInfluxDbClientConfiguration configuration, string userAgent) : this((IConfiguration)configuration, userAgent) { }
public RequestClient_v_0_9_2(IInfluxDbClientConfiguration configuration) : base(configuration) { }
protected RequestClientBase(IInfluxDbClientConfiguration configuration, string userAgent) : this(configuration.EndpointUri.AbsoluteUri, configuration.Username, configuration.Password, configuration.HttpClient, userAgent) { }
/// <summary> /// v0.9.2 and older dependency chain setup. /// </summary> /// <param name="configuration">InfluxDb client configuration.</param> protected virtual void BootstrapInfluxDb_v_0_9_2(IInfluxDbClientConfiguration configuration) { _requestClient = new InfluxDbRequestClient_v_0_9_2(configuration); }