private void onGlobalInfoUpdate(IEnumerable <CCTVGlobalInfo> values, IEnumerable <string> keysUpdated)
 {
     _globalInfo = GetGlobalInfo();
     if (_globalInfo != null)
     {
         if (CCTV1Info == null || CCTV1Info.ServerHost != _globalInfo.CCTV1Host)
         {
             if (CCTV1Info != null)
             {
                 CCTV1Info.Stop();
             }
             CCTV1Info = new CCTVInfo(_globalInfo.CCTV1Host);
             CCTV1Info.Start();
         }
     }
 }
Exemple #2
0
        private void onGlobalInfoUpdate(IEnumerable <string> keysUpdated)
        {
            CCTVGlobalInfo gi = ClientHub.GetGlobalInfo();

            if (gi != null)
            {
                if (CCTV1Info == null || CCTV1Info.ServerHost != gi.CCTV1Host)
                {
                    if (CCTV1Info != null)
                    {
                        CCTV1Info.Stop();
                    }
                    CCTV1Info = new CCTVInfo(gi.CCTV1Host);
                    CCTV1Info.Start();
                    if (_control != null)
                    {
                        _control.CCTV1Info = this.CCTV1Info;
                    }
                }
            }
        }
Exemple #3
0
        private CCTVInfo getCCTVInfo()
        {
            if (_autoGenHub)
            {
                _clientHub.UpdateDefault(CCTVInfoType.GlobalInfo);
            }
            CCTVGlobalInfo gInfo = _clientHub.GetGlobalInfo();

            if (gInfo != null)
            {
                if (_cctvInfo == null || _cctvInfo.ServerHost != gInfo.CCTV1Host)
                {
                    if (_cctvInfo != null)
                    {
                        _cctvInfo.Stop();
                    }
                    _cctvInfo = new CCTVInfo(gInfo.CCTV1Host);
                    _cctvInfo.Start();
                }
            }
            return(_cctvInfo);
        }
Exemple #4
0
        public InfoAdapter(string host, string infoServiceBaseUri)
        {
            _baseUri        = infoServiceBaseUri;
            _globalSync     = new StaticInfoSynchronizer <CCTVGlobalInfo>(_baseUri, "CCTVGlobal", TimeSpan.FromSeconds(5));
            _serverSync     = new StaticInfoSynchronizer <CCTVServerInfo>(_baseUri, "CCTVServer", TimeSpan.Zero);
            _staticSync     = new StaticInfoSynchronizer <CCTVStaticInfo>(_baseUri, "CCTVStatic", TimeSpan.FromSeconds(5));
            _controlSync    = new StaticInfoSynchronizer <CCTVControlConfig>(_baseUri, "CCTVControl", TimeSpan.Zero);
            _cameraSync     = new StaticInfoSynchronizer <CCTVCameraLimits>(_baseUri, "CCTVCameraLimits", TimeSpan.Zero);
            _deviceSync     = new StaticInfoSynchronizer <CCTVDeviceInfo>(_baseUri, "CCTVDeviceInfo", TimeSpan.Zero);
            _dynamicSync    = new StaticInfoSynchronizer <CCTVDynamicInfo>(_baseUri, "CCTVDynamic", TimeSpan.FromSeconds(5));
            _hierarchySync  = new StaticInfoSynchronizer <CCTVHierarchyInfo>(_baseUri, "CCTVHierarchy.Default", TimeSpan.FromSeconds(5));
            _onlineSync     = new StaticInfoSynchronizer <CCTVOnlineStatus>(_baseUri, "CCTVOnlineStatus", TimeSpan.FromSeconds(5));
            _videoTrackSync = new StaticInfoSynchronizer <CCTVVideoTrack>(_baseUri, "CCTVVideoTrack", TimeSpan.FromSeconds(10));
            _videoPosSync   = new StaticInfoSynchronizer <VideoPosition>(_baseUri, "VideoPosition", TimeSpan.FromSeconds(5));
            _videoBufSync   = new StaticInfoSynchronizer <VideoBuffering>(_baseUri, "VideoBuffering", TimeSpan.FromHours(1));

            _globalInfo = new CCTVGlobalInfo()
            {
                CCTV1Host = host,
            };
            _globalSync.ReplaceAll((new CCTVGlobalInfo[] { _globalInfo }).ToDictionary(x => "Default"));

            _info = new CCTVInfo(host);
            _thumbnailProducer = new ThumbnailProducer(_info);
            _thumbnailProducer.ThumbnailEvent += _thumbnailProducer_ThumbnailEvent;

            _info.ConnectedEvent      += _info_ConnectedEvent;
            _info.DisconnectedEvent   += _info_DisconnectedEvent;
            _info.AuthenticationEvent += _info_AuthenticationEvent;
            _info.NodeTreeEvent       += _info_NodeTreeEvent;
            _info.RealtimeInfoEvent   += _info_RealtimeInfoEvent;
            _info.Start();

            var bufferInfo = VideoBufferingInfoProvider.Instance.GetVideoBufferingInfo();

            _videoBufSync.ReplaceAll(bufferInfo.ToDictionary(x => getKey(x)));
        }
 public void PutGlobalInfo(CCTVGlobalInfo info, bool isDeleted)
 {
     PutDefaultInfo(CCTVInfoType.GlobalInfo, "Default", info, isDeleted);
 }
 public StaticInfoClassifier(CCTVGlobalInfo global, StaticInfoSynchronizer <VideoPosition> vpSync)
 {
     _global = global;
     _vpSync = vpSync;
 }