Exemple #1
0
        public void RecordDeliveryAttempt(DateTimeOffset deliveryAttemptTimestamp)
        {
            var updatedDeliveryAttempts = DeliveryAttempts
                                          .Union(new[] { deliveryAttemptTimestamp })
                                          .OrderBy(d => d)
                                          .ToArray();

            DeliveryAttempts = updatedDeliveryAttempts;
        }
Exemple #2
0
 public bool Equals(Snapshot other)
 {
     if (ReferenceEquals(null, other))
     {
         return(false);
     }
     if (ReferenceEquals(this, other))
     {
         return(true);
     }
     return(Equals(Payload, other.Payload) &&
            string.Equals(EmitterId, other.EmitterId) &&
            Equals(LastEvent, other.LastEvent) &&
            Equals(CurrentTime, other.CurrentTime) &&
            SequenceNr == other.SequenceNr &&
            DeliveryAttempts.SetEquals(other.DeliveryAttempts) &&
            PersistOnEventRequests.SetEquals(other.PersistOnEventRequests));
 }
Exemple #3
0
 public Snapshot AddDeliveryAttempt(DeliveryAttempt deliveryAttempt) =>
 new Snapshot(Payload, EmitterId, LastEvent, CurrentTime, SequenceNr, DeliveryAttempts.Add(deliveryAttempt), PersistOnEventRequests);