Ejemplo n.º 1
0
        private void Callback(FileSystemEventArgs e)
        {
            if (_callback == null)
            {
                return;
            }

            var filename = e.Name;
            var parsed   = _topicGen.Parse(filename);
            var from     = parsed["from"];
            var msg      = File.ReadAllText(e.FullPath);

            _callback(new MessageInfo
            {
                From      = from,
                To        = parsed["to"],
                RecivedAt = DateTime.ParseExact(parsed["timestamp"], "yyyyMMddHHmmssfff", null),
                Message   = msg
            });
            if (_ack)
            {
                var topic = _topicGen.Generate(from);
                if (!Directory.Exists(_baseDir))
                {
                    Directory.CreateDirectory(_baseDir);
                }
                using (var file = new StreamWriter(Path.Combine(_baseDir, topic)))
                {
                    file.WriteLine("[Acknoledged] {0} {1}", DateTime.Now, _recId);
                }
            }
        }
Ejemplo n.º 2
0
        private void Callback(FileSystemEventArgs e)
        {
            var filename = e.Name;
            var parsed   = _topicGen.Parse(filename);
            var from     = parsed["from"];

            if (_callbacks.ContainsKey(from))
            {
                var msg = File.ReadAllText(e.FullPath);
                _callbacks[from](new MessageInfo
                {
                    From      = from,
                    To        = parsed["to"],
                    RecivedAt = DateTime.ParseExact(parsed["timestamp"], "yyyyMMddHHmmssfff", null),
                    Message   = msg
                });
            }
        }