public static IServiceCollection AddSolidHttpDeserializer(this IServiceCollection services, IResponseDeserializerFactory factory, string mimeType, params string[] more) { services.AddSingleton <IDeserializer>(new Deserializer(mimeType, factory)); foreach (var mime in more) { services.AddSingleton <IDeserializer>(new Deserializer(mime, factory)); } return(services); }
/// <summary> /// Adds a deserializer factory used to deserialize the specified mime types /// </summary> /// <param name="builder">The extended ISolidHttpBuilder</param> /// <param name="factory">The deserializer factory instance</param> /// <param name="mimeType">The mime type to deserialize</param> /// <param name="more">More mime types</param> /// <returns>ISolidHttpBuilder</returns> public static ISolidHttpCoreBuilder AddDeserializer(this ISolidHttpCoreBuilder builder, IResponseDeserializerFactory factory, string mimeType, params string[] more) { builder.Services.AddSingleton <IDeserializer>(new Deserializer(mimeType, factory)); foreach (var mime in more) { builder.Services.AddSingleton <IDeserializer>(new Deserializer(mime, factory)); } return(builder); }
public ApiClient(HttpClient client, Uri baseUri, IResponseDeserializerFactory deserializer) { this.deserializer = deserializer ?? throw new ArgumentNullException(nameof(deserializer)); this.baseUri = baseUri ?? throw new ArgumentNullException(nameof(baseUri)); this.client = client ?? throw new ArgumentNullException(nameof(client)); }
/// <summary> /// Adds a deserializer factory used to deserialize the specified mime types /// </summary> /// <param name="builder">The extended ISolidHttpBuilder</param> /// <param name="factory">The deserializer factory instance</param> /// <param name="mimeType">The mime type to deserialize</param> /// <param name="more">More mime types</param> /// <returns>ISolidHttpBuilder</returns> public static ISolidHttpBuilder AddDeserializer(this ISolidHttpBuilder builder, IResponseDeserializerFactory factory, string mimeType, params string[] more) { builder.Core.AddDeserializer(factory, mimeType, more); return(builder); }