Exemplo n.º 1
0
        public async Task ReceiveReminder(string reminderName, TickStatus status)
        {
            var output = new HelloMyValue {
                Greeting = $"get Reminder: {reminderName}", YellTime = DateTime.Now
            };

            _outputMsg.Output(output.ToString());

            var reminderInfo = _registeredReminders[reminderName];

            reminderInfo.CalledCount++;

            if (reminderInfo.CalledCount >= UpperLimit)
            {
                await UnregisterReminder(reminderInfo.Reminder);

                _outputMsg.Output($"Reminder: {reminderName} unregistered.");
                _registeredReminders.Remove(reminderName);
            }
        }
Exemplo n.º 2
0
        public async ValueTask <HelloMyValue> Alarm()
        {
            _calledTimes++;
            var reminderName = $"myReminder{_calledTimes}";
            var reminder     = await RegisterOrUpdateReminder(reminderName, TimeSpan.FromSeconds(30), TimeSpan.FromMinutes(1));

            _registeredReminders[reminderName] = new ReminderInfo {
                Reminder = reminder, CalledCount = 1
            };

            //TODO: init some long-running Task job.

            var output = new HelloMyValue {
                Greeting = "Hello World!", YellTime = DateTime.Now
            };

            _outputMsg.Output(output.Greeting);

            return(output);
        }