static void Main() { ILog log = LogProvider.Get <MessageDispatcher>(); IMessageLogRepository repository = new MessageLogRepository(); log.Info("Starting Message Dispatcher Service."); // TODO: Get config. var dispatcher = new MessageDispatcher(log, repository); if (Environment.UserInteractive) { // If running in the console, allow the user to stop the process. var identity = WindowsIdentity.GetCurrent(); Console.WriteLine("Emulating service behavior with user account: {0}", identity != null ? identity.Name : "UNKNOWN"); // Start processing. dispatcher.Start(); // Wait for key press to stop. Console.ReadKey(); dispatcher.Dispose(); } else { // Run the Dispatcher as a Windows service with no user interaction. var service = new MessageDispatcherService(dispatcher); var serviceBase = new ServiceBase[] { service }; ServiceBase.Run(serviceBase); } }
public void Init() { // IoC in EF var context = new TestContext(); var uow = new UnitOfWork(context); _repository = new MessageLogRepository(uow); _dataGenerator = new DataGenerator(); _messageLogs = context.MessageLogs.AddRange(_dataGenerator.GenerateMessageLogs(10)); }
public void LogMimMessage(SoapMessage mimMsg, ILogger _logger) { var mimMessageLog = new MessageLog { CallType = mimMsg.Header.MimHeader.CallType.ToString(), PublicKey = mimMsg.Header.MimHeader.PublicKey, Consumer = mimMsg.Header.MimHeader.Consumer, Dir = mimMsg.Header.MimHeader.Dir, MimeType = mimMsg.Header.MimHeader.MimeType, TransactionId = new Guid(mimMsg.Header.MimHeader.TransactionId), Provider = mimMsg.Header.MimHeader.Provider, RoutingToken = mimMsg.Header.MimHeader.RoutingToken, Service = mimMsg.Header.MimHeader.Service, ServiceMethod = mimMsg.Header.MimHeader.ServiceMethod, Status = mimMsg.Header.MimHeader.Service, Timestamp = mimMsg.Header.MimHeader.TimeStamp, CreateDate = DateTime.Now, CorrelationId = mimMsg.Header.MimHeader.CorrelationID, Signature = "" }; var context = new ValidationContext(mimMessageLog, null, null); var results = new List <ValidationResult>(); var isValid = Validator.TryValidateObject(mimMessageLog, context, results, true); var nameLogerError = mimMsg.Header.MimHeader.Dir; if (isValid) { try { var messageLogsRepository = new MessageLogRepository(new UnitOfWork(new InteropContext())); messageLogsRepository.InsertMessageLog(mimMessageLog); } catch (Exception e) { //LogHelper.WriteInNLoc("", "", JsonConvert.SerializeObject(mimMessageLog) + "------------" + e.Message, nameLogerError); _logger.Error(JsonConvert.SerializeObject(mimMessageLog) + "------------" + e.Message, e, "LogMimMessage" + nameLogerError); } } else { //LogHelper.WriteInNLoc("", "", JsonConvert.SerializeObject(mimMessageLog), nameLogerError); _logger.Error(JsonConvert.SerializeObject(mimMessageLog), "Validator = false", "LogMimMessage" + nameLogerError); } }
/** * FUNCTION TO WRITE TO THE MESSAGELOG TABLE * * * */ private void write_to_message_log(MessageLog m) { IMessageLogRepository messageLog = new MessageLogRepository(); messageLog.save(m); }