internal static TriggerDependencyReference DeserializeTriggerDependencyReference(JsonElement element) { if (element.TryGetProperty("type", out JsonElement discriminator)) { switch (discriminator.GetString()) { case "TumblingWindowTriggerDependencyReference": return(TumblingWindowTriggerDependencyReference.DeserializeTumblingWindowTriggerDependencyReference(element)); } } TriggerReference referenceTrigger = default; string type = default; foreach (var property in element.EnumerateObject()) { if (property.NameEquals("referenceTrigger")) { referenceTrigger = TriggerReference.DeserializeTriggerReference(property.Value); continue; } if (property.NameEquals("type")) { type = property.Value.GetString(); continue; } } return(new TriggerDependencyReference(type, referenceTrigger)); }
internal static TumblingWindowTriggerDependencyReference DeserializeTumblingWindowTriggerDependencyReference(JsonElement element) { Optional <string> offset = default; Optional <string> size = default; TriggerReference referenceTrigger = default; string type = default; foreach (var property in element.EnumerateObject()) { if (property.NameEquals("offset")) { offset = property.Value.GetString(); continue; } if (property.NameEquals("size")) { size = property.Value.GetString(); continue; } if (property.NameEquals("referenceTrigger")) { referenceTrigger = TriggerReference.DeserializeTriggerReference(property.Value); continue; } if (property.NameEquals("type")) { type = property.Value.GetString(); continue; } } return(new TumblingWindowTriggerDependencyReference(type, referenceTrigger, offset.Value, size.Value)); }
public TumblingWindowTriggerDependencyReference(TriggerReference referenceTrigger) : base(referenceTrigger) { if (referenceTrigger == null) { throw new ArgumentNullException(nameof(referenceTrigger)); } Type = "TumblingWindowTriggerDependencyReference"; }
public TriggerDependencyReference(TriggerReference referenceTrigger) { if (referenceTrigger == null) { throw new ArgumentNullException(nameof(referenceTrigger)); } ReferenceTrigger = referenceTrigger; Type = "TriggerDependencyReference"; }
internal TriggerDependencyReference(string type, TriggerReference referenceTrigger) : base(type) { ReferenceTrigger = referenceTrigger; Type = type ?? "TriggerDependencyReference"; }
internal TumblingWindowTriggerDependencyReference(string type, TriggerReference referenceTrigger, string offset, string size) : base(type, referenceTrigger) { Offset = offset; Size = size; Type = type ?? "TumblingWindowTriggerDependencyReference"; }