LvmDevice: switch away from manual pointers.
This commit is contained in:
parent
3ccd04e675
commit
844f7b3d59
|
@ -46,9 +46,9 @@ public:
|
||||||
qint64 m_freePE;
|
qint64 m_freePE;
|
||||||
QString m_UUID;
|
QString m_UUID;
|
||||||
|
|
||||||
mutable QStringList* m_LVPathList;
|
mutable QStringList m_LVPathList;
|
||||||
QVector <const Partition*> m_PVs;
|
QVector <const Partition*> m_PVs;
|
||||||
mutable QHash<QString, qint64>* m_LVSizeMap;
|
mutable std::unique_ptr<QHash<QString, qint64>> m_LVSizeMap;
|
||||||
};
|
};
|
||||||
|
|
||||||
/** Constructs a representation of LVM device with initialized LV as Partitions
|
/** Constructs a representation of LVM device with initialized LV as Partitions
|
||||||
|
@ -70,8 +70,8 @@ LvmDevice::LvmDevice(const QString& vgName, const QString& iconName)
|
||||||
d_ptr->m_freePE = getFreePE(vgName);
|
d_ptr->m_freePE = getFreePE(vgName);
|
||||||
d_ptr->m_allocPE = d_ptr->m_totalPE - d_ptr->m_freePE;
|
d_ptr->m_allocPE = d_ptr->m_totalPE - d_ptr->m_freePE;
|
||||||
d_ptr->m_UUID = getUUID(vgName);
|
d_ptr->m_UUID = getUUID(vgName);
|
||||||
d_ptr->m_LVPathList = new QStringList(getLVs(vgName));
|
d_ptr->m_LVPathList = getLVs(vgName);
|
||||||
d_ptr->m_LVSizeMap = new QHash<QString, qint64>();
|
d_ptr->m_LVSizeMap = std::make_unique<QHash<QString, qint64>>();
|
||||||
|
|
||||||
initPartitions();
|
initPartitions();
|
||||||
}
|
}
|
||||||
|
@ -84,8 +84,6 @@ QVector<const Partition*> LvmDevice::s_DirtyPVs;
|
||||||
|
|
||||||
LvmDevice::~LvmDevice()
|
LvmDevice::~LvmDevice()
|
||||||
{
|
{
|
||||||
delete d_ptr->m_LVPathList;
|
|
||||||
delete d_ptr->m_LVSizeMap;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void LvmDevice::initPartitions()
|
void LvmDevice::initPartitions()
|
||||||
|
@ -243,9 +241,9 @@ const QStringList LvmDevice::deviceNodes() const
|
||||||
return pvList;
|
return pvList;
|
||||||
}
|
}
|
||||||
|
|
||||||
const QStringList LvmDevice::partitionNodes() const
|
const QStringList& LvmDevice::partitionNodes() const
|
||||||
{
|
{
|
||||||
return *LVPathList();
|
return d_ptr->m_LVPathList;
|
||||||
}
|
}
|
||||||
|
|
||||||
qint64 LvmDevice::partitionSize(QString& partitionPath) const
|
qint64 LvmDevice::partitionSize(QString& partitionPath) const
|
||||||
|
@ -536,11 +534,6 @@ QString LvmDevice::UUID() const
|
||||||
return d_ptr->m_UUID;
|
return d_ptr->m_UUID;
|
||||||
}
|
}
|
||||||
|
|
||||||
QStringList* LvmDevice::LVPathList() const
|
|
||||||
{
|
|
||||||
return d_ptr->m_LVPathList;
|
|
||||||
}
|
|
||||||
|
|
||||||
QVector <const Partition*>& LvmDevice::physicalVolumes()
|
QVector <const Partition*>& LvmDevice::physicalVolumes()
|
||||||
{
|
{
|
||||||
return d_ptr->m_PVs;
|
return d_ptr->m_PVs;
|
||||||
|
@ -551,7 +544,7 @@ const QVector <const Partition*>& LvmDevice::physicalVolumes() const
|
||||||
return d_ptr->m_PVs;
|
return d_ptr->m_PVs;
|
||||||
}
|
}
|
||||||
|
|
||||||
QHash<QString, qint64>* LvmDevice::LVSizeMap() const
|
std::unique_ptr<QHash<QString, qint64>>& LvmDevice::LVSizeMap() const
|
||||||
{
|
{
|
||||||
return d_ptr->m_LVSizeMap;
|
return d_ptr->m_LVSizeMap;
|
||||||
}
|
}
|
||||||
|
|
|
@ -51,7 +51,7 @@ public:
|
||||||
|
|
||||||
public:
|
public:
|
||||||
const QStringList deviceNodes() const override;
|
const QStringList deviceNodes() const override;
|
||||||
const QStringList partitionNodes() const override;
|
const QStringList& partitionNodes() const override;
|
||||||
qint64 partitionSize(QString& partitionPath) const override;
|
qint64 partitionSize(QString& partitionPath) const override;
|
||||||
|
|
||||||
static QVector<const Partition*> s_DirtyPVs;
|
static QVector<const Partition*> s_DirtyPVs;
|
||||||
|
@ -98,12 +98,11 @@ public:
|
||||||
qint64 allocatedPE() const;
|
qint64 allocatedPE() const;
|
||||||
qint64 freePE() const;
|
qint64 freePE() const;
|
||||||
QString UUID() const;
|
QString UUID() const;
|
||||||
QStringList* LVPathList() const;
|
|
||||||
QVector <const Partition*>& physicalVolumes();
|
QVector <const Partition*>& physicalVolumes();
|
||||||
const QVector <const Partition*>& physicalVolumes() const;
|
const QVector <const Partition*>& physicalVolumes() const;
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
QHash<QString, qint64>* LVSizeMap() const;
|
std::unique_ptr<QHash<QString, qint64>>& LVSizeMap() const;
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -52,7 +52,7 @@ public:
|
||||||
/**
|
/**
|
||||||
* @return list of logical partition's path.
|
* @return list of logical partition's path.
|
||||||
*/
|
*/
|
||||||
virtual const QStringList partitionNodes() const = 0;
|
virtual const QStringList& partitionNodes() const = 0;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @return size of logical partition at the given path in bytes.
|
* @return size of logical partition at the given path in bytes.
|
||||||
|
|
Loading…
Reference in New Issue