internal static SharingUpdate DeserializeSharingUpdate(JsonElement element) { SharingUpdateOperationTypes operationType = default; Optional <IList <SharingProfileGroup> > groups = default; foreach (var property in element.EnumerateObject()) { if (property.NameEquals("operationType")) { operationType = new SharingUpdateOperationTypes(property.Value.GetString()); continue; } if (property.NameEquals("groups")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } List <SharingProfileGroup> array = new List <SharingProfileGroup>(); foreach (var item in property.Value.EnumerateArray()) { array.Add(SharingProfileGroup.DeserializeSharingProfileGroup(item)); } groups = array; continue; } } return(new SharingUpdate(operationType, Optional.ToList(groups))); }
internal SharingUpdate(SharingUpdateOperationTypes operationType, IList <SharingProfileGroup> groups) { OperationType = operationType; Groups = groups; }
public SharingUpdate(SharingUpdateOperationTypes operationType) { OperationType = operationType; Groups = new ChangeTrackingList <SharingProfileGroup>(); }