Review Request: Use multiple inheritance to get an implementation for statistics handling

Ralf Engels ralf-engels at gmx.de
Thu Aug 30 12:03:59 UTC 2012


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://git.reviewboard.kde.org/r/106276/
-----------------------------------------------------------

Review request for Amarok.


Description
-------

This is try number three to get a consistent implementation of statistics handling.
This time with multiple inheritance.
    
This change will provide a complete implementation of statistics for a couple of collections.
That means that collections will get missing functional implementations e.g. setPlaycount.
    
For the future we will need a single sql table for all statistics and coverage for the ugly cases which are:
- PodcastMeta which currently is not covered.
- SqlMeta which uses it's own table and has problems with restoring statistics.
- A couple of collections that create tracks where the url is changed later on.

Oh, and it's 500 lines less code.


Diffs
-----

  src/core-impl/collections/audiocd/AudioCdMeta.h 73ac547 
  src/core-impl/collections/audiocd/AudioCdMeta.cpp d767125 
  src/core-impl/collections/daap/DaapMeta.h 5278b57 
  src/core-impl/collections/daap/DaapMeta.cpp a2429d7 
  src/core-impl/collections/db/sql/CapabilityDelegateImpl.cpp e344e0f 
  src/core-impl/collections/db/sql/SqlMeta.h 4450dab 
  src/core-impl/collections/db/sql/SqlMeta.cpp c05e563 
  src/core-impl/collections/db/sql/SqlRegistry.h f64b30c 
  src/core-impl/collections/db/sql/SqlRegistry.cpp 1444f94 
  src/core-impl/collections/db/sql/SqlRegistry_p.h a7d4e26 
  src/core-impl/collections/db/sql/SqlRegistry_p.cpp 68cc871 
  src/core-impl/collections/mediadevicecollection/MediaDeviceMeta.h 2d0706e 
  src/core-impl/collections/mediadevicecollection/MediaDeviceMeta.cpp 3946b8f 
  src/core-impl/collections/playdarcollection/PlaydarMeta.h 93d1c2e 
  src/core-impl/collections/playdarcollection/PlaydarMeta.cpp c9b07f3 
  src/core-impl/collections/proxycollection/ProxyCollectionMeta.h e5d7266 
  src/core-impl/collections/proxycollection/ProxyCollectionMeta.cpp 091f5f6 
  src/core-impl/collections/support/MemoryMeta.h 675cf42 
  src/core-impl/collections/upnpcollection/UpnpMeta.h feabc1e 
  src/core-impl/collections/upnpcollection/UpnpMeta.cpp 5ffee54 
  src/core-impl/meta/file/File.h df96a2a 
  src/core-impl/meta/file/File.cpp 46f672b 
  src/core-impl/meta/file/File_p.h f756074 
  src/core-impl/meta/multi/MultiTrack.h 63a8651 
  src/core-impl/meta/proxy/MetaProxy.h 0579d08 
  src/core-impl/meta/proxy/MetaProxy.cpp 51299f8 
  src/core-impl/meta/stream/Stream.h 8b64d89 
  src/core-impl/meta/stream/Stream.cpp 3eb54c7 
  src/core-impl/meta/stream/Stream_p.h 390109a 
  src/core-impl/meta/timecode/TimecodeMeta.h ceb4d66 
  src/core-impl/meta/timecode/TimecodeMeta.cpp f85476d 
  src/core-impl/statistics/providers/tag/TagStatisticsProvider.h df79a00 
  src/core-impl/statistics/providers/url/PermanentUrlStatisticsProvider.h 7b6b3bb 
  src/core-impl/statistics/providers/url/PermanentUrlStatisticsProvider.cpp 9855954 
  src/core/CMakeLists.txt 29a215e 
  src/core/capabilities/Capability.h 8ec6d16 
  src/core/capabilities/StatisticsCapability.h 690ef12 
  src/core/capabilities/StatisticsCapability.cpp 34af392 
  src/core/meta/Meta.h bf2184b 
  src/core/meta/Meta.cpp df45908 
  src/core/podcasts/PodcastMeta.h 0cfaea1 
  src/core/statistics/StatisticsProvider.h 6f54912 
  src/core/statistics/StatisticsProvider.cpp 0b5a788 
  src/databaseimporter/amarok14/FastForwardWorker.cpp 56e319b 
  src/databaseimporter/itunes/ITunesImporterWorker.cpp e5ad5e6 
  src/services/ServiceMetaBase.h 793eb9e 
  src/services/ServiceMetaBase.cpp 039146b 
  src/services/magnatune/MagnatuneMeta.cpp 523617b 
  tests/core-impl/collections/db/sql/TestSqlScanManager.cpp c449216 
  tests/core-impl/meta/file/TestMetaFileTrack.cpp 7549a58 
  tests/core/meta/TestMetaTrack.cpp 0adb763 
  tests/mocks/MetaMock.h b478c87 
  tests/mocks/MockTrack.h 57bc344 

Diff: http://git.reviewboard.kde.org/r/106276/diff/


Testing
-------


Thanks,

Ralf Engels

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/amarok-devel/attachments/20120830/6f2aa655/attachment.html>


More information about the Amarok-devel mailing list