internal virtual GetQueueResponse GetQueue(GetQueueRequest request) { var marshaller = new GetQueueRequestMarshaller(); var unmarshaller = GetQueueResponseUnmarshaller.Instance; return(Invoke <GetQueueRequest, GetQueueResponse>(request, marshaller, unmarshaller)); }
/// <summary> /// Initiates the asynchronous execution of the GetQueue operation. /// </summary> /// /// <param name="request">Container for the necessary parameters to execute the GetQueue operation.</param> /// <param name="cancellationToken"> /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// </param> /// <returns>The task object representing the asynchronous operation.</returns> /// <seealso href="http://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/GetQueue">REST API Reference for GetQueue Operation</seealso> public virtual Task <GetQueueResponse> GetQueueAsync(GetQueueRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var marshaller = new GetQueueRequestMarshaller(); var unmarshaller = GetQueueResponseUnmarshaller.Instance; return(InvokeAsync <GetQueueRequest, GetQueueResponse>(request, marshaller, unmarshaller, cancellationToken)); }
public override Task <GetQueueResponse> GetItems(GetQueueRequest request, ServerCallContext context) { GetQueueResponse response = new GetQueueResponse(); var items = _dataStore.Items; response.Items .Add(FilterQueueItems(items, request)); return(Task.FromResult(response)); }
private IEnumerable <QueueItem> FilterQueueItems(IEnumerable <QueueItem> items, GetQueueRequest request) { var from = request.From ?? items.Min(i => i.Created); var to = request.To ?? items.Max(i => i.Created); var users = request.Users.ToList(); if (users.Count == 0) { users = _dataStore.Users.ToList(); } return(items.Where(q => users.Contains(q.User)) .Where(q => q.Content.Contains(request.Filter)) .Where(q => q.Created >= from && q.Created <= to)); }