diff --git a/src/Services/Storage/Implementation/InstanceRepository.cs b/src/Services/Storage/Implementation/InstanceRepository.cs index 9a473115..cd06853c 100644 --- a/src/Services/Storage/Implementation/InstanceRepository.cs +++ b/src/Services/Storage/Implementation/InstanceRepository.cs @@ -77,7 +77,7 @@ public async Task GetOne(int instanceOwnerPartyId, Guid instanceGuid) return null; } - public Task GetInstancesFromQuery(Dictionary queryParams, string continuationToken, int size) + public async Task GetInstancesFromQuery(Dictionary queryParams, string continuationToken, int size) { List validQueryParams = new List { @@ -199,16 +199,20 @@ public Task GetInstancesFromQuery(Dictionary !queryParams["process.currentTask"].Contains(i.Process.CurrentTask.ElementId)); + } instances.RemoveAll(i => i.Status.IsHardDeleted == true); - instances.ForEach(async i => await PostProcess(i)); + await Task.WhenAll(instances.Select(async i => await PostProcess(i))); - return Task.FromResult(new InstanceQueryResponse + return new InstanceQueryResponse { Instances = instances, Count = instances.Count, - }); + }; } public async Task Update(Instance instance)