///////////////////////////////////////////////////////////////////////
        #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());
        }
Ejemplo n.º 3
0
        ///////////////////////////////////////////////////////////////////////
        #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());
        }
Ejemplo n.º 4
0
        /// <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());
        }