8#include "udisksstoragevolume.h"
13using namespace Solid::Backends::UDisks2;
15StorageVolume::StorageVolume(Device *device)
20StorageVolume::~StorageVolume()
24QString StorageVolume::encryptedContainerUdi()
const
26 const QString
path = m_device->prop(QStringLiteral(
"CryptoBackingDevice")).value<QDBusObjectPath>().
path();
34qulonglong StorageVolume::size()
const
36 return m_device->prop(QStringLiteral(
"Size")).toULongLong();
39QString StorageVolume::uuid()
const
41 return m_device->prop(QStringLiteral(
"IdUUID")).toString();
44QString StorageVolume::label()
const
46 QString label = m_device->prop(QStringLiteral(
"HintName")).toString();
47 if (label.isEmpty()) {
48 label = m_device->prop(QStringLiteral(
"IdLabel")).toString();
50 if (label.isEmpty()) {
51 label = m_device->prop(QStringLiteral(
"Name")).toString();
56QString StorageVolume::fsType()
const
58 return m_device->prop(QStringLiteral(
"IdType")).toString();
63 const QString usage = m_device->prop(QStringLiteral(
"IdUsage")).toString();
65 if (m_device->hasInterface(QStringLiteral(UD2_DBUS_INTERFACE_FILESYSTEM))) {
66 return Solid::StorageVolume::FileSystem;
67 }
else if (m_device->isPartitionTable()) {
68 return Solid::StorageVolume::PartitionTable;
69 }
else if (usage == QLatin1String(
"raid")) {
70 return Solid::StorageVolume::Raid;
71 }
else if (m_device->isEncryptedContainer()) {
72 return Solid::StorageVolume::Encrypted;
73 }
else if (usage == QLatin1String(
"unused") || usage.isEmpty()) {
74 return Solid::StorageVolume::Unused;
76 return Solid::StorageVolume::Other;
80bool StorageVolume::isIgnored()
const
82 if (m_device->prop(QStringLiteral(
"HintIgnore")).toBool()) {
86 const QStringList mountOptions = m_device->prop(QStringLiteral(
"UserspaceMountOptions")).toStringList();
87 if (mountOptions.
contains(QLatin1String(
"x-gdu.hide"))) {
94 if (m_device->isSwap()
95 || ((usg == Solid::StorageVolume::Unused
96 || usg == Solid::StorageVolume::Other
97 || usg == Solid::StorageVolume::PartitionTable)
98 && !m_device->isOpticalDisc())) {
102 const QString backingFile = m_device->prop(QStringLiteral(
"BackingFile")).toString();
106#include "moc_udisksstoragevolume.cpp"
UsageType
This enum type defines the how a volume is used.
QString path(const QString &relativePath)
bool isEmpty() const const
bool startsWith(QChar c, Qt::CaseSensitivity cs) const const
bool contains(QLatin1StringView str, Qt::CaseSensitivity cs) const const