diff options
author | Michele Calgaro <[email protected]> | 2019-06-02 15:45:44 +0900 |
---|---|---|
committer | Michele Calgaro <[email protected]> | 2019-07-08 10:33:34 +0900 |
commit | b4754b0e6fc213e0880947cb2c01dfab834fa264 (patch) | |
tree | 3086eb9f5c497c4d8fd9c747f0b8c2922bcb330b /tdeioslave/media/mediamanager/medialist.cpp | |
parent | e44487e1b855106ddf00ade92a25493e11589ca1 (diff) | |
download | tdebase-b4754b0e6fc213e0880947cb2c01dfab834fa264.tar.gz tdebase-b4754b0e6fc213e0880947cb2c01dfab834fa264.zip |
Extended media manager dcop interface by adding functions to
mount/unmount/decrypt/undecrypt a medium by device node (for example /dev/sdc).
Signed-off-by: Michele Calgaro <[email protected]>
Diffstat (limited to 'tdeioslave/media/mediamanager/medialist.cpp')
-rw-r--r-- | tdeioslave/media/mediamanager/medialist.cpp | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/tdeioslave/media/mediamanager/medialist.cpp b/tdeioslave/media/mediamanager/medialist.cpp index d9c4f0eb3..fa7aef5f5 100644 --- a/tdeioslave/media/mediamanager/medialist.cpp +++ b/tdeioslave/media/mediamanager/medialist.cpp @@ -52,6 +52,15 @@ const Medium *MediaList::findByName(const TQString &name) const return m_nameMap[name]; } +const Medium *MediaList::findByNode(const TQString &node) const +{ + kdDebug(1219) << "MediaList::findByNode(" << node << ")" << endl; + + if ( !m_nodeMap.contains(node) ) return 0L; + + return m_nodeMap[node]; +} + const Medium *MediaList::findByClearUdi(const TQString &name) { kdDebug(1219) << "MediaList::findByClearUdi(" << name << ")" << endl; @@ -64,7 +73,6 @@ const Medium *MediaList::findByClearUdi(const TQString &name) return 0L; } - TQString MediaList::addMedium(Medium *medium, bool allowNotification) { kdDebug(1219) << "MediaList::addMedium(@" << medium->id() << ")" << endl; @@ -75,6 +83,12 @@ TQString MediaList::addMedium(Medium *medium, bool allowNotification) m_nameMap[name] = medium; } + TQString node = medium->deviceNode(); + if (!m_nodeMap.contains(node)) + { + m_nodeMap[node] = medium; + } + TQString id = medium->id(); if (m_idMap.contains(id)) { @@ -101,6 +115,7 @@ bool MediaList::removeMedium(const TQString &id, bool allowNotification) Medium *medium = m_idMap[id]; m_idMap.remove(id); m_nameMap.remove(medium->name()); + m_nodeMap.remove(medium->deviceNode()); TQString name = medium->name(); m_media.remove(medium); |