Esempio n. 1
0
        /// <summary>
        ///
        /// </summary>
        /// <typeparam name="T"></typeparam>
        /// <param name="relativeURL"></param>
        /// <param name="pComplexity"></param>
        /// <returns></returns>
        private T CallWS <T>(string relativeURL, RequestComplexity pComplexity) where T : class
        {
            var requestUrl = _CurrentConnection.EndsWith("/") ? _CurrentConnection.Substring(0, _CurrentConnection.Length - 1) : _CurrentConnection;

            requestUrl += "/";
            requestUrl += relativeURL.StartsWith("/") ? relativeURL.Substring(1) : relativeURL;
            try
            {
                if (_Client.GetCookieContainer().Count > 0)
                {
                    _Client.RemoveAuthenticationHeaders(CurrentApiKey);
                }
                var          jsonString = _Client.DownloadString(requestUrl, pComplexity);
                var          serializer = new DataContractJsonSerializer(typeof(T));
                MemoryStream ms         = new MemoryStream(Encoding.Unicode.GetBytes(jsonString));
                try
                {
                    T res = serializer.ReadObject(ms) as T;
                    return(res);
                }
                finally
                {
                    ms.Close();
                }
            }
            catch (WebException e)
            {
                LogHelper.Instance.LogError(e.Message);
                return(null);
            }
        }
Esempio n. 2
0
        /// <summary>
        /// Constructor
        /// </summary>
        /// <param name="connection"></param>
        /// <param name="client"></param>
        public CastRepository(WSConnection connection, ICastProxy client)
        {
            _Client = new CastProxy(connection.Login, connection.Password, connection.ApiKey, client?.GetCookieContainer());

            _CurrentConnection = connection.Url;
            _CurrentApiKey     = connection.ApiKey;
        }