public CommentViewModelCollection(IBaconProvider baconProvider, string permaLink, string subreddit, string subredditId, string targetName) { _timerHandles = new List <WeakReference>(); _state = new Dictionary <object, object>(); _permaLink = permaLink; _subreddit = subreddit; _targetName = targetName; _baconProvider = baconProvider; var settingsService = baconProvider.GetService <ISettingsService>(); if (settingsService.IsOnline()) { _listingProvider = new BaconographyPortable.Model.Reddit.ListingHelpers.PostComments(baconProvider, subreddit, permaLink, targetName); } else { _listingProvider = new BaconographyPortable.Model.KitaroDB.ListingHelpers.PostComments(baconProvider, subredditId, permaLink, targetName); } //dont add to the observable collection all at once, make the view models on the background thread then start a ui timer to add them 10 at a time //to the actual observable collection leaving a bit of time in between so we dont block anything _systemServices = baconProvider.GetService <ISystemServices>(); _systemServices.RunAsync(RunInitialLoad); }
public ThingViewModelCollection(IBaconProvider baconProvider, IListingProvider onlineListingProvider, IListingProvider offlineListingProvider) { _baconProvider = baconProvider; _redditService = _baconProvider.GetService <IRedditService>(); _navigationService = _baconProvider.GetService <INavigationService>(); _userService = _baconProvider.GetService <IUserService>(); _settingsService = _baconProvider.GetService <ISettingsService>(); _onlineListingProvider = onlineListingProvider; _offlineListingProvider = offlineListingProvider; }
public ImageSearchViewModelCollection(IBaconProvider baconProvider, string query) { _baconProvider = baconProvider; _redditService = baconProvider.GetService <IRedditService>(); _imagesService = baconProvider.GetService <IImagesService>(); _settingsService = baconProvider.GetService <ISettingsService>(); //we only want image results and this seems to be the best way to get that var searchQuery = query + " AND (site:'imgur' OR site:'flickr' OR site:'memecrunch' OR site:'quickmeme' OR site:qkme OR site:'min' OR site:'picsarus')"; _onlineListingProvider = new BaconographyPortable.Model.Reddit.ListingHelpers.SearchResults(_baconProvider, searchQuery); _offlineListingProvider = new BaconographyPortable.Model.KitaroDB.ListingHelpers.SearchResults(_baconProvider, searchQuery); }
public async Task StoreOrderedThings(IListingProvider listingProvider) { await Initialize(); }