private IList <ForcedListBlockQueueItem> GetForcedListBlocks(ListBlockRequest blockRequest) { var forcedBlockRequest = new QueuedForcedBlocksRequest(new TaskId(blockRequest.ApplicationName, blockRequest.TaskName), blockRequest.TaskExecutionId, blockRequest.BlockType); var queuedForcedBlocks = _blockRepository.GetQueuedForcedListBlocks(forcedBlockRequest); return(queuedForcedBlocks); }
private async Task <IList <ForcedListBlockQueueItem> > GetForcedListBlocksAsync(ListBlockRequest blockRequest) { var forcedBlockRequest = new QueuedForcedBlocksRequest(new TaskId(blockRequest.ApplicationName, blockRequest.TaskName), blockRequest.TaskExecutionId, blockRequest.BlockType); var queuedForcedBlocks = await _blockRepository.GetQueuedForcedListBlocksAsync(forcedBlockRequest).ConfigureAwait(false); return(queuedForcedBlocks); }
private List <IObjectBlockContext <T> > GetForcedObjectBlocks <T>(ObjectBlockRequest <T> blockRequest) { var forcedBlockRequest = new QueuedForcedBlocksRequest(new TaskId(blockRequest.ApplicationName, blockRequest.TaskName), blockRequest.TaskExecutionId, blockRequest.BlockType); var queuedForcedBlocks = _blockRepository.GetQueuedForcedObjectBlocks <T>(forcedBlockRequest); var forcedBlocks = new List <IObjectBlockContext <T> >(); foreach (var queuedForcedBlock in queuedForcedBlocks) { forcedBlocks.Add(CreateObjectBlockContext(blockRequest, queuedForcedBlock.ObjectBlock, queuedForcedBlock.ForcedBlockQueueId)); } if (forcedBlocks.Any()) { DequeueForcedBlocks(blockRequest, forcedBlocks.Select(x => x.ForcedBlockQueueId).ToList()); } return(forcedBlocks); }
private async Task <List <IObjectBlockContext <T> > > GetForcedObjectBlocksAsync <T>(ObjectBlockRequest <T> blockRequest) { var forcedBlockRequest = new QueuedForcedBlocksRequest(new TaskId(blockRequest.ApplicationName, blockRequest.TaskName), blockRequest.TaskExecutionId, blockRequest.BlockType); var queuedForcedBlocks = await _blockRepository.GetQueuedForcedObjectBlocksAsync <T>(forcedBlockRequest).ConfigureAwait(false); var forcedBlocks = new List <IObjectBlockContext <T> >(); foreach (var queuedForcedBlock in queuedForcedBlocks) { forcedBlocks.Add(await CreateObjectBlockContextAsync(blockRequest, queuedForcedBlock.ObjectBlock, queuedForcedBlock.ForcedBlockQueueId).ConfigureAwait(false)); } if (forcedBlocks.Any()) { await DequeueForcedBlocksAsync(blockRequest, forcedBlocks.Select(x => x.ForcedBlockQueueId).ToList()).ConfigureAwait(false); } return(forcedBlocks); }