/// <summary> /// Connects a new receive endpoint to the host, and creates a <see cref="IClientFactory" />. /// </summary> /// <param name="connector">The host to connect the new receive endpoint</param> /// <param name="timeout">The default request timeout</param> /// <returns></returns> public static Task <IClientFactory> ConnectClientFactory(this IReceiveConnector connector, RequestTimeout timeout = default) { var endpointDefinition = new TemporaryEndpointDefinition(); var receiveEndpointHandle = connector.ConnectReceiveEndpoint(endpointDefinition, KebabCaseEndpointNameFormatter.Instance); return(receiveEndpointHandle.CreateClientFactory(timeout)); }
/// <summary> /// Connect an endpoint for the host /// </summary> /// <param name="connector">The host to connect</param> /// <param name="configureEndpoint">The configuration callback</param> public static HostReceiveEndpointHandle ConnectReceiveEndpoint(this IReceiveConnector connector, Action <IReceiveEndpointConfigurator> configureEndpoint = null) { return(connector.ConnectReceiveEndpoint(new TemporaryEndpointDefinition(), null, configureEndpoint)); }
/// <summary> /// Connect a response endpoint for the host /// </summary> /// <param name="connector">The host to connect</param> /// <param name="endpointNameFormatter"></param> /// <param name="configureEndpoint">The configuration callback</param> public static HostReceiveEndpointHandle ConnectResponseEndpoint(this IReceiveConnector connector, IEndpointNameFormatter endpointNameFormatter = null, Action <IReceiveEndpointConfigurator> configureEndpoint = null) { return(connector.ConnectReceiveEndpoint(new ResponseEndpointDefinition(), endpointNameFormatter, configureEndpoint)); }