/// <summary>
/// Creates a frozen copy of <paramref name="settings"/> with Unix domain sockets enabled.
/// </summary>
/// <param name="settings">MongoDB client settings.</param>
public static MongoClientSettings WithUnixDomainSockets(this MongoClientSettings settings)
{
if (settings == null)
{
throw new ArgumentNullException(nameof(settings));
}
var existingConfigurator = settings.ClusterConfigurator;
settings.ClusterConfigurator = clusterBuilder =>
{
clusterBuilder.EnableUnixDomainSockets();
existingConfigurator?.Invoke(clusterBuilder);
};
return(settings.FrozenCopy());
}