public LiveTS3DataProvider(TS3ServerInfo ts3ServerInfo)
        {
            _ts3ServerInfo = ts3ServerInfo ?? throw new ArgumentNullException(nameof(ts3ServerInfo));
            if (string.IsNullOrWhiteSpace(ts3ServerInfo.QueryPassword))
            {
                throw new ArgumentNullException(nameof(ts3ServerInfo.QueryPassword));
            }

            // inits the client
            CheckConnection(true);
        }
        public CachedTS3DataProvider(TS3ServerInfo ts3ServerInfo)
        {
            _ts3ServerInfo = ts3ServerInfo ?? throw new ArgumentNullException(nameof(ts3ServerInfo));
            if (String.IsNullOrWhiteSpace(ts3ServerInfo.QueryPassword))
            {
                throw new ArgumentNullException(nameof(ts3ServerInfo.QueryPassword));
            }

            CheckConnection(true);

            // inits the client
            InitUpdateableInfo();
        }