/// <summary> /// <inheritdoc cref="TransportConfiguration"/> /// </summary> /// <param name="connectionPool"><inheritdoc cref="IConnectionPool"/></param> /// <param name="connection"><inheritdoc cref="IConnection"/></param> /// <param name="requestResponseSerializer"><inheritdoc cref="ITransportSerializer"/></param> /// <param name="productRegistration"><inheritdoc cref="IProductRegistration"/></param> protected TransportConfigurationBase(IConnectionPool connectionPool, IConnection connection, ITransportSerializer requestResponseSerializer, IProductRegistration productRegistration) { _connectionPool = connectionPool; _connection = connection ?? new HttpConnection(); _productRegistration = productRegistration ?? ProductRegistration.Default; var serializer = requestResponseSerializer ?? new LowLevelRequestResponseSerializer(); UseThisRequestResponseSerializer = new DiagnosticsSerializerProxy(serializer); _connectionLimit = TransportConfiguration.DefaultConnectionLimit; _requestTimeout = TransportConfiguration.DefaultTimeout; _dnsRefreshTimeout = TransportConfiguration.DefaultDnsRefreshTimeout; _memoryStreamFactory = TransportConfiguration.DefaultMemoryStreamFactory; _sniffOnConnectionFault = true; _sniffOnStartup = true; _sniffLifeSpan = TimeSpan.FromHours(1); _urlFormatter = new UrlFormatter(this); _statusCodeToResponseSuccess = (m, i) => _productRegistration.HttpStatusCodeClassifier(m, i); _userAgent = Elastic.Transport.UserAgent.Create(_productRegistration.Name, _productRegistration.GetType()); if (connectionPool is CloudConnectionPool cloudPool) { _authenticationHeader = cloudPool.AuthenticationHeader; _enableHttpCompression = true; } }
/// <inheritdoc cref="IRequestPipeline"/> public RequestPipeline( TConfiguration configurationValues, IDateTimeProvider dateTimeProvider, IMemoryStreamFactory memoryStreamFactory, IRequestParameters requestParameters ) { _settings = configurationValues; _connectionPool = _settings.ConnectionPool; _connection = _settings.Connection; _dateTimeProvider = dateTimeProvider; _memoryStreamFactory = memoryStreamFactory; _productRegistration = configurationValues.ProductRegistration; _nodePredicate = _settings.NodePredicate ?? _productRegistration.NodePredicate; RequestConfiguration = requestParameters?.RequestConfiguration; PingRequestConfiguration = new RequestConfiguration { PingTimeout = PingTimeout, RequestTimeout = PingTimeout, AuthenticationHeader = _settings.AuthenticationHeader, EnableHttpPipelining = RequestConfiguration?.EnableHttpPipelining ?? _settings.HttpPipeliningEnabled, ForceNode = RequestConfiguration?.ForceNode }; StartedOn = dateTimeProvider.Now(); }
/// <summary> <inheritdoc cref="TransportConfiguration"/></summary> /// <param name="connectionPool"><inheritdoc cref="IConnectionPool"/></param> /// <param name="connection"><inheritdoc cref="IConnection"/></param> /// <param name="serializer"><inheritdoc cref="ITransportSerializer"/></param> /// <param name="productRegistration"><inheritdoc cref="IProductRegistration"/></param> public TransportConfiguration( IConnectionPool connectionPool, IConnection connection = null, ITransportSerializer serializer = null, IProductRegistration productRegistration = null) : base(connectionPool, connection, serializer, productRegistration) { }
public ProductImprovementController( ApplicationConfigurationService applicationConfigurationService, IProductRegistration productRegistration, AdminAppUserContext userContext) { _applicationConfigurationService = applicationConfigurationService; _productRegistration = productRegistration; _userContext = userContext; }
public MyClientConfiguration( IConnectionPool connectionPool = null, IConnection connection = null, ITransportSerializer requestResponseSerializer = null, IProductRegistration productRegistration = null) : base( connectionPool ?? new SingleNodeConnectionPool(new Uri("http://default-endpoint.example")) , connection, requestResponseSerializer, productRegistration) { }
public IdentityController(ApplicationConfigurationService applicationConfiguration, RegisterCommand registerCommand, EditUserRoleCommand editUserRoleCommand, IGetOdsInstanceRegistrationsQuery getOdsInstanceRegistrationsQuery, SignInManager <AdminAppUser> signInManager, UserManager <AdminAppUser> userManager, IProductRegistration productRegistration, AdminAppIdentityDbContext identity) { _applicationConfiguration = applicationConfiguration; _registerCommand = registerCommand; _editUserRoleCommand = editUserRoleCommand; _getOdsInstanceRegistrationsQuery = getOdsInstanceRegistrationsQuery; _signInManager = signInManager; _userManager = userManager; _productRegistration = productRegistration; _identity = identity; }
/// <summary> /// Transport coordinates the client requests over the connection pool nodes and is in charge of falling over on different nodes /// </summary> /// <param name="configurationValues">The connection settings to use for this transport</param> /// <param name="pipelineProvider">In charge of create a new pipeline, safe to pass null to use the default</param> /// <param name="dateTimeProvider">The date time proved to use, safe to pass null to use the default</param> /// <param name="memoryStreamFactory">The memory stream provider to use, safe to pass null to use the default</param> public Transport( TConnectionSettings configurationValues, IRequestPipelineFactory pipelineProvider, IDateTimeProvider dateTimeProvider, IMemoryStreamFactory memoryStreamFactory ) { configurationValues.ThrowIfNull(nameof(configurationValues)); configurationValues.ConnectionPool.ThrowIfNull(nameof(configurationValues.ConnectionPool)); configurationValues.Connection.ThrowIfNull(nameof(configurationValues.Connection)); configurationValues.RequestResponseSerializer.ThrowIfNull(nameof(configurationValues.RequestResponseSerializer)); _productRegistration = configurationValues.ProductRegistration; Settings = configurationValues; PipelineProvider = pipelineProvider ?? new RequestPipelineFactory(); DateTimeProvider = dateTimeProvider ?? Elastic.Transport.DateTimeProvider.Default; MemoryStreamFactory = memoryStreamFactory ?? configurationValues.MemoryStreamFactory; }
/// <summary> /// Sets up the client to communicate to Elastic Cloud using <paramref name="cloudId"/>, /// <para><see cref="CloudConnectionPool"/> documentation for more information on how to obtain your Cloud Id</para> /// </summary> public TransportConfiguration(string cloudId, Base64ApiKey credentials, IProductRegistration productRegistration = null) : this(new CloudConnectionPool(cloudId, credentials), productRegistration : productRegistration) { }
public TransportConfiguration(Uri uri = null, IProductRegistration productRegistration = null) : this(new SingleNodeConnectionPool(uri ?? new Uri("http://localhost:9200")), productRegistration : productRegistration) { }
protected ConnectionConfigurationBase(IConnectionPool connectionPool, IConnection connection, ITransportSerializer serializer, IProductRegistration registration = null) : base(connectionPool, connection, serializer, registration ?? ElasticsearchProductRegistration.Default) =>