コード例 #1
0
ファイル: SongMatch.cs プロジェクト: jcheng31/Zunify
        public SongMatch(ZuneTrack original, List<SpotifyTrack> candidates)
        {
            OriginalTrack = original;
            Candidates = candidates;

            if (candidates.Count > 0)
            {
                MatchedTrack = candidates[0];
            }
        }
コード例 #2
0
ファイル: ZuneTrack.cs プロジェクト: jcheng31/Zunify
        public static ZuneTrack FromXElementFactory(XElement element)
        {
            if (element == null)
            {
                throw new ArgumentException("Received Null in factory method.");
            }

            ZuneTrack t = new ZuneTrack
            {
                Title = (string)element.Attribute("trackTitle"),
                AlbumTitle = (string)element.Attribute("albumTitle"),
                Artist = (string)element.Attribute("trackArtist"),
                AlbumArtist = (string)element.Attribute("albumArtist"),
                Duration = (int)element.Attribute("duration"),
                Identifier = (string)element.Attribute("src"),
                IsExplicit = false // We have no way of determining this from playlist info.
            };

            return t;
        }
コード例 #3
0
ファイル: SongMatch.cs プロジェクト: jcheng31/Zunify
        public static async Task<SongMatch> FromZuneTrackFactory(ZuneTrack originalTrack)
        {
            IMusicLookupService lookupService = new SpotifySearchService();
            List<MusicTrack> tracks = await lookupService.FindTracksAsync(originalTrack.Title, originalTrack.Artist, originalTrack.AlbumTitle);

            return new SongMatch(originalTrack, tracks.Cast<SpotifyTrack>().ToList());
        }
コード例 #4
0
ファイル: TrackTests.cs プロジェクト: jcheng31/Zunify
 public void Setup()
 {
     element = XElement.Parse(SampleTrackXml);
     testTrack = ZuneTrack.FromXElementFactory(element);
 }