/////////////////////////////////////////////////////////////////////// #region ICloneable Members /// <summary> /// Creates a deep copy of the object. /// </summary> public virtual object Clone() { TsCAeSubscriptionFilters filters = (TsCAeSubscriptionFilters)MemberwiseClone(); filters._categories = (CategoryCollection)_categories.Clone(); filters._areas = (StringCollection)_areas.Clone(); filters._sources = (StringCollection)_sources.Clone(); return(filters); }
/// <summary> /// Constructs a server by de-serializing its OpcUrl from the stream. /// </summary> protected TsCAeSubscription(SerializationInfo info, StreamingContext context) { state_ = (TsCAeSubscriptionState)info.GetValue(Names.State, typeof(TsCAeSubscriptionState)); subscriptionFilters_ = (TsCAeSubscriptionFilters)info.GetValue(Names.Filters, typeof(TsCAeSubscriptionFilters)); attributes_ = (AttributeDictionary)info.GetValue(Names.Attributes, typeof(AttributeDictionary)); name_ = state_.Name; categories_ = new CategoryCollection(subscriptionFilters_.Categories.ToArray()); areas_ = new StringCollection(subscriptionFilters_.Areas.ToArray()); sources_ = new StringCollection(subscriptionFilters_.Sources.ToArray()); }
/////////////////////////////////////////////////////////////////////// #region ISerializable Members /// <summary> /// Contructs a server by de-serializing its OpcUrl from the stream. /// </summary> protected TsCAeSubscription(SerializationInfo info, StreamingContext context) { _state = (Ae.TsCAeSubscriptionState)info.GetValue(Names.STATE, typeof(Ae.TsCAeSubscriptionState)); _filters = (Ae.TsCAeSubscriptionFilters)info.GetValue(Names.FILTERS, typeof(Ae.TsCAeSubscriptionFilters)); _attributes = (AttributeDictionary)info.GetValue(Names.ATTRIBUTES, typeof(AttributeDictionary)); _name = _state.Name; _categories = new CategoryCollection(_filters.Categories.ToArray()); _areas = new StringCollection(_filters.Areas.ToArray()); _sources = new StringCollection(_filters.Sources.ToArray()); }
/// <summary> /// Returns the current filters for the subscription. /// </summary> /// <returns>The current filters for the subscription.</returns> public TsCAeSubscriptionFilters GetFilters() { if (_subscription == null) { throw new NotConnectedException(); } _filters = _subscription.GetFilters(); _categories = new CategoryCollection(_filters.Categories.ToArray()); _areas = new StringCollection(_filters.Areas.ToArray()); _sources = new StringCollection(_filters.Sources.ToArray()); return((TsCAeSubscriptionFilters)_filters.Clone()); }