D19677: WIP: Port UDisks to using DBus ObjectManager
Stefan BrĂ¼ns
noreply at phabricator.kde.org
Mon May 27 16:49:06 BST 2019
bruns added a comment.
The UDisksDeviceBackend class serves two functions:
- shared data cache for UDisksDevice instances
- static factory of instances
The manager has everything it needs to function as a factory. The UDisksDeviceBackend would become a representation of the individual UDisks Objects, and would store the interfaces and associated properties. The manager does no store interfaces or properties directly, but only objects, i.e. `QMap<QString, UDiskDeviceBackend*> m_cache; m_cache[udi] = new UDisksDeviceBackend(interfaces_and_properties);
The manager would also act as a dispatcher, demarshaling the DBus messages, and then e.g. calling on propertiesChanged `m_cache[udi]->propertiesChanged(QStringList invalidated, QVariantMap changed)`
As the backend is a shared instance I don't think it can be merged with the device.
REPOSITORY
R245 Solid
REVISION DETAIL
https://phabricator.kde.org/D19677
To: broulik, #frameworks, bruns
Cc: apol, nicolasfella, kde-frameworks-devel, michaelh, ngraham, bruns
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kde-frameworks-devel/attachments/20190527/7ed7dd59/attachment.html>
More information about the Kde-frameworks-devel
mailing list