public ServiceDetailProjections() { When <Envelope <GoogleSuiteWasAdded> >(async(context, message, ct) => { await context .ServiceDetails .AddAsync( new ServiceDetail { ServiceId = message.Message.ServiceId, Type = message.Message.ServiceType, Label = message.Message.ServiceLabel, ServiceData = new GoogleSuiteService( new ServiceId(message.Message.ServiceId), new GoogleVerificationToken(message.Message.VerificationToken)).GetServiceData(), Domain = message.Message.DomainName }, ct); }); When <Envelope <ManualWasAdded> >(async(context, message, ct) => { await context .ServiceDetails .AddAsync( new ServiceDetail { ServiceId = message.Message.ServiceId, Type = message.Message.ServiceType, Label = message.Message.ServiceLabel, ServiceData = new ManualService( new ServiceId(message.Message.ServiceId), new ManualLabel(message.Message.ServiceLabel), new RecordSet( message.Message.Records.Select(r => new Record( RecordType.FromValue(r.Type), new TimeToLive(r.TimeToLive), new RecordLabel(r.Label), new RecordValue(r.Value))).ToList())).GetServiceData(), Domain = message.Message.DomainName }, ct); }); When <Envelope <ServiceWasRemoved> >(async(context, message, ct) => { var service = await context .ServiceDetails .FindAsync(message.Message.ServiceId); if (service != null) { context .ServiceDetails .Remove(service); } }); }
public void record_must_be_valid(string recordType, int timeToLive, string recordLabel, string recordValue) { void ValidRecord() => new Dns.Record( RecordType.FromValue(recordType.ToLowerInvariant()), new TimeToLive(timeToLive), new RecordLabel(recordLabel), new RecordValue(recordValue)); var ex = Record.Exception(ValidRecord); Assert.Null(ex); }
private RecordData( [JsonProperty("type")] string type, [JsonProperty("timeToLive")] int timeToLive, [JsonProperty("label")] string label, [JsonProperty("value")] string value) : this( new Record( RecordType.FromValue(type.ToLowerInvariant()), new TimeToLive(timeToLive), new RecordLabel(label), new RecordValue(value))) { }
public void label_cannot_be_invalid(string recordType, int timeToLive, string recordLabel, string recordValue) { void InvalidRecord() => new Dns.Record( RecordType.FromValue(recordType.ToLowerInvariant()), new TimeToLive(timeToLive), new RecordLabel(recordLabel), new RecordValue(recordValue)); var ex = Record.Exception(InvalidRecord); Assert.NotNull(ex); Assert.IsType <InvalidRecordLabelException>(ex); }
private void When(ManualWasAdded @event) { _services.Add( new ServiceId(@event.ServiceId), new ManualService( new ServiceId(@event.ServiceId), new ManualLabel(@event.ServiceLabel), new RecordSet( @event.Records.Select(r => new Record( RecordType.FromValue(r.Type), new TimeToLive(r.TimeToLive), new RecordLabel(r.Label), new RecordValue(r.Value))).ToList()))); }
public Record ToRecord() => new Record( RecordType.FromValue(Type.ToLowerInvariant()), new TimeToLive(TimeToLive), new RecordLabel(Label), new RecordValue(Value));