Daap.Track.Update C# (CSharp) 메소드

Update() 개인적인 메소드

private Update ( Track track ) : void
track Track
리턴 void
        internal void Update(Track track)
        {
            if (Equals (track))
                return;

            artist = track.Artist;
            album = track.Album;
            title = track.Title;
            year = track.Year;
            format = track.Format;
            duration = track.Duration;
            size = track.Size;
            genre = track.Genre;
            trackNumber = track.TrackNumber;
            trackCount = track.TrackCount;
            dateAdded = track.DateAdded;
            dateModified = track.DateModified;
            bitrate = track.BitRate;

            EmitUpdated ();
        }

Usage Example

예제 #1
0
        private void RefreshTracks(string revquery)
        {
            byte[] tracksData = client.Fetcher.Fetch(String.Format("/databases/{0}/items", id),
                                                     TrackQuery + "&" + revquery);
            ContentNode tracksNode = ContentParser.Parse(client.Bag, tracksData);

            if (IsUpdateResponse(tracksNode))
            {
                return;
            }

            // handle track additions/changes
            foreach (ContentNode trackNode in (ContentNode[])tracksNode.GetChild("dmap.listing").Value)
            {
                Track track    = Track.FromNode(trackNode);
                Track existing = LookupTrackById(track.Id);

                if (existing == null)
                {
                    AddTrack(track);
                }
                else
                {
                    existing.Update(track);
                }
            }

            if ((byte)tracksNode.GetChild("dmap.updatetype").Value == 1)
            {
                // handle track deletions
                ContentNode deleteList = tracksNode.GetChild("dmap.deletedidlisting");

                if (deleteList != null)
                {
                    foreach (ContentNode deleted in (ContentNode[])deleteList.Value)
                    {
                        Track track = LookupTrackById((int)deleted.Value);

                        if (track != null)
                        {
                            RemoveTrack(track);
                        }
                    }
                }
            }
        }