/// <summary> /// Gets a Redmine object. This method does not block the calling thread. /// </summary> /// <typeparam name="T">The type of objects to retrieve.</typeparam> /// <param name="redmineManager">The redmine manager.</param> /// <param name="id">The id of the object.</param> /// <param name="parameters">Optional filters and/or optional fetched data.</param> /// <returns></returns> public static async Task <T> GetObjectAsync <T>(this RedmineManager redmineManager, string id, NameValueCollection parameters) where T : class, new() { var uri = UrlHelper.GetGetUrl <T>(redmineManager, id); return(await WebApiAsyncHelper.ExecuteDownload <T>(redmineManager, uri, parameters).ConfigureAwait(false)); }
/// <summary> /// Gets the wiki page asynchronous. /// </summary> /// <param name="redmineManager">The redmine manager.</param> /// <param name="projectId">The project identifier.</param> /// <param name="parameters">The parameters.</param> /// <param name="pageName">Name of the page.</param> /// <param name="version">The version.</param> /// <returns></returns> public static async Task <WikiPage> GetWikiPageAsync(this RedmineManager redmineManager, string projectId, NameValueCollection parameters, string pageName, uint version = 0) { var uri = UrlHelper.GetWikiPageUrl(redmineManager, projectId, parameters, pageName, version); return(await WebApiAsyncHelper.ExecuteDownload <WikiPage>(redmineManager, uri, "GetWikiPageAsync", parameters)); }
/// <summary> /// Gets the current user asynchronous. /// </summary> /// <param name="redmineManager">The redmine manager.</param> /// <param name="parameters">The parameters.</param> /// <returns></returns> public static async Task <User> GetCurrentUserAsync(this RedmineManager redmineManager, NameValueCollection parameters = null) { var uri = UrlHelper.GetCurrentUserUrl(redmineManager); return(await WebApiAsyncHelper.ExecuteDownload <User>(redmineManager, uri, parameters).ConfigureAwait(false)); }