public MetadataState(MetadataState copyFrom) { ReleaseId = copyFrom.ReleaseId; TrackId = copyFrom.TrackId; Title = copyFrom.Title; Artist = copyFrom.Artist; Album = copyFrom.Album; Genre = copyFrom.Genre; Number = copyFrom.Number; }
public MetadataState Update(MetadataUpdateCommand cmd) { var state = new MetadataState(this); if (cmd.Timestamp > state.Timestamp) { state.TrackId = cmd.TrackId ?? state.TrackId; state.Title = cmd.Title ?? state.Title; state.Artist = cmd.Artist ?? state.Artist; state.Album = cmd.Album ?? state.Album; state.Genre = cmd.Genre ?? state.Genre; state.Number = cmd.Number ?? state.Number; state.Timestamp = cmd.Timestamp; } return(state); }