Skip to content
Commit 6f87755c authored by Tatjana Gornak's avatar Tatjana Gornak Committed by Matěj Laitl
Browse files

Biggie: PlaylistFile refactoring, code deduplication, asynchronous loading

FEATURES:
 * Playlist files are now read asynchronously when possible; patch and great
   deal of refactoring by Tatjana Gornak.

Original description:
I've started my changes with an implementation of a ASXPlaylist class,
due this work I've found that implementation of different playlist file
types has different logic, as result I end up with a rewriting
playlist's implementations.

As example of difference:
 - Constructor M3UPlaylist::M3UPlaylist( const KUrl &url ) sets a url,
   but does not load playlist, therefore loading of playlist are
   postponed till data from playlist are actualy needed (lazy loading)
   On the other hand constructor XSPFPlaylist::XSPFPlaylist( const KUrl
   &url, bool autoAppend )  loads playlist.

The main idea of proposed changes is to create a unify code for
processing playlist files:
 - lazy loading
 - common functionality was moved to PlaylistFile.

BUG: 291934
FIXED-IN: 2.8
REVIEW: 107473
DIGEST: Optimization: Amarok now reads playlist files asynchronously
        when possible, thanks to Tatjana Gornak.
CCMAIL: Tatjana Gornak <t.gornak@yandex.ru>
parent df36ed35
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment