protected TransportConfigurationDescriptorBase()

in src/Elastic.Transport/Configuration/TransportConfigurationDescriptor.cs [113:182]


	protected TransportConfigurationDescriptorBase(ITransportConfiguration config)
	{
#if NET
		ArgumentNullException.ThrowIfNull(config);
#else
		if (config is null)
			throw new ArgumentNullException(nameof(config));
#endif

		// it's important url formatter is repointed to the new instance of ITransportConfiguration
		_urlFormatter = new UrlFormatter(this);

		_accept = config.Accept;
		_allowedStatusCodes = config.AllowedStatusCodes;
		_authentication = config.Authentication;
		_bootstrapLock = config.BootstrapLock;
		_certificateFingerprint = config.CertificateFingerprint;
		_clientCertificates = config.ClientCertificates;
		_connectionLimit = config.ConnectionLimit;
		_contentType = config.ContentType;
		_dateTimeProvider = config.DateTimeProvider;
		_deadTimeout = config.DeadTimeout;
		_disableAuditTrail = config.DisableAuditTrail;
		_disableAutomaticProxyDetection = config.DisableAutomaticProxyDetection;
		_disableDirectStreaming = config.DisableDirectStreaming;
		_disableMetaHeader = config.DisableMetaHeader;
		_disablePings = config.DisablePings;
		_disableSniff = config.DisableSniff;
		_dnsRefreshTimeout = config.DnsRefreshTimeout;
		_enableHttpCompression = config.EnableHttpCompression;
		_enableTcpStats = config.EnableTcpStats;
		_enableThreadPoolStats = config.EnableThreadPoolStats;
		_forceNode = config.ForceNode;
		_headers = config.Headers;
		_httpPipeliningEnabled = config.HttpPipeliningEnabled;
		_keepAliveInterval = config.KeepAliveInterval;
		_keepAliveTime = config.KeepAliveTime;
		_maxDeadTimeout = config.MaxDeadTimeout;
		_maxRetries = config.MaxRetries;
		_maxRetryTimeout = config.MaxRetryTimeout;
		_memoryStreamFactory = config.MemoryStreamFactory;
		_nodePool = config.NodePool;
		_nodePredicate = config.NodePredicate;
		_onRequestCompleted = config.OnRequestCompleted;
		_opaqueId = config.OpaqueId;
		_parseAllHeaders = config.ParseAllHeaders;
		_pingTimeout = config.PingTimeout;
		_pipelineProvider = config.PipelineProvider;
		_prettyJson = config.PrettyJson;
		_productRegistration = config.ProductRegistration;
		_proxyAddress = config.ProxyAddress;
		_proxyPassword = config.ProxyPassword;
		_proxyUsername = config.ProxyUsername;
		_queryStringParameters = config.QueryStringParameters;
		_requestInvoker = config.RequestInvoker;
		_requestMetaData = config.RequestMetaData;
		_requestResponseSerializer = config.RequestResponseSerializer;
		_requestTimeout = config.RequestTimeout;
		_responseHeadersToParse = config.ResponseHeadersToParse;
		_runAs = config.RunAs;
		_serverCertificateValidationCallback = config.ServerCertificateValidationCallback;
		_skipDeserializationForStatusCodes = config.SkipDeserializationForStatusCodes;
		_sniffInformationLifeSpan = config.SniffInformationLifeSpan;
		_sniffsOnConnectionFault = config.SniffsOnConnectionFault;
		_sniffsOnStartup = config.SniffsOnStartup;
		_statusCodeToResponseSuccess = config.StatusCodeToResponseSuccess;
		_throwExceptions = config.ThrowExceptions;
		_transferEncodingChunked = config.TransferEncodingChunked;
		_userAgent = config.UserAgent;
	}