public GetPlaylistResultData Transform(string input) { JObject rootNode = JObject.Parse(input); JArray playlistArray = rootNode["playlist"] as JArray; IList <MultimediaItem> playlist = new List <MultimediaItem>(); MultimediaJsonDecoder decoder = new MultimediaJsonDecoder(); foreach (JObject entry in playlistArray) { MultimediaItem multimedia = decoder.Transform(entry); playlist.Add(multimedia); } return(new GetPlaylistResultData(playlist)); }
public GetPlayerStateResultData Transform(string input) { JObject rootNode = JObject.Parse(input); MultimediaJsonDecoder multimediaJsonDecoder = new MultimediaJsonDecoder(); if (rootNode["multimedia"].ToString() == JsonValues.Null) { return(new GetPlayerStateResultData(null, 0, false)); } else { MultimediaItem multimedia = multimediaJsonDecoder.Transform(rootNode["multimedia"] as JObject); int playbackPosition = rootNode["playbackPosition"].ToObject <int>(); bool playing = rootNode["playing"].ToObject <bool>(); return(new GetPlayerStateResultData(multimedia, playbackPosition, playing)); } }