public Meetup(MeetupId id, MeetupTitle title) { Id = id; Title = title; Location = Address.None; NumberOfSeats = SeatsNumber.None; TimeRange = DateTimeRange.None; State = MeetupState.Created; EnsureInvariants(); }
public Meetup(MeetupId id, MeetupTitle title, Address location, SeatsNumber numberOfSeats, DateTimeRange timeRange, MeetupState state) { Id = id; Title = title; Location = location; NumberOfSeats = numberOfSeats; TimeRange = timeRange; State = state; EnsureInvariants(State); }
public static MeetupAggregate Build(MeetupId id, params object[] events) { var meetup = new MeetupAggregate(id); events.ToList().ForEach(ev => { meetup.State.EnsureCanRaiseEvent(ev.GetType()); meetup.When(ev); meetup.EnsureInvariants(); }); return(meetup); }
public MeetupAggregate( MeetupId id, MeetupTitle title, ValidatedLocation location, NumberOfSeats seats, MeetupState state, Dictionary <MemberId, DateTime> going, Dictionary <MemberId, DateTime> notGoing) { Id = id; Title = title; Location = location; NumberOfSeats = seats; State = state; _going = going; _notGoing = notGoing; }
public Meetup( MeetupId id, MeetupTitle title, Address location, SeatsNumber numberOfSeats, DateTimeRange timeRange, Dictionary <MemberId, DateTime> membersGoing, Dictionary <MemberId, DateTime> membersNotGoing, MeetupState state) { Id = id; Title = title; Location = location; NumberOfSeats = numberOfSeats; TimeRange = timeRange; State = state; _membersGoing = membersGoing; _membersNotGoing = membersNotGoing; EnsureInvariants(); }
public Meetup(MeetupId id, MeetupTitle title) =>
public MeetupAggregate(MeetupId id, MeetupTitle title, ValidatedLocation location) =>
private MeetupAggregate(MeetupId id) => Id = id;