private async Task StatusPollerElapsed()

in DIXFSamples/RecurringIntegrationApp/Runtime/DefaultDataFlowNetwork.cs [176:204]


        private async Task StatusPollerElapsed(object sender, ElapsedEventArgs e)
        {
            if (EnqueuedJobs.Count > 0)
            {
                base.formInstance.logText("Checking enqueued jobs' status...");
            }

            foreach (KeyValuePair<string, ClientDataMessage> item in EnqueuedJobs)
            {
                // Check status for current item with message id - item.Key
                var jobStatusDetail = await getStatus(item.Key);

                // If status was found and is not null, 
                if (jobStatusDetail != null)
                {
                    // post process the status received
                    var postProcessSucceeded = await postProcessMessageAsync(jobStatusDetail, item.Value);

                    // If the status received is any of the completion state (any of the error state or processed state)
                    // the treat processing to be complete and remove the item from the tracked dictionary
                    if (postProcessSucceeded)
                    {
                        ClientDataMessage _removed;

                        EnqueuedJobs.TryRemove(item.Key, out _removed);
                    }
                }
            }
        }