/// <summary> /// Gets a specific revision for a given job /// </summary> /// <param name="jobId">The job ID</param> /// <param name="revisionId">The revision ID</param> /// <returns>Task yielding revision data</returns> public async Task <Revision> GetRevision(int jobId, int revisionId) { var uri = string.Format(UriPartRevision, jobId, revisionId); var rev = await _client.GetJsonPropertyAsync <JObject>("revision", uri, true); return(new Revision(rev)); }
/// <summary> /// Gets information about a series of specified jobs /// </summary> /// <param name="jobIds">The IDs of jobs to retrieve</param> /// <returns>Task yielding array of jobs</returns> public async Task <SubmittedJob[]> GetJobsByIds(IEnumerable <int> jobIds) { if (jobIds == null) { throw new ArgumentNullException("jobIds"); } var sb = new StringBuilder("/"); foreach (var item in jobIds) { if (item <= 0) { throw new ArgumentException( Resources.InvalidJobIdProvided, "jobIds"); } if (sb.Length > 1) { sb.Append(","); } sb.Append(item); } if (sb.Length == 1) { return(new SubmittedJob[] { }); } var url = UriPartJobsEndpoint + sb.ToString(); var arr = await _client.GetJsonPropertyAsync <JArray>("jobs", url, true); return(arr.Values <JObject>().Select( o => new SubmittedJob(o)).ToArray()); }