public void AddEmittedEvent(Type aggregateRootType, DomainEvent e) { e.Meta[DomainEvent.MetadataKeys.Owner] = _typeNameMapper.GetName(aggregateRootType); e.Meta[DomainEvent.MetadataKeys.Type] = _typeNameMapper.GetName(e.GetType()); Events.Add(e); }
public void AddEmittedEvent <TAggregateRoot>(DomainEvent <TAggregateRoot> e) where TAggregateRoot : AggregateRoot { e.Meta[DomainEvent.MetadataKeys.Owner] = _typeNameMapper.GetName(typeof(TAggregateRoot)); e.Meta[DomainEvent.MetadataKeys.Type] = _typeNameMapper.GetName(e.GetType()); Events.Add(e); }
void SetMetadata <TAggregateRoot>(string aggregateRootId, DomainEvent <TAggregateRoot> domainEvent) where TAggregateRoot : AggregateRoot { var now = GetNow(); domainEvent.Meta[DomainEvent.MetadataKeys.AggregateRootId] = aggregateRootId; domainEvent.Meta[DomainEvent.MetadataKeys.SequenceNumber] = _eventStore.GetNextSeqNo(aggregateRootId).ToString(Metadata.NumberCulture); domainEvent.Meta[DomainEvent.MetadataKeys.Owner] = _domainTypeNameMapper.GetName(typeof(TAggregateRoot)); domainEvent.Meta[DomainEvent.MetadataKeys.Type] = _domainTypeNameMapper.GetName(domainEvent.GetType()); domainEvent.Meta[DomainEvent.MetadataKeys.TimeUtc] = now.ToString("u"); domainEvent.Meta.TakeFromAttributes(domainEvent.GetType()); domainEvent.Meta.TakeFromAttributes(typeof(TAggregateRoot)); EnsureSerializability(domainEvent); }
public CommandProcessingResult ProcessCommand(Command command) { if (!command.Meta.ContainsKey(DomainEvent.MetadataKeys.CommandTypeName)) { var commandTypeName = _domainTypeNameMapper.GetName(command.GetType()); command.Meta[DomainEvent.MetadataKeys.CommandTypeName] = commandTypeName; } return(_innerCommandProcessor.ProcessCommand(command)); }