public static Period Period(Action <EventStack> events = null) { var periodName = PeriodName.From(3, 2019); if (events == null) { return(WalletMate.Domain.Periods.Period.Create(periodName)); } var periodCreated = new PeriodCreated(periodName); var eventStack = new EventStack(); events.Invoke(eventStack); var history = new History(new List <IDomainEvent> { periodCreated }.Concat(eventStack.All()).ToList()); return(new Period(history)); }
internal void Handle(PeriodCreated @event) { _allPeriodNames.Add(PeriodName.From(@event.PeriodName.Month, @event.PeriodName.Year)); }