Library for converting itunes xml files to scala model classes. I made this library for using itunes Tracks and Playlists in some of my projects.
Members:
- tracks: List[Track]
- playlists: List[Playlist]
- builtTime: Long (Parsing and computing of itunes xml data in ms)
- playlistsForTrack: List[Playlist]
Support for:
Playlist ID, Playlist Persistent ID, Parent Persistent ID, Name, Master", Folder, Visible, Music, Distinguished Kind
Members:
- data: PlaylistData
- customValues: Map[String, Any]
- parent: Option[Playlist]
- children: List[Playlist]
Functions:
-
trackSet: Set[Track] (removes duplicate tracks if exist)
-
parentName: name of parent playlist (if exist)
-
containsTrackWithId
-
totalTime: totalTime of of tracks for this Playlist
-
totalTimeString: formatted totalTime of of tracks for this Playlist
Support for:
Track ID, Name, Artist, Album, Composer, Album Artist, Genre, Sample Rate, Bit Rate, Artwork Count, Total Time Year, Play Count, Play Date, Track Type, Location
Members:
- data: PlaylistData
- customValues: Map[String, Any]
Functions:
- totalTimeString: 3m43s (formatted total time)
object MusicDatabaseApp extends App { val path = getClass.getClassLoader.getResource("itunes.xml").getPath val lib = MusicLibrary(path) lib.playlists.foreach(playlist => { println(playlist.name + " : " + playlist.totalTimeString()) }) lib.tracks.foreach(track => { println(track.name + " : " + track.totalTimeString()) }) }