예제 #1
0
        public void GetSession()
        {
            RemoteDataRepository remoteData = new RemoteDataRepository(_baseUrl);
              SessionDto session = null;
              string conferenceSlug = "CodeMash-2013";
              string slug = "Android-Pro-Tips";
              remoteData.GetSession(conferenceSlug, slug, s =>
                                                    {
                                                      session = s;
                                                    });

              Stopwatch stopwatch = new Stopwatch();
              stopwatch.Start();
              bool gotData = false;
              while (session == null && stopwatch.ElapsedMilliseconds < 10000)
              {
            if (session != null)
            {
              session.slug.ShouldEqual(slug);
              gotData = true;
            }
              }

              gotData.ShouldBeTrue();
              session.ShouldNotBeNull();
        }
예제 #2
0
 public void DetailAsync(string conferenceSlug, string sessionSlug)
 {
     var remoteData = new RemoteDataRepository(BaseUrl());
       AsyncManager.OutstandingOperations.Increment();
       remoteData.GetSession(conferenceSlug, sessionSlug, session =>
       {
     AsyncManager.Parameters["session"] = session;
     AsyncManager.OutstandingOperations.Decrement();
       });
 }
예제 #3
0
        protected override void OnNavigatedTo(System.Windows.Navigation.NavigationEventArgs e)
        {
            base.OnNavigatedTo(e);

              var conferenceSlug = NavigationContext.QueryString["conferenceSlug"];
              var sessionSlug = NavigationContext.QueryString["sessionSlug"];

              string baseUrl = "http://api.tekconf.com/v1/";
              var client = new RemoteDataRepository(baseUrl);

              client.GetSession("CodeMash-2012", sessionSlug, session =>
              {
            Deployment.Current.Dispatcher.BeginInvoke(() =>
            {
              DataContext = session;
              Loading.Visibility = Visibility.Collapsed;
            });
              });

              this.ApplicationTitle.Text = "CodeMash";
        }