Manages the list of IntelChannel watched by an instance of IntelReporter.
Inheritance: INestedContainer, INotifyPropertyChanged
        /// <summary>
        ///     Initializes a new instance of the <see cref="IntelReporter"/>
        ///     class and adds it to the specified <see cref="Container"/>.
        /// </summary>
        public IntelReporter(IContainer container)
        {
            Contract.Ensures(this.Container == container);
            Contract.Ensures(Status == IntelStatus.Stopped);
            Contract.Ensures(!IsRunning);
            this.channels = new IntelChannelContainer();
            this.channels.IntelReported += channels_IntelReported;
            this.channels.PropertyChanged += channels_PropertyChanged;
            this.timerSession = new Timer(this.timer_Callback);

            if (container != null) {
                container.Add(this);
            }
        }
 /// <summary>
 /// Initializes a new instance of the <see cref="ChannelSite"/> class.
 /// </summary>
 /// <param name="container">The container.</param>
 /// <param name="component">The component.</param>
 /// <param name="name">The name.</param>
 internal ChannelSite(IntelChannelContainer container,
         IntelChannel component, string name)
 {
     Contract.Requires(container != null);
     Contract.Requires(component != null);
     Contract.Requires(!String.IsNullOrEmpty(name));
     this.container = container;
     this.component = component;
     this.name = name;
 }