public AddShowViewModel(IInformationProvider infoProvider, List <Show> currentShows)
 {
     Shows = new BindableCollection <Show>();
     informationProvider = infoProvider;
     DisplayName         = "";
     this.currentShows   = currentShows;
 }
Exemple #2
0
        //Here to support dependency injection
        public MainViewModel(IWindowManager windowManager, IInformationProvider infoProvider,
                             IPersistenceManager persistenceManager)
        {
            DisplayName       = "Sojurn";
            wm                = windowManager;
            pm                = persistenceManager;
            this.infoProvider = infoProvider;

            Shows = new CollectionViewSource {
                Source = shows
            };
            Shows.SortDescriptions.Add(new SortDescription("Name", ListSortDirection.Ascending));

            TimeLine = new CollectionViewSource {
                Source = timeLine
            };
            TimeLine.SortDescriptions.Add(new SortDescription("Date", ListSortDirection.Ascending));
            TimeLine.GroupDescriptions.Add(new PropertyGroupDescription("Date"));

            Backlog = new CollectionViewSource {
                Source = backlog
            };
            Backlog.GroupDescriptions.Add(new PropertyGroupDescription("ShowName"));
            Backlog.SortDescriptions.Add(new SortDescription("ShowName", ListSortDirection.Ascending));
            Backlog.SortDescriptions.Add(new SortDescription("SeasonNumber", ListSortDirection.Ascending));
            Backlog.SortDescriptions.Add(new SortDescription("EpisodeNumberThisSeason", ListSortDirection.Ascending));
        }
 public AddShowViewModel(IInformationProvider infoProvider, List<Show> currentShows)
 {
     Shows = new BindableCollection<Show>();
     informationProvider = infoProvider;
     DisplayName = "";
     this.currentShows = currentShows;
 }
Exemple #4
0
        /// <summary>
        /// Initializes a new instance of the <see cref="RequestService"/> class.
        /// </summary>
        /// <param name="httpClient">
        /// The HTTP client
        /// </param>
        /// <param name="jsonParser">
        /// The json parser
        /// </param>
        /// <param name="attributeReader">
        /// The attribute reader.
        /// </param>
        /// <param name="informationProvider">
        /// The information provider.
        /// </param>
        public RequestService(
            IHttpClient httpClient,
            IJsonParser jsonParser,
            IAttributeReader attributeReader,
            IInformationProvider informationProvider)
        {
            if (httpClient == null)
            {
                throw new ArgumentNullException(nameof(httpClient));
            }

            if (jsonParser == null)
            {
                throw new ArgumentNullException(nameof(jsonParser));
            }

            if (attributeReader == null)
            {
                throw new ArgumentNullException(nameof(attributeReader));
            }

            if (informationProvider == null)
            {
                throw new ArgumentNullException(nameof(informationProvider));
            }

            this.httpClient          = httpClient;
            this.jsonParser          = jsonParser;
            this.attributeReader     = attributeReader;
            this.informationProvider = informationProvider;
        }
Exemple #5
0
        public override CommandResultCode Execute(IExecutionContext context, CommandArguments args)
        {
            IInformationProvider provider = Application as IInformationProvider;

            if (provider == null)
            {
                Error.WriteLine("The current context does not support information.");
                return(CommandResultCode.ExecutionFailed);
            }

            if (!args.MoveNext())
            {
                return(CommandResultCode.SyntaxError);
            }

            string infoName = args.Current;

            if (!provider.IsInfoSupported(infoName))
            {
                Error.WriteLine("Information " + infoName + " is not supported by the current context.");
                return(CommandResultCode.ExecutionFailed);
            }

            ColumnDesign[] columns = provider.GetColumns(infoName);
            for (int i = 0; i < columns.Length; i++)
            {
                columns[i].ResetWidth();
            }

            TableRenderer renderer = new TableRenderer(columns, Out);

            // TODO: make it configurable ...
            renderer.EnableHeader = true;
            renderer.EnableFooter = true;

            IList <ColumnValue[]> values = provider.GetValues(infoName);

            for (int i = 0; i < values.Count; i++)
            {
                ColumnValue[] rowValues = values[i];
                renderer.AddRow(rowValues);
            }

            renderer.Flush();
            renderer.CloseTable();
            return(CommandResultCode.Success);
        }
        public MainViewModel(IInformationProvider infoProvider, IPersistenceManager persistenceManager)
        {
            try
            {
                Title = "Sojurn";

                pm = persistenceManager;
                ip = infoProvider;

                Shows = new CollectionViewSource {
                    Source = shows
                };
                Shows.SortDescriptions.Add(new SortDescription("UnwatchedCount", ListSortDirection.Descending));
                Shows.SortDescriptions.Add(new SortDescription("Name", ListSortDirection.Ascending));

                TimeLine = new CollectionViewSource {
                    Source = timeLine
                };
                TimeLine.SortDescriptions.Add(new SortDescription("Date", ListSortDirection.Ascending));
                TimeLine.GroupDescriptions.Add(new PropertyGroupDescription("Date"));

                Backlog = new CollectionViewSource {
                    Source = backlog
                };
                Backlog.GroupDescriptions.Add(new PropertyGroupDescription("ShowName"));
                Backlog.SortDescriptions.Add(new SortDescription("ShowName", ListSortDirection.Ascending));
                Backlog.SortDescriptions.Add(new SortDescription("SeasonNumber", ListSortDirection.Ascending));
                Backlog.SortDescriptions.Add(new SortDescription("EpisodeNumberThisSeason", ListSortDirection.Ascending));

                Version = Assembly.GetExecutingAssembly().GetName().Version.ToString();

                spm = new StreamProviderManager();

                StreamProviders = new ObservableCollection <StreamProvider>(spm.StreamProviders);

                BindCommands();
            }
            catch (Exception ex)
            {
                ErrorManager.Log(ex);
            }
        }
        //Here to support dependency injection
        public MainViewModel(IWindowManager windowManager, IInformationProvider infoProvider,
            IPersistenceManager persistenceManager)
        {
            DisplayName = "Sojurn";
            wm = windowManager;
            pm = persistenceManager;
            this.infoProvider = infoProvider;

            Shows = new CollectionViewSource {Source = shows};
            Shows.SortDescriptions.Add(new SortDescription("Name", ListSortDirection.Ascending));

            TimeLine = new CollectionViewSource {Source = timeLine};
            TimeLine.SortDescriptions.Add(new SortDescription("Date", ListSortDirection.Ascending));
            TimeLine.GroupDescriptions.Add(new PropertyGroupDescription("Date"));

            Backlog = new CollectionViewSource {Source = backlog};
            Backlog.GroupDescriptions.Add(new PropertyGroupDescription("ShowName"));
            Backlog.SortDescriptions.Add(new SortDescription("ShowName", ListSortDirection.Ascending));
            Backlog.SortDescriptions.Add(new SortDescription("SeasonNumber", ListSortDirection.Ascending));
            Backlog.SortDescriptions.Add(new SortDescription("EpisodeNumberThisSeason", ListSortDirection.Ascending));
        }
 public BaseAPIController(IInformationProvider informationProvider)
 {
     _informationProvider = informationProvider;
 }
 public InformationController(IInformationProvider informationProvider)
 {
     _informationProvider = informationProvider;
 }
 public AccountController(IUserLoginProvider userNameProvider, IInformationProvider informationProvider)
 {
     _UserNameProvider    = userNameProvider;
     _informationProvider = informationProvider;
 }