public MoviesController( IMoviesModel moviesModel, NLog.ILogger logger, ISettingsService settings) { this.moviesModel = moviesModel; this.logger = logger; this.settings = settings; }
public MovieListUpdateService( IMoviesModel moviesModel, NLog.ILogger logger, ISettingsService settings) { this.moviesModel = moviesModel; this.logger = logger; this.settings = settings; }
public MoviesViewModel(IMoviesModel moviesModel) { _moviesModel = moviesModel; _cds.Add(_moviesModel.RemainingPages.Subscribe(OnRemainingPagesChanged)); var itemsObservable = _moviesModel.Movies.Connect(); var operations = itemsObservable .Transform(CreateEntryViewModel) .Bind(out _movies) .Subscribe(); _cds.Add(operations); // Throttle search for 100ms var searchTextChanged = Observable.FromEventPattern <PropertyChangedEventHandler, PropertyChangedEventArgs>( ev => PropertyChanged += ev, ev => PropertyChanged -= ev) .Where(ev => ev.EventArgs.PropertyName == "SearchText") .Throttle(TimeSpan.FromMilliseconds(100)) .Select(args => SearchText); _cds.Add(searchTextChanged.Subscribe(pattern => Search())); }