public void ChangeSeat(SeatId newSeatId)
    {
        if (Status != ReservationStatus.Tentative)
        {
            throw new InvalidOperationException($"Changing seat for the reservation in '{Status}' status is not allowed.");
        }

        var @event = new ReservationSeatChanged(Id, newSeatId);

        Enqueue(@event);
        Apply(@event);
    }
Exemplo n.º 2
0
        public void ChangeSeat(Guid newSeatId)
        {
            Guard.Against.Default(newSeatId, nameof(newSeatId));

            if (Status != ReservationStatus.Tentative)
            {
                throw new InvalidOperationException($"Changing seat for the reservation in '{Status}' status is not allowed.");
            }

            var @event = ReservationSeatChanged.Create(Id, newSeatId);

            Enqueue(@event);
            Apply(@event);
        }
Exemplo n.º 3
0
    public void ChangeSeat(Guid newSeatId)
    {
        if (newSeatId == Guid.Empty)
        {
            throw new ArgumentOutOfRangeException(nameof(newSeatId));
        }

        if (Status != ReservationStatus.Tentative)
        {
            throw new InvalidOperationException($"Changing seat for the reservation in '{Status}' status is not allowed.");
        }

        var @event = ReservationSeatChanged.Create(Id, newSeatId);

        Enqueue(@event);
        Apply(@event);
    }
 public void Apply(ReservationSeatChanged @event)
 {
     SeatId = @event.SeatId;
     Version++;
 }