ReceivingAddress ToDomain(ReceivingAddressModel entity) { var r = new ReceivingAddress( entity.Id, BitcoinAddress.Create(entity.Address, this.network), entity.IsLocked, new List <ReceivingAddressReservation>()); foreach (var reservation in entity.Reservations) { r.Reservations.Add(ToDomain(reservation, r)); } return(r); }
public ReceivingAddressReservation( Guid id, ReceivingAddress address, DateTime reservedDate, DateTime?releasedDate) { if (address == null) { throw new ArgumentNullException(nameof(address)); } this.Id = id; this.Address = address; this.ReservedDate = reservedDate; this.ReleasedDate = releasedDate; }
ReceivingAddressReservation ToDomain(ReceivingAddressReservationModel entity, ReceivingAddress address = null) { return(new ReceivingAddressReservation ( entity.Id, address != null ? address : ToDomain(entity.Address), DateTime.SpecifyKind(entity.LockedAt, DateTimeKind.Utc), entity.ReleasedAt.HasValue ? DateTime.SpecifyKind(entity.ReleasedAt.Value, DateTimeKind.Utc) : new Nullable <DateTime>() )); }
ReceivingAddressReservation ToDomain(ReceivingAddressReservationModel entity, ReceivingAddress address = null) { var released = (entity.ReleasedAt != null) ? (DateTime?)DateTime.SpecifyKind(entity.ReleasedAt.Value, DateTimeKind.Utc) : null; return(new ReceivingAddressReservation( entity.Id, address != null ? address : ToDomain(entity.Address), DateTime.SpecifyKind(entity.LockedAt, DateTimeKind.Utc), released)); }