All Downloads are FREE. Search and download functionalities are using the official Maven repository.

csharp-netcore.IAsynchronousClient.mustache Maven / Gradle / Ivy

{{>partial_header}}

{{^supportsAsync}}/*{{/supportsAsync}}
using System;
using System.Threading.Tasks;

namespace {{packageName}}.Client
{
    /// 
    /// Contract for Asynchronous RESTful API interactions.
    /// 
    /// This interface allows consumers to provide a custom API accessor client.
    /// 
    public interface IAsynchronousClient
    {
        /// 
        /// Executes a non-blocking call to some  using the GET http verb.
        /// 
        /// The relative path to invoke.
        /// The request parameters to pass along to the client.
        /// Per-request configurable settings.
        /// The return type.
        /// A task eventually representing the response data, decorated with 
        Task> GetAsync(String path, RequestOptions options, IReadableConfiguration configuration = null);
        
        /// 
        /// Executes a non-blocking call to some  using the POST http verb.
        /// 
        /// The relative path to invoke.
        /// The request parameters to pass along to the client.
        /// Per-request configurable settings.
        /// The return type.
        /// A task eventually representing the response data, decorated with 
        Task> PostAsync(String path, RequestOptions options, IReadableConfiguration configuration = null);
        
        /// 
        /// Executes a non-blocking call to some  using the PUT http verb.
        /// 
        /// The relative path to invoke.
        /// The request parameters to pass along to the client.
        /// Per-request configurable settings.
        /// The return type.
        /// A task eventually representing the response data, decorated with 
        Task> PutAsync(String path, RequestOptions options, IReadableConfiguration configuration = null);
        
        /// 
        /// Executes a non-blocking call to some  using the DELETE http verb.
        /// 
        /// The relative path to invoke.
        /// The request parameters to pass along to the client.
        /// Per-request configurable settings.
        /// The return type.
        /// A task eventually representing the response data, decorated with 
        Task> DeleteAsync(String path, RequestOptions options, IReadableConfiguration configuration = null);
        
        /// 
        /// Executes a non-blocking call to some  using the HEAD http verb.
        /// 
        /// The relative path to invoke.
        /// The request parameters to pass along to the client.
        /// Per-request configurable settings.
        /// The return type.
        /// A task eventually representing the response data, decorated with 
        Task> HeadAsync(String path, RequestOptions options, IReadableConfiguration configuration = null);
        
        /// 
        /// Executes a non-blocking call to some  using the OPTIONS http verb.
        /// 
        /// The relative path to invoke.
        /// The request parameters to pass along to the client.
        /// Per-request configurable settings.
        /// The return type.
        /// A task eventually representing the response data, decorated with 
        Task> OptionsAsync(String path, RequestOptions options, IReadableConfiguration configuration = null);
        
        /// 
        /// Executes a non-blocking call to some  using the PATCH http verb.
        /// 
        /// The relative path to invoke.
        /// The request parameters to pass along to the client.
        /// Per-request configurable settings.
        /// The return type.
        /// A task eventually representing the response data, decorated with 
        Task> PatchAsync(String path, RequestOptions options, IReadableConfiguration configuration = null);
    }
}
{{^supportsAsync}}*/{{/supportsAsync}}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy