public void RemoveChannelMonitor(IChannelMonitor monitor) { ReplaceCollection(ref channelMonitors, orig => { var new_monitors = new List <IChannelMonitor>(orig); new_monitors.Remove(monitor); return(new_monitors); }); }
public IDisposable AddMonitor(IChannelMonitor monitor) { ReplaceCollection(ref monitors, orig => orig.Add(monitor)); if (contentHeader != null) { if (ChannelInfo != null) { monitor.OnContentChanged(ChannelContentType.ChannelInfo); } if (ChannelTrack != null) { monitor.OnContentChanged(ChannelContentType.ChannelTrack); } monitor.OnContentChanged(ChannelContentType.ContentHeader); } return(new MonitorSubscription(this, monitor)); }
public void RemoveMonitor(IChannelMonitor monitor) { ReplaceCollection(ref monitors, orig => orig.Remove(monitor)); }
public MonitorSubscription(Channel channel, IChannelMonitor monitor) { this.channel = channel; this.monitor = monitor; }
public ChannelMonitorJob(IChannelMonitor monitor, ISecurity security) { _monitor = monitor; _security = security; }