예제 #1
0
 protected BaseApiObject(HttpMessageHandler httpMessageHandler, CancellationTokenSource cts, DispatcherApi dispatcher)
 {
     Cts                 = cts;
     Dispatcher          = dispatcher;
     _httpMessageHandler = httpMessageHandler;
     _inWorkLock         = new object();
     //Client = null;
     CreateClient();
 }
예제 #2
0
        public MailRuCloudApi(IWebProxy proxy = null)
        {
            _cts = new CancellationTokenSource();

            _httpClientHandler = new HttpClientHandler
            {
                Proxy                       = proxy,
                UseProxy                    = proxy != null,
                PreAuthenticate             = true,
                UseDefaultCredentials       = false,
                AllowAutoRedirect           = false,
                MaxAutomaticRedirections    = 1,
                MaxRequestContentBufferSize = int.MaxValue
            };

            _dispatcherClient = new DispatcherApi(_httpClientHandler, _cts);
            _authClient       = new Auth(_httpClientHandler, _cts, _dispatcherClient);
            _metaClient       = new MetaApi(_httpClientHandler, _cts, _dispatcherClient, _authClient);
        }
예제 #3
0
 internal MetaApi(HttpMessageHandler httpMessageHandler, CancellationTokenSource cts, DispatcherApi dispatcher, Auth auth) : base(httpMessageHandler, cts, dispatcher)
 {
     _auth = auth;
 }
예제 #4
0
 internal Auth(HttpMessageHandler httpMessageHandler, CancellationTokenSource cts, DispatcherApi dispatcher) : base(httpMessageHandler, cts, dispatcher)
 {
     _token = string.Empty;
     ResetRefreshToken();
 }