public void FetchNews_async()
        {
            var ctx = new CIAPI.Rpc.Client(RPC_URI);
            //var gate = new AutoResetEvent(false);
            ctx.BeginLogIn(USERNAME, PASSWORD, a =>
            {
                ctx.EndLogIn(a);

                ctx.BeginListNewsHeadlines("UK", 10, newsResult =>
                {

                    ListNewsHeadlinesResponseDTO news = ctx.EndListNewsHeadlines(newsResult);

                    //do something with the news

                    ctx.BeginLogOut(result=>
                        {
                           // gate.Set();

                        }, null);
                }, null);
            }, null);

               // gate.WaitOne();
        }
        public void FetchNews_async()
        {
            var ctx  = new CIAPI.Rpc.Client(RPC_URI);
            var gate = new AutoResetEvent(false);

            ctx.BeginLogIn(USERNAME, PASSWORD, a =>
            {
                ctx.EndLogIn(a);

                ctx.BeginListNewsHeadlines("UK", 10, newsResult =>
                {
                    ListNewsHeadlinesResponseDTO news = ctx.EndListNewsHeadlines(newsResult);

                    //do something with the news

                    ctx.BeginLogOut(result =>
                    {
                        gate.Set();
                    }, null);
                }, null);
            }, null);

            gate.WaitOne();
        }
Exemplo n.º 3
0
        public void CanGetNewsHeadlinesAsync()
        {

            var requestFactory = new TestRequestFactory();

            var throttleScopes = new Dictionary<string, IThrottedRequestQueue>
                {
                    {"data", new ThrottedRequestQueue(TimeSpan.FromSeconds(5), 30, 10)},
                    {"trading", new ThrottedRequestQueue(TimeSpan.FromSeconds(3), 1, 10)}
                };

            requestFactory.CreateTestRequest(NewsHeadlines14);

            var ctx = new CIAPI.Rpc.Client(new Uri(TestConfig.ApiUrl), new RequestCache(), requestFactory, throttleScopes, 3)
            {
                UserName = TestConfig.ApiUsername,
                SessionId = TestConfig.ApiTestSessionId
            };


            ctx.BeginListNewsHeadlines("UK", 14, ar =>
                {
                    EnqueueCallback(() =>
                                        {
                                            ListNewsHeadlinesResponseDTO response = ctx.EndListNewsHeadlines(ar);
                                            Assert.AreEqual(14, response.Headlines.Length);
                                        });
                    EnqueueTestComplete();
                }, null);

        }