/// <summary> /// Create an instance of the HealthRecordItemChangedSubscription class, specifying the delivery mechanism and the /// set of type ids on which to send event notifications. /// </summary> /// <param name="commonSubscriptionData">The common subscription data to associate with this subscription.</param> /// <param name="typeIds">The type ids on which to send event notifications</param> public HealthRecordItemChangedSubscription(CommonSubscriptionData commonSubscriptionData, IList<Guid> typeIds) : base(commonSubscriptionData) { HealthRecordItemChangedFilter filter = new HealthRecordItemChangedFilter(typeIds); if (filter.TypeIds.Count != 0) { _filters.Add(filter); } }
internal override void ParseXml(XPathNavigator navigator) { Validator.ThrowIfNavigatorNull(navigator); XPathNavigator recordItemChangedNav = navigator.SelectSingleNode("record-item-changed-event"); Validator.ThrowArgumentExceptionIf(recordItemChangedNav == null, "navigator", "MissingRecordItemChangedNode"); XPathNavigator filtersNav = recordItemChangedNav.SelectSingleNode("filters"); Validator.ThrowArgumentExceptionIf(filtersNav == null, "navigator", "MissingFiltersNode"); XPathNodeIterator filters = filtersNav.Select("filter"); _filters.Clear(); foreach (XPathNavigator filterNav in filters) { HealthRecordItemChangedFilter filter = new HealthRecordItemChangedFilter(); filter.ParseXml(filterNav); _filters.Add(filter); } }