/// <summary> /// Convert to service model /// </summary> public static CertificateRequestQueryRequestModel ToServiceModel( this CertificateRequestQueryRequestApiModel model) { if (model == null) { return(null); } return(new CertificateRequestQueryRequestModel { EntityId = model.EntityId, State = (IIoT.OpcUa.Vault.Models.CertificateRequestState?)model.State }); }
public async Task <CertificateRequestQueryResponseApiModel> QueryRequestsAsync( [FromBody] CertificateRequestQueryRequestApiModel query, [FromQuery] int?pageSize) { if (Request.Headers.ContainsKey(HttpHeader.MaxItemCount)) { pageSize = int.Parse(Request.Headers[HttpHeader.MaxItemCount] .FirstOrDefault()); } HttpContext.User = null; // TODO: Set service principal var result = await _management.QueryRequestsAsync(query?.ToServiceModel(), pageSize); return(result.ToApiModel()); }
/// <summary> /// Query all requests /// </summary> /// <param name="service"></param> /// <param name="query"></param> /// <param name="ct"></param> /// <returns></returns> public static async Task <IEnumerable <CertificateRequestRecordApiModel> > QueryAllRequestsAsync( this IVaultServiceApi service, CertificateRequestQueryRequestApiModel query, CancellationToken ct = default) { var requests = new List <CertificateRequestRecordApiModel>(); var result = await service.QueryRequestsAsync(query, null, ct); requests.AddRange(result.Requests); while (result.NextPageLink != null) { result = await service.ListRequestsAsync(result.NextPageLink, null, ct); requests.AddRange(result.Requests); } return(requests); }
/// <inheritdoc/> public async Task <CertificateRequestQueryResponseApiModel> QueryRequestsAsync( CertificateRequestQueryRequestApiModel query, int?pageSize, CancellationToken ct) { var request = _httpClient.NewRequest($"{_serviceUri}/v2/requests/query", _resourceId); if (pageSize != null) { request.AddHeader(HttpHeader.MaxItemCount, pageSize.ToString()); } if (query != null) { request.SetContent(query); } var response = await _httpClient.PostAsync(request, ct); response.Validate(); return(response.GetContent <CertificateRequestQueryResponseApiModel>()); }
/// <inheritdoc/> public async Task <CertificateRequestQueryResponseApiModel> QueryRequestsAsync( CertificateRequestQueryRequestApiModel query, int?pageSize, CancellationToken ct) { var request = _httpClient.NewRequest($"{_serviceUri}/v2/requests/query", Resource.Platform); if (pageSize != null) { request.AddHeader(HttpHeader.MaxItemCount, pageSize.ToString()); } if (query != null) { _serializer.SerializeToRequest(request, query); } var response = await _httpClient.PostAsync(request, ct).ConfigureAwait(false); response.Validate(); return(_serializer.DeserializeResponse <CertificateRequestQueryResponseApiModel>(response)); }
/// <summary> /// Query for certificate requests. /// </summary> /// <remarks> /// Get all certificate requests in paged form. The returned model can contain /// a link to the next page if more results are available. Use ListRequests to /// continue. /// </remarks> /// <param name='operations'> /// The operations group for this extension method. /// </param> /// <param name='pageSize'> /// optional, the maximum number of result per page /// </param> /// <param name='body'> /// optional, query filter /// </param> /// <param name='cancellationToken'> /// The cancellation token. /// </param> public static async Task <CertificateRequestQueryResponseApiModel> QueryRequestsAsync(this IAzureOpcVaultClient operations, int?pageSize = default(int?), CertificateRequestQueryRequestApiModel body = default(CertificateRequestQueryRequestApiModel), CancellationToken cancellationToken = default(CancellationToken)) { using (var _result = await operations.QueryRequestsWithHttpMessagesAsync(pageSize, body, null, cancellationToken).ConfigureAwait(false)) { return(_result.Body); } }
/// <summary> /// Query for certificate requests. /// </summary> /// <remarks> /// Get all certificate requests in paged form. The returned model can contain /// a link to the next page if more results are available. Use ListRequests to /// continue. /// </remarks> /// <param name='operations'> /// The operations group for this extension method. /// </param> /// <param name='pageSize'> /// optional, the maximum number of result per page /// </param> /// <param name='body'> /// optional, query filter /// </param> public static CertificateRequestQueryResponseApiModel QueryRequests(this IAzureOpcVaultClient operations, int?pageSize = default(int?), CertificateRequestQueryRequestApiModel body = default(CertificateRequestQueryRequestApiModel)) { return(operations.QueryRequestsAsync(pageSize, body).GetAwaiter().GetResult()); }