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