Esempio n. 1
0
        public MainView()
        {
            try
            {
                InitializeComponent();

                log4net.Config.XmlConfigurator.Configure();
                logger.Info("MainWindow.ctor: started");

                tagController      = new TagController();
                trackController    = new TrackController(oldTrackRepository, tagController);
                sourceController   = new SourceController(sourceRepository, trackController);
                playbackController = new PlaybackController(trackController);
                sourceView.Initialize(sourceController, trackController, tagController);
                searchView.Initialize(trackController, tagController);
                playbackView.Initialize(trackController, playbackController);
                mediaPropertyView.Initialize(trackController, tagController);
                mediaListView.Initialize(trackController, tagController, playbackView, mediaPropertyView);

                sourceView.SourceLoaded += sourceLoaded;
                playbackController.CurrentTrackPlayed  += currentTrackPlayed;
                playbackController.CurrentTrackPaused  += currentTrackPaused;
                playbackController.CurrentTrackStopped += currentTrackStopped;
                playbackController.CurrentTrackEnded   += currentTrackEnded;
                trackController.SourceLoadCompleted    += sourceLoadCompleted;

                context = new MultiThreadedContext(this.Dispatcher);

                feedRepository = new FeedRepository();
                feedRepository.Initialize();

                trackRepository = new TrackRepository();
                trackRepository.Initialize();

                //var track = new Models.Tracks.Track();
                //track.Initialize(new EntityInitialState(context, logger));
                //track.Location = new Uri(@"file:///C:/Users/Dan/Music/Tool/Undertow/01%20Intolerance.mp3");
                //var trackId = track.Id;
                //track.AddIdentifier(new Uri("http://allmusic.com"), "R   169347");
                //track.AddIdentifier(new Uri("http://musicbrainz.org/trackId"), "9afffc81-c4b9-46aa-baef-232a45817158");
                //trackRepository.Save(new List<Models.Tracks.ITrack> { track });
                //var x = trackRepository.Lookup(trackId);
                //var y = x;
                //var feeds = feedRepository.Search();
                //var x = feeds.Count();
                //var entityInfo = new EntityInfo(typeof(Models.Tracks.ITrack));
                //var y = entityInfo;

                /*
                 * var feed = new Models.Feeds.Feed();
                 * feed.Initialize(new EntityInitialState(context, logger));
                 * feed.Location = new Uri("http://example.com/feeds/exmaple.xml");
                 * feed.Authors = "Neal Stephenson; William Gibson";
                 * var x = feed.AuthorTags.Count();
                 * var firstIsNew = feed.AuthorTags.FirstOrDefault().IsNew();
                 * var lastIsNew = feed.AuthorTags.LastOrDefault().IsNew();
                 * feedRepository.Save(new List<Models.Feeds.IFeed> { feed });
                 * var lookup = feedRepository.Lookup(feed.Id);
                 * var y = lookup.AuthorTags.Count();
                 */
            }
            catch (Exception ex)
            {
                logger.Error("MainWindow.ctor", ex);
            }
        }