public async Task Notify(ReceiptContainer receipts)
        {
            var message = _messageGenerator.Generate(receipts);

            _logHandler.LogInfo(message);
            _ = _command.Launch(message);
        }
        public IEnumerable <Ammo> Generate(int count)
        {
            var messages = _messageGenerator.Generate(count);

            return(from msg in messages
                   let bytes = _messageSerializer.Serialize(msg)
                               select new Ammo
            {
                Target = _sendUri,
                Body = bytes,
                Headers = new Dictionary <string, string>
                {
                    { "Content-Length", bytes.Length.ToString(NumberFormatInfo.InvariantInfo) },
                    { "x-apikey", _apiKey }
                }
            });
        }
		private List<DeliveryInfo> GetDeliveryInfos(SendOptions options, IMessageGenerator messageGenerator)
		{
			var deliveryInfos = new List<DeliveryInfo>();

			foreach (var recipient in options.Recipients)
			{
				var message = messageGenerator.Generate(options.MessageCode, options.Model, recipient.Locale);

				deliveryInfos.Add(
					new DeliveryInfo
						{
							From = options.Sender.Address,
							To = recipient.Address,
							ReplyTo = string.Join(",", recipient.ReplyTo),
							Subject = message.Subject,
							Body = message.Body,
							IsBodyHtml = true
						});
			}

			return deliveryInfos;
		}
Ejemplo n.º 4
0
        private List <DeliveryInfo> GetDeliveryInfos(SendOptions options, IMessageGenerator messageGenerator)
        {
            var deliveryInfos = new List <DeliveryInfo>();

            foreach (var recipient in options.Recipients)
            {
                var message = messageGenerator.Generate(options.MessageCode, options.Model, recipient.Locale);

                deliveryInfos.Add(
                    new DeliveryInfo
                {
                    From       = options.Sender.Address,
                    To         = recipient.Address,
                    ReplyTo    = string.Join(",", recipient.ReplyTo),
                    Subject    = message.Subject,
                    Body       = message.Body,
                    IsBodyHtml = true
                });
            }

            return(deliveryInfos);
        }
Ejemplo n.º 5
0
        private void TimerOnElapsed(object sender, EventArgs e)
        {
            _locker.WaitOne();

            Ticks++;

            if (Ticks % _updatePeriod == 0)
            {
                _messageCreator.UpdateTables();
            }

            _messageGenerator?.Generate();

            _messageExchanger?.HandleMessagesOnce();

            _messageRegistrator?.RegisterMessages();

            _networkDrawer?.UpdateComponents();

            _messageViewUpdated.Show();

            _locker.ReleaseMutex();
        }