Example #1
0
        public void Update(StreamHandler handler)
        {
            try
            {
                if (Plugin == null)
                {
                    return;
                }

                if (Plugin.GetStatus(this))
                {
                    if (!Online)
                    {
                        handler.NewOnlineStream(this);
                    }
                    Online = true;
                }
                else
                {
                    if (Online)
                    {
                        handler.NewOfflineStream(this);
                    }
                    Online = false;
                }
            }
            catch (Exception e)
            {
                if (Online)
                {
                    handler.NewOfflineStream(this);
                }
                Online = false;

                Logger.ErrorFormat("While processing stream {0}({1})\n{2}", Name, Url, e);
            }
        }