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);
 }
示例#2
0
 /// <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);
 }
示例#3
0
 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));
 }
示例#4
0
 /// <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);
 }