private ICollection <TEntity> Query(string url)
        {
            var request  = (HttpWebRequest)WebRequest.Create(url);
            var response = request.GetResponse();
            var result   = XElement.Load(new StreamReader(response.GetResponseStream()));

            return(_factory.Construct(result.Descendants(XmlNodeName).ToList()));
        }
Example #2
0
        public override IEnumerable <AmpachePlaylist> SelectAll()
        {
            var results = base.SelectAll();

            foreach (var playlist in results)
            {
                StringBuilder builder = new StringBuilder();
                builder.AppendFormat(BASE_URL, _handshake.Server, SONG_ACTION, _handshake.Passphrase);
                builder.AppendFormat(FILTER_PARAMETER, playlist.Id);
                var request  = (HttpWebRequest)WebRequest.Create(builder.ToString());
                var response = request.GetResponse();
                var raw      = XElement.Load(new StreamReader(response.GetResponseStream()));
                playlist.Songs = _songFactory.Construct(raw.Descendants("song").ToList()).ToList();
                yield return(playlist);
            }
        }