private async void GetData() { try { if (MasterPRItems != null && MasterPRItems.Count > 0) { return; } await Task.Delay(1000); UserDialogs.Instance.ShowLoading(); MasterPRItems = new ObservableCollection <Models.Repository>(); PRItems = new ObservableCollection <Models.Repository>(); var model = await Github.GetRepositories(Paging); Paging = model.Count / 99; MasterPRItems = new ObservableCollection <Models.Repository>(model); PRItems = MasterPRItems; ErrorMessage = string.Empty; if (MasterPRItems.Count >= 999) { ShowLoadMore = false; } else { ShowLoadMore = true; } } finally { UserDialogs.Instance.HideLoading(); } }
private async void LoadMore(object obj) { if (Paging < 11) { UserDialogs.Instance.ShowLoading(); Paging++; var model = await Github.GetRepositories(Paging); MasterPRItems = new ObservableCollection <Models.Repository>(model); Search(); if (MasterPRItems.Count >= 999) { ShowLoadMore = false; } UserDialogs.Instance.HideLoading(); } }
public async Task <List <QRepository> > GetRepositories() { logger.LogInformation("get repositories"); if (!IsDbExist()) { logger.LogInformation("db not exist"); var user = Environment.GetEnvironmentVariable("GITHUB_TOKEN"); var pass = Environment.GetEnvironmentVariable("ghp") ?? user; var github = new Github(new LoginInfo { User = user, Token = pass, // Organization = "bcircle" Organization = "bcircle-intern" }); using (var db = new LiteDatabase(DbPath)) { logger.LogInformation("get github repositories ..."); var stats = await github.GetRepositories(); logger.LogInformation("get collections"); var col = db.GetCollection <QRepository>("Repositories"); stats.ToList().ForEach(x => { logger.LogInformation("insert data - {0} ", x.Name); col.Insert(x); }); return(stats.ToList()); } } else { using (var db = new LiteDatabase(DbPath)) { var col = db.GetCollection <QRepository>("Repositories"); return(col.FindAll().ToList()); } } }
public void ShouldGetRepository() { var info = LoginInfo(); var github = new Github(info); var repo = github.GetRepositories().Result.ToList(); }