public static IClusterBuilderNext SocketOpts(this IClusterBuilderNext builder, ConnectionElement connection) { if (connection != null) { builder.SocketOpts( connection.SendBufferSize, connection.ReceiveBufferSize, connection.ConnectionTimeout, connection.SendTimeout, connection.ReceiveTimeout); } return(builder); }
public static IClusterBuilderNext SocketOpts(this IClusterBuilderNext services, int?sendBufferSize = null, int?receiveBufferSize = null, TimeSpan?connectionTimeout = null, TimeSpan?sendTimeout = null, TimeSpan?receiveTimeout = null) { services.Use.Service <Func <ISocket> >(() => () => { var retval = new AsyncSocket(); if (sendBufferSize != null) { retval.SendBufferSize = sendBufferSize.Value; } if (receiveBufferSize != null) { retval.ReceiveBufferSize = receiveBufferSize.Value; } if (connectionTimeout != null) { retval.ConnectionTimeout = connectionTimeout.Value; } if (sendTimeout != null) { retval.SendTimeout = sendTimeout.Value; } if (receiveTimeout != null) { retval.ReceiveTimeout = receiveTimeout.Value; } return(retval); }); return(services); }