public GenericAuditHandler(IBus bus, GlobalEventHandler broadcaster, IDocumentStore store, EventLogMappings mappings) { this.bus = bus; this.broadcaster = broadcaster; this.store = store; this.mappings = mappings; }
public void Handle(IEvent message) { Logger.InfoFormat("Event: {0} emitted", message.GetType().Name); //to prevent a infinite loop if (message is EventLogItemAdded) { return; } if (!EventLogMappings.HasMapping(message)) { return; } var logItem = EventLogMappings.ApplyMapping(message); Session.Store(logItem); Bus.Publish <EventLogItemAdded>(m => { m.RaisedAt = logItem.RaisedAt; m.Severity = logItem.Severity; m.Description = logItem.Description; m.Id = logItem.Id; m.Category = logItem.Category; m.RelatedTo = logItem.RelatedTo; }); }
public void Init() { var temp = new EventLogMappings(); Configure.Instance.ForAllTypes <IEventLogMappingDefinition>(t => { if (t.BaseType == null) { return; } var args = t.BaseType.GetGenericArguments(); if (args.Count() == 1) { temp.mappings.Add(args.Single(), t); } }); Configure.Instance.Configurer.RegisterSingleton <EventLogMappings>(temp); }
public void Init() { var temp = new EventLogMappings(); Configure.Instance.ForAllTypes<IEventLogMappingDefinition>(t => { if (t.BaseType == null) { return; } var args = t.BaseType.GetGenericArguments(); if (args.Count() == 1) { temp.mappings.Add(args.Single(), t); } }); Configure.Instance.Configurer.RegisterSingleton<EventLogMappings>(temp); }
public AuditEventLogWriter(GlobalEventHandler broadcaster, IDocumentStore store, EventLogMappings mappings) { this.broadcaster = broadcaster; this.store = store; this.mappings = mappings; }