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); } } }
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 }); } }