mirror of
https://github.com/actions/runner.git
synced 2025-12-10 20:36:49 +00:00
delete un-used code. (#218)
This commit is contained in:
@@ -84,172 +84,10 @@ namespace GitHub.DistributedTask.WebApi
|
||||
bool? includeAssignedRequest = null,
|
||||
bool? includeLastCompletedRequest = null,
|
||||
IEnumerable<string> propertyFilters = null,
|
||||
IEnumerable<Demand> demands = null,
|
||||
Object userState = null,
|
||||
CancellationToken cancellationToken = default(CancellationToken))
|
||||
{
|
||||
IEnumerable<String> demandStrings = null;
|
||||
if (demands != null)
|
||||
{
|
||||
demandStrings = demands.Select(d => d.ToString());
|
||||
}
|
||||
return GetAgentsAsync(poolId, agentName, includeCapabilities, includeAssignedRequest, includeLastCompletedRequest, propertyFilters, demandStrings, userState, cancellationToken);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// [Preview API] Get a secure file
|
||||
/// </summary>
|
||||
/// <param name="project">Project ID</param>
|
||||
/// <param name="secureFileId">The unique secure file Id</param>
|
||||
/// <param name="includeDownloadTicket">If includeDownloadTicket is true and the caller has permissions, a download ticket is included in the response.</param>
|
||||
/// <param name="userState"></param>
|
||||
/// <param name="cancellationToken">The cancellation token to cancel operation.</param>
|
||||
public virtual Task<SecureFile> GetSecureFileAsync(
|
||||
Guid project,
|
||||
Guid secureFileId,
|
||||
bool? includeDownloadTicket = null,
|
||||
object userState = null,
|
||||
CancellationToken cancellationToken = default(CancellationToken))
|
||||
{
|
||||
return GetSecureFileAsync(project, secureFileId, includeDownloadTicket, actionFilter: null, userState: userState, cancellationToken: cancellationToken);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// [Preview API] Get secure files
|
||||
/// </summary>
|
||||
/// <param name="project">Project ID or project name</param>
|
||||
/// <param name="namePattern">Name of the secure file to match. Can include wildcards to match multiple files.</param>
|
||||
/// <param name="includeDownloadTickets">If includeDownloadTickets is true and the caller has permissions, a download ticket for each secure file is included in the response.</param>
|
||||
/// <param name="userState"></param>
|
||||
/// <param name="cancellationToken">The cancellation token to cancel operation.</param>
|
||||
public virtual Task<List<SecureFile>> GetSecureFilesAsync(
|
||||
string project,
|
||||
string namePattern = null,
|
||||
bool? includeDownloadTickets = null,
|
||||
object userState = null,
|
||||
CancellationToken cancellationToken = default(CancellationToken))
|
||||
{
|
||||
return GetSecureFilesAsync(project, namePattern, includeDownloadTickets, actionFilter: null, userState: userState, cancellationToken: cancellationToken);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// [Preview API] Get secure files
|
||||
/// </summary>
|
||||
/// <param name="project">Project ID</param>
|
||||
/// <param name="namePattern">Name of the secure file to match. Can include wildcards to match multiple files.</param>
|
||||
/// <param name="includeDownloadTickets">If includeDownloadTickets is true and the caller has permissions, a download ticket for each secure file is included in the response.</param>
|
||||
/// <param name="userState"></param>
|
||||
/// <param name="cancellationToken">The cancellation token to cancel operation.</param>
|
||||
public virtual Task<List<SecureFile>> GetSecureFilesAsync(
|
||||
Guid project,
|
||||
string namePattern = null,
|
||||
bool? includeDownloadTickets = null,
|
||||
object userState = null,
|
||||
CancellationToken cancellationToken = default(CancellationToken))
|
||||
{
|
||||
return GetSecureFilesAsync(project, namePattern, includeDownloadTickets, actionFilter: null, userState: userState, cancellationToken: cancellationToken);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// [Preview API] Get secure files
|
||||
/// </summary>
|
||||
/// <param name="project">Project ID or project name</param>
|
||||
/// <param name="secureFileIds">A list of secure file Ids</param>
|
||||
/// <param name="includeDownloadTickets">If includeDownloadTickets is true and the caller has permissions, a download ticket for each secure file is included in the response.</param>
|
||||
/// <param name="userState"></param>
|
||||
/// <param name="cancellationToken">The cancellation token to cancel operation.</param>
|
||||
public virtual Task<List<SecureFile>> GetSecureFilesByIdsAsync(
|
||||
string project,
|
||||
IEnumerable<Guid> secureFileIds,
|
||||
bool? includeDownloadTickets = null,
|
||||
object userState = null,
|
||||
CancellationToken cancellationToken = default(CancellationToken))
|
||||
{
|
||||
return GetSecureFilesByIdsAsync(project, secureFileIds, includeDownloadTickets, actionFilter: null, userState: userState, cancellationToken: cancellationToken);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// [Preview API] Get secure files
|
||||
/// </summary>
|
||||
/// <param name="project">Project ID</param>
|
||||
/// <param name="secureFileIds">A list of secure file Ids</param>
|
||||
/// <param name="includeDownloadTickets">If includeDownloadTickets is true and the caller has permissions, a download ticket for each secure file is included in the response.</param>
|
||||
/// <param name="userState"></param>
|
||||
/// <param name="cancellationToken">The cancellation token to cancel operation.</param>
|
||||
public virtual Task<List<SecureFile>> GetSecureFilesByIdsAsync(
|
||||
Guid project,
|
||||
IEnumerable<Guid> secureFileIds,
|
||||
bool? includeDownloadTickets = null,
|
||||
object userState = null,
|
||||
CancellationToken cancellationToken = default(CancellationToken))
|
||||
{
|
||||
return GetSecureFilesByIdsAsync(project, secureFileIds, includeDownloadTickets, actionFilter: null, userState: userState, cancellationToken: cancellationToken);
|
||||
}
|
||||
|
||||
public async Task<Stream> GetTaskContentZipAsync(
|
||||
Guid taskId,
|
||||
TaskVersion version,
|
||||
Object userState = null,
|
||||
CancellationToken cancellationToken = default(CancellationToken))
|
||||
{
|
||||
var routeValues = new { taskId = taskId, versionString = version.ToString() };
|
||||
HttpRequestMessage requestMessage = await CreateRequestMessageAsync(
|
||||
HttpMethod.Get,
|
||||
TaskResourceIds.Tasks,
|
||||
routeValues: routeValues,
|
||||
version: m_currentApiVersion).ConfigureAwait(false);
|
||||
|
||||
requestMessage.Headers.Accept.Clear();
|
||||
var header = new MediaTypeWithQualityHeaderValue("application/zip");
|
||||
header.Parameters.Add(new NameValueHeaderValue("api-version", m_currentApiVersion.ApiVersionString));
|
||||
header.Parameters.Add(new NameValueHeaderValue("res-version", "1"));
|
||||
requestMessage.Headers.Accept.Add(header);
|
||||
|
||||
HttpResponseMessage response = await SendAsync(requestMessage, HttpCompletionOption.ResponseHeadersRead, userState, cancellationToken).ConfigureAwait(false);
|
||||
|
||||
response.EnsureSuccessStatusCode();
|
||||
|
||||
if (response.StatusCode == HttpStatusCode.NoContent)
|
||||
{
|
||||
throw new Exception("no content");
|
||||
}
|
||||
|
||||
if (!VssStringComparer.ContentType.Equals(response.Content.Headers.ContentType.MediaType, "application/zip"))
|
||||
{
|
||||
throw new Exception("bad content type");
|
||||
}
|
||||
|
||||
if (response.Content.Headers.ContentEncoding.Contains("gzip", StringComparer.OrdinalIgnoreCase))
|
||||
{
|
||||
return new GZipStream(await response.Content.ReadAsStreamAsync().ConfigureAwait(false), CompressionMode.Decompress);
|
||||
}
|
||||
|
||||
return await response.Content.ReadAsStreamAsync().ConfigureAwait(false);
|
||||
}
|
||||
|
||||
public Task<TaskAgentJobRequest> QueueAgentRequestByPoolAsync(
|
||||
Int32 poolId,
|
||||
IList<Demand> demands,
|
||||
Guid serviceOwner,
|
||||
Guid hostId,
|
||||
Guid scopeIdentifier,
|
||||
String hubName,
|
||||
Guid planId,
|
||||
Guid jobId,
|
||||
Object userState = null,
|
||||
CancellationToken cancellationToken = default(CancellationToken))
|
||||
{
|
||||
var request = new TaskAgentJobRequest
|
||||
{
|
||||
ServiceOwner = serviceOwner,
|
||||
HostId = hostId,
|
||||
PlanType = hubName,
|
||||
ScopeId = scopeIdentifier,
|
||||
PlanId = planId,
|
||||
JobId = jobId
|
||||
};
|
||||
|
||||
return QueueAgentRequestByPoolAsync(poolId, request, userState, cancellationToken);
|
||||
return GetAgentsAsync(poolId, agentName, includeCapabilities, includeAssignedRequest, includeLastCompletedRequest, propertyFilters, null, userState, cancellationToken);
|
||||
}
|
||||
|
||||
public Task<TaskAgentJobRequest> RenewAgentRequestAsync(
|
||||
@@ -279,390 +117,6 @@ namespace GitHub.DistributedTask.WebApi
|
||||
return ReplaceAgentAsync(poolId, agent.Id, agent, userState, cancellationToken);
|
||||
}
|
||||
|
||||
public Task SendMessageAsync(
|
||||
Int32 poolId,
|
||||
Int64 requestId,
|
||||
AgentJobRequestMessage request,
|
||||
Object userState = null,
|
||||
CancellationToken cancellationToken = default(CancellationToken))
|
||||
{
|
||||
var message = new TaskAgentMessage
|
||||
{
|
||||
Body = JsonUtility.ToString(request),
|
||||
MessageType = request.MessageType,
|
||||
};
|
||||
|
||||
return SendMessageAsync(poolId, requestId, message, userState: userState, cancellationToken: cancellationToken);
|
||||
}
|
||||
|
||||
public Task SendMessageAsync(
|
||||
Int32 poolId,
|
||||
Int64 requestId,
|
||||
JobCancelMessage cancel,
|
||||
Object userState = null,
|
||||
CancellationToken cancellationToken = default(CancellationToken))
|
||||
{
|
||||
var message = new TaskAgentMessage
|
||||
{
|
||||
Body = JsonUtility.ToString(cancel),
|
||||
MessageType = JobCancelMessage.MessageType,
|
||||
};
|
||||
|
||||
return SendMessageAsync(poolId, requestId, message, userState: userState, cancellationToken: cancellationToken);
|
||||
}
|
||||
|
||||
public async Task<HttpResponseMessage> UploadTaskZipAsync(
|
||||
Guid taskId,
|
||||
Stream fileStream,
|
||||
Boolean overwrite = false,
|
||||
Object userState = null,
|
||||
CancellationToken cancellationToken = default(CancellationToken))
|
||||
{
|
||||
ArgumentUtility.CheckForNull(fileStream, "fileStream");
|
||||
|
||||
HttpRequestMessage requestMessage;
|
||||
|
||||
if (fileStream.Length == 0)
|
||||
{
|
||||
throw new Exception("file stream of length 0 not allowed.");
|
||||
}
|
||||
|
||||
if (fileStream.Length > 16 * 1024 * 1024)
|
||||
{
|
||||
throw new Exception("file stream too big");
|
||||
}
|
||||
|
||||
Byte[] dataToSend = new Byte[fileStream.Length];
|
||||
|
||||
List<KeyValuePair<String, String>> queryParameters = null;
|
||||
if (overwrite)
|
||||
{
|
||||
queryParameters = new List<KeyValuePair<String, String>>();
|
||||
queryParameters.Add("overwrite", "true");
|
||||
}
|
||||
|
||||
var routeValues = new
|
||||
{
|
||||
taskId = taskId
|
||||
};
|
||||
|
||||
requestMessage = await CreateRequestMessageAsync(HttpMethod.Put,
|
||||
TaskResourceIds.Tasks,
|
||||
routeValues: routeValues,
|
||||
version: m_currentApiVersion,
|
||||
queryParameters: queryParameters,
|
||||
userState: userState,
|
||||
cancellationToken: cancellationToken).ConfigureAwait(false);
|
||||
|
||||
// inorder for the upload to be retryable, we need the content to be re-readable
|
||||
// to ensure this we copy the chunk into a byte array and send that
|
||||
// chunk size ensures we can convert the length to an int
|
||||
int bytesToCopy = (int)fileStream.Length;
|
||||
using (MemoryStream ms = new MemoryStream(dataToSend))
|
||||
{
|
||||
await fileStream.CopyToAsync(ms, bytesToCopy, cancellationToken).ConfigureAwait(false);
|
||||
}
|
||||
|
||||
// set the content and the Content-Range header
|
||||
HttpContent byteArrayContent = new ByteArrayContent(dataToSend, 0, bytesToCopy);
|
||||
byteArrayContent.Headers.ContentLength = fileStream.Length;
|
||||
byteArrayContent.Headers.ContentRange = new ContentRangeHeaderValue(0, fileStream.Length - 1, fileStream.Length);
|
||||
byteArrayContent.Headers.ContentType = new MediaTypeHeaderValue("application/octet-stream");
|
||||
|
||||
requestMessage.Content = byteArrayContent;
|
||||
return await SendAsync(requestMessage, userState, cancellationToken).ConfigureAwait(false);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// [Preview API]
|
||||
/// </summary>
|
||||
/// <param name="project">Project ID or project name</param>
|
||||
/// <param name="deploymentGroupName"></param>
|
||||
/// <param name="continuationToken"></param>
|
||||
/// <param name="top"></param>
|
||||
/// <param name="userState"></param>
|
||||
/// <param name="cancellationToken">The cancellation token to cancel operation.</param>
|
||||
public virtual Task<IPagedList<DeploymentGroupMetrics>> GetDeploymentGroupsMetricsAsync2(
|
||||
string project,
|
||||
string deploymentGroupName = null,
|
||||
string continuationToken = null,
|
||||
int? top = null,
|
||||
object userState = null,
|
||||
CancellationToken cancellationToken = default(CancellationToken))
|
||||
{
|
||||
HttpMethod httpMethod = new HttpMethod("GET");
|
||||
Guid locationId = new Guid("281c6308-427a-49e1-b83a-dac0f4862189");
|
||||
object routeValues = new { project = project };
|
||||
|
||||
List<KeyValuePair<string, string>> queryParams = new List<KeyValuePair<string, string>>();
|
||||
if (!string.IsNullOrEmpty(deploymentGroupName))
|
||||
{
|
||||
queryParams.Add("deploymentGroupName", deploymentGroupName);
|
||||
}
|
||||
if (!string.IsNullOrEmpty(continuationToken))
|
||||
{
|
||||
queryParams.Add("continuationToken", continuationToken);
|
||||
}
|
||||
if (top != null)
|
||||
{
|
||||
queryParams.Add("$top", top.Value.ToString(CultureInfo.InvariantCulture));
|
||||
}
|
||||
|
||||
return SendAsync<IPagedList<DeploymentGroupMetrics>>(
|
||||
httpMethod,
|
||||
locationId,
|
||||
routeValues: routeValues,
|
||||
version: new ApiResourceVersion("4.0-preview.1"),
|
||||
queryParameters: queryParams,
|
||||
userState: userState,
|
||||
cancellationToken: cancellationToken,
|
||||
processResponse: GetPagedList<DeploymentGroupMetrics>);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// [Preview API]
|
||||
/// </summary>
|
||||
/// <param name="project">Project ID</param>
|
||||
/// <param name="deploymentGroupName"></param>
|
||||
/// <param name="continuationToken"></param>
|
||||
/// <param name="top"></param>
|
||||
/// <param name="userState"></param>
|
||||
/// <param name="cancellationToken">The cancellation token to cancel operation.</param>
|
||||
public virtual Task<IPagedList<DeploymentGroupMetrics>> GetDeploymentGroupsMetricsAsync2(
|
||||
Guid project,
|
||||
string deploymentGroupName = null,
|
||||
string continuationToken = null,
|
||||
int? top = null,
|
||||
object userState = null,
|
||||
CancellationToken cancellationToken = default(CancellationToken))
|
||||
{
|
||||
HttpMethod httpMethod = new HttpMethod("GET");
|
||||
Guid locationId = new Guid("281c6308-427a-49e1-b83a-dac0f4862189");
|
||||
object routeValues = new { project = project };
|
||||
|
||||
List<KeyValuePair<string, string>> queryParams = new List<KeyValuePair<string, string>>();
|
||||
if (!string.IsNullOrEmpty(deploymentGroupName))
|
||||
{
|
||||
queryParams.Add("deploymentGroupName", deploymentGroupName);
|
||||
}
|
||||
if (!string.IsNullOrEmpty(continuationToken))
|
||||
{
|
||||
queryParams.Add("continuationToken", continuationToken);
|
||||
}
|
||||
if (top != null)
|
||||
{
|
||||
queryParams.Add("$top", top.Value.ToString(CultureInfo.InvariantCulture));
|
||||
}
|
||||
|
||||
return SendAsync<IPagedList<DeploymentGroupMetrics>>(
|
||||
httpMethod,
|
||||
locationId,
|
||||
routeValues: routeValues,
|
||||
version: new ApiResourceVersion("4.0-preview.1"),
|
||||
queryParameters: queryParams,
|
||||
userState: userState,
|
||||
cancellationToken: cancellationToken,
|
||||
processResponse: GetPagedList<DeploymentGroupMetrics>);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// [Preview API]
|
||||
/// </summary>
|
||||
/// <param name="project">Project ID or project name</param>
|
||||
/// <param name="deploymentGroupId"></param>
|
||||
/// <param name="tags"></param>
|
||||
/// <param name="name"></param>
|
||||
/// <param name="partialNameMatch"></param>
|
||||
/// <param name="expand"></param>
|
||||
/// <param name="agentStatus"></param>
|
||||
/// <param name="agentJobResult"></param>
|
||||
/// <param name="continuationToken"></param>
|
||||
/// <param name="top"></param>
|
||||
/// <param name="userState"></param>
|
||||
/// <param name="cancellationToken">The cancellation token to cancel operation.</param>
|
||||
/// <param name="propertyFilters"></param>
|
||||
public virtual Task<IPagedList<DeploymentMachine>> GetDeploymentTargetsAsyncWithContinuationToken(
|
||||
string project,
|
||||
int deploymentGroupId,
|
||||
IEnumerable<string> tags = null,
|
||||
string name = null,
|
||||
bool? partialNameMatch = null,
|
||||
DeploymentTargetExpands? expand = null,
|
||||
TaskAgentStatusFilter? agentStatus = null,
|
||||
TaskAgentJobResultFilter? agentJobResult = null,
|
||||
string continuationToken = null,
|
||||
int? top = null,
|
||||
object userState = null,
|
||||
CancellationToken cancellationToken = default(CancellationToken),
|
||||
Boolean? enabled = null,
|
||||
IEnumerable<string> propertyFilters = null)
|
||||
{
|
||||
HttpMethod httpMethod = new HttpMethod("GET");
|
||||
Guid locationId = new Guid("2f0aa599-c121-4256-a5fd-ba370e0ae7b6");
|
||||
object routeValues = new { project = project, deploymentGroupId = deploymentGroupId };
|
||||
|
||||
List<KeyValuePair<string, string>> queryParams = new List<KeyValuePair<string, string>>();
|
||||
if (tags != null && tags.Any())
|
||||
{
|
||||
queryParams.Add("tags", string.Join(",", tags));
|
||||
}
|
||||
if (!string.IsNullOrEmpty(name))
|
||||
{
|
||||
queryParams.Add("name", name);
|
||||
}
|
||||
if (partialNameMatch != null)
|
||||
{
|
||||
queryParams.Add("partialNameMatch", partialNameMatch.Value.ToString());
|
||||
}
|
||||
if (expand != null)
|
||||
{
|
||||
queryParams.Add("$expand", expand.Value.ToString());
|
||||
}
|
||||
if (agentStatus != null)
|
||||
{
|
||||
queryParams.Add("agentStatus", agentStatus.Value.ToString());
|
||||
}
|
||||
if (agentJobResult != null)
|
||||
{
|
||||
queryParams.Add("agentJobResult", agentJobResult.Value.ToString());
|
||||
}
|
||||
if (!string.IsNullOrEmpty(continuationToken))
|
||||
{
|
||||
queryParams.Add("continuationToken", continuationToken);
|
||||
}
|
||||
if (top != null)
|
||||
{
|
||||
queryParams.Add("$top", top.Value.ToString(CultureInfo.InvariantCulture));
|
||||
}
|
||||
if (enabled != null)
|
||||
{
|
||||
queryParams.Add("enabled", enabled.Value.ToString());
|
||||
}
|
||||
if (propertyFilters != null && propertyFilters.Any())
|
||||
{
|
||||
queryParams.Add("propertyFilters", string.Join(",", propertyFilters));
|
||||
}
|
||||
|
||||
return SendAsync<IPagedList<DeploymentMachine>>(
|
||||
httpMethod,
|
||||
locationId,
|
||||
routeValues: routeValues,
|
||||
version: new ApiResourceVersion("4.1-preview.1"),
|
||||
queryParameters: queryParams,
|
||||
userState: userState,
|
||||
cancellationToken: cancellationToken,
|
||||
processResponse: GetPagedList<DeploymentMachine>);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// [Preview API]
|
||||
/// </summary>
|
||||
/// <param name="project">Project ID</param>
|
||||
/// <param name="deploymentGroupId"></param>
|
||||
/// <param name="tags"></param>
|
||||
/// <param name="name"></param>
|
||||
/// <param name="partialNameMatch"></param>
|
||||
/// <param name="expand"></param>
|
||||
/// <param name="agentStatus"></param>
|
||||
/// <param name="agentJobResult"></param>
|
||||
/// <param name="continuationToken"></param>
|
||||
/// <param name="top"></param>
|
||||
/// <param name="userState"></param>
|
||||
/// <param name="cancellationToken">The cancellation token to cancel operation.</param>
|
||||
/// <param name="propertyFilters"></param>
|
||||
public virtual Task<IPagedList<DeploymentMachine>> GetDeploymentTargetsAsyncWithContinuationToken(
|
||||
Guid project,
|
||||
int deploymentGroupId,
|
||||
IEnumerable<string> tags = null,
|
||||
string name = null,
|
||||
bool? partialNameMatch = null,
|
||||
DeploymentTargetExpands? expand = null,
|
||||
TaskAgentStatusFilter? agentStatus = null,
|
||||
TaskAgentJobResultFilter? agentJobResult = null,
|
||||
string continuationToken = null,
|
||||
int? top = null,
|
||||
object userState = null,
|
||||
CancellationToken cancellationToken = default(CancellationToken),
|
||||
Boolean? enabled = null,
|
||||
IEnumerable<string> propertyFilters = null)
|
||||
{
|
||||
HttpMethod httpMethod = new HttpMethod("GET");
|
||||
Guid locationId = new Guid("2f0aa599-c121-4256-a5fd-ba370e0ae7b6");
|
||||
object routeValues = new { project = project, deploymentGroupId = deploymentGroupId };
|
||||
|
||||
List<KeyValuePair<string, string>> queryParams = new List<KeyValuePair<string, string>>();
|
||||
if (tags != null && tags.Any())
|
||||
{
|
||||
queryParams.Add("tags", string.Join(",", tags));
|
||||
}
|
||||
if (!string.IsNullOrEmpty(name))
|
||||
{
|
||||
queryParams.Add("name", name);
|
||||
}
|
||||
if (partialNameMatch != null)
|
||||
{
|
||||
queryParams.Add("partialNameMatch", partialNameMatch.Value.ToString());
|
||||
}
|
||||
if (expand != null)
|
||||
{
|
||||
queryParams.Add("$expand", expand.Value.ToString());
|
||||
}
|
||||
if (agentStatus != null)
|
||||
{
|
||||
queryParams.Add("agentStatus", agentStatus.Value.ToString());
|
||||
}
|
||||
if (agentJobResult != null)
|
||||
{
|
||||
queryParams.Add("agentJobResult", agentJobResult.Value.ToString());
|
||||
}
|
||||
if (!string.IsNullOrEmpty(continuationToken))
|
||||
{
|
||||
queryParams.Add("continuationToken", continuationToken);
|
||||
}
|
||||
if (top != null)
|
||||
{
|
||||
queryParams.Add("$top", top.Value.ToString(CultureInfo.InvariantCulture));
|
||||
}
|
||||
if (enabled != null)
|
||||
{
|
||||
queryParams.Add("enabled", enabled.Value.ToString());
|
||||
}
|
||||
if (propertyFilters != null && propertyFilters.Any())
|
||||
{
|
||||
queryParams.Add("propertyFilters", string.Join(",", propertyFilters));
|
||||
}
|
||||
|
||||
return SendAsync<IPagedList<DeploymentMachine>>(
|
||||
httpMethod,
|
||||
locationId,
|
||||
routeValues: routeValues,
|
||||
version: new ApiResourceVersion("4.1-preview.1"),
|
||||
queryParameters: queryParams,
|
||||
userState: userState,
|
||||
cancellationToken: cancellationToken,
|
||||
processResponse: GetPagedList<DeploymentMachine>);
|
||||
}
|
||||
|
||||
protected async Task<IPagedList<T>> GetPagedList<T>(HttpResponseMessage responseMessage, CancellationToken cancellationToken)
|
||||
{
|
||||
var continuationToken = GetContinuationToken(responseMessage);
|
||||
var list = await ReadContentAsAsync<List<T>>(responseMessage, cancellationToken).ConfigureAwait(false);
|
||||
return new PagedList<T>(list, continuationToken);
|
||||
}
|
||||
|
||||
protected string GetContinuationToken(HttpResponseMessage responseMessage)
|
||||
{
|
||||
string continuationToken = null;
|
||||
|
||||
IEnumerable<string> headerValues = null;
|
||||
if (responseMessage.Headers.TryGetValues("x-ms-continuationtoken", out headerValues))
|
||||
{
|
||||
continuationToken = headerValues.FirstOrDefault();
|
||||
}
|
||||
|
||||
return continuationToken;
|
||||
}
|
||||
|
||||
protected Task<T> SendAsync<T>(
|
||||
HttpMethod method,
|
||||
Guid locationId,
|
||||
|
||||
Reference in New Issue
Block a user