Beispiel #1
0
        private string GetSchedule(CheckSettings settings, StatusesEnum status)
        {
            switch (status)
            {
            case StatusesEnum.CRITICAL:
                return(settings.CriticalSchedule);

            case StatusesEnum.WARNING:
                return(settings.WarningSchedule);

            case StatusesEnum.OK:
            default:
                return(settings.NormalSchedule);
            }
        }
Beispiel #2
0
        public static string ToFriendlyString(this StatusesEnum status)
        {
            switch (status)
            {
            case StatusesEnum.OK:
                return("OK");

            case StatusesEnum.CRITICAL:
                return("CRITICAL");

            case StatusesEnum.WARNING:
                return("WARNING");

            default:
                return("UNKNOWN");
            }
        }
Beispiel #3
0
        public async Task ReSchedule(CheckSettings settings, StatusesEnum status)
        {
            var newSchedule     = GetSchedule(settings, status);
            var currentSchedule = "";

            _schedulesMap.TryGetValue(settings.Type, out currentSchedule);

            if (currentSchedule == newSchedule)
            {
                return;
            }

            CancellationTokenSource cts = null;

            _cancellationTokensMap.TryGetValue(settings.Type, out cts);
            cts.Cancel();

            var cancellationTokenSource = new CancellationTokenSource();
            var ctsUpd = _cancellationTokensMap.TryUpdate(settings.Type, cancellationTokenSource, cts);
            var schUpd = _schedulesMap.TryUpdate(settings.Type, newSchedule, currentSchedule);

            var checkProcessor = new ScheduledTask(_processor);
            await checkProcessor.ProcessCheck(settings.Type, newSchedule, cancellationTokenSource.Token);
        }
Beispiel #4
0
 public IEnumerable <TransactionViewModel> GetByStatus(StatusesEnum status)
 {
     return(transactionRepository.GetTransactions(x => x.StatusID == (int)status)
            .Select(x => (TransactionViewModel)x));
 }
Beispiel #5
0
 public CheckStatusAtTime(StatusesEnum status, bool isFirstNotification)
 {
     NotificationTime = DateTime.Now;
     Status           = status;
     IsFirstAdd       = isFirstNotification;
 }
Beispiel #6
0
 public ActionResult <IEnumerable <Transaction> > GetByStatus(StatusesEnum status)
 {
     return(Ok(transactionService.GetByStatus(status)));
 }