Exemple #1
0
        public async Task MoveToScheduledUntil(DateTimeOffset time, Envelope envelope)
        {
            envelope.OwnerId       = TransportConstants.AnyNode;
            envelope.ExecutionTime = time;
            envelope.Status        = TransportConstants.Scheduled;

            try
            {
                await _persistor.ScheduleExecution(new[] { envelope });
            }
            catch (Exception e)
            {
                _logger.LogException(e);
                _retries.ScheduleExecution(envelope);
            }
        }
Exemple #2
0
        private async Task scheduleIncoming(Envelope[] envelopes)
        {
            try
            {
                await _persistor.ScheduleExecution(envelopes);

                Scheduled.Set();
            }
            catch (Exception e)
            {
                _logger.LogException(e);
                foreach (var envelope in envelopes)
                {
                    ScheduleExecution(envelope);
                }
            }
        }