/// <summary>
 /// Adds audio from vk.com to collection.
 /// </summary>
 /// <param name="vkAudio">Audio to add.</param>
 /// <param name="audioType">Set AudioType.atFile to save locally not only link, but also .mp3 itself.</param>
 /// <returns>Returns <c>mpAudio</c> instance that refers to the new element of collection.</returns>
 public mpAudio addAudio(PashaAudio vkAudio, AudioType audioType = AudioType.atLink)
 {
     mpAudio audio;
     if (audioType == AudioType.atFile)
         audio = new mpAudioLink(vkAudio);
     else
         audio = new mpLocalAudio(vkAudio);
     audio.Id = ++maxId;
     if (audio.Id == int.MaxValue)
         OptimizeIndex();
     return audio;
 }
Example #2
0
 internal mpLocalAudio(PashaAudio vkAudio)
 {
     Link = mpDataBaseController.Instance().generateFileName();
     HttpWebResponse response =
       (HttpWebResponse)((HttpWebRequest)WebRequest.Create(vkAudio.url)).GetResponse();
     FileStream fs = new FileStream(Link, FileMode.Create);
     Stream rs = response.GetResponseStream();
     rs.CopyTo(fs);
     rs.Close();
     fs.Close();
     Title = vkAudio.title;
     Artist = vkAudio.artist;
 }
Example #3
0
 internal mpAudioLink(PashaAudio vkAudio)
 {
     VKID = vkAudio.aid;
     Link = vkAudio.url;
     Artist = vkAudio.artist;
     Title = vkAudio.title;
 }