AcoustID.Web.XmlResponseParser.ParseRecording C# (CSharp) Метод

ParseRecording() приватный Метод

private ParseRecording ( System.Xml.Linq.XElement node ) : Recording
node System.Xml.Linq.XElement
Результат Recording
        private Recording ParseRecording(XElement node)
        {
            int duration;
            string id, title;

            TryParseChild(node, "id", out id);
            TryParseChild(node, "title", out title);
            TryParseChild(node, "duration", 0, out duration);
            
            var recording = new Recording(duration, id, title);

            var e = node.Element("artists");

            if (e != null)
            {
                var list = e.Elements("artist");

                foreach (var item in list)
                {
                    recording.Artists.Add(ParseArtist(item));
                }
            }

            e = node.Element("releasegroups");

            if (e != null)
            {
                var list = e.Elements("releasegroup");

                foreach (var item in list)
                {
                    recording.ReleaseGroups.Add(ParseReleaseGroup(item));
                }
            }

            e = node.Element("releases");

            if (e != null)
            {
                var list = e.Elements("release");

                foreach (var item in list)
                {
                    recording.Releases.Add(ParseRelease(item));
                }
            }

            // TODO: parse more meta
            return recording;
        }