File indexing completed on 2025-07-06 03:43:58

0001 /*
0002     SPDX-FileCopyrightText: 2006 Davide Bettio <davide.bettio@kdemail.net>
0003 
0004     SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL
0005 */
0006 
0007 #include "fakestorage.h"
0008 #include <QVariant>
0009 
0010 using namespace Solid::Backends::Fake;
0011 
0012 FakeStorage::FakeStorage(FakeDevice *device)
0013     : FakeBlock(device)
0014 {
0015 }
0016 
0017 FakeStorage::~FakeStorage()
0018 {
0019 }
0020 
0021 Solid::StorageDrive::Bus FakeStorage::bus() const
0022 {
0023     QString bus = fakeDevice()->property("bus").toString();
0024 
0025     if (bus == "ide") {
0026         return Solid::StorageDrive::Ide;
0027     } else if (bus == "usb") {
0028         return Solid::StorageDrive::Usb;
0029     } else if (bus == "ieee1394") {
0030         return Solid::StorageDrive::Ieee1394;
0031     } else if (bus == "scsi") {
0032         return Solid::StorageDrive::Scsi;
0033     } else if (bus == "sata") {
0034         return Solid::StorageDrive::Sata;
0035     } else {
0036         return Solid::StorageDrive::Platform;
0037     }
0038 }
0039 
0040 Solid::StorageDrive::DriveType FakeStorage::driveType() const
0041 {
0042     QString type = fakeDevice()->property("major").toString();
0043 
0044     if (type == "disk") {
0045         return Solid::StorageDrive::HardDisk;
0046     } else if (type == "cdrom") {
0047         return Solid::StorageDrive::CdromDrive;
0048     } else if (type == "floppy") {
0049         return Solid::StorageDrive::Floppy;
0050     } else if (type == "tape") {
0051         return Solid::StorageDrive::Tape;
0052     } else if (type == "compact_flash") {
0053         return Solid::StorageDrive::CompactFlash;
0054     } else if (type == "memory_stick") {
0055         return Solid::StorageDrive::MemoryStick;
0056     } else if (type == "smart_media") {
0057         return Solid::StorageDrive::SmartMedia;
0058     } else if (type == "sd_mmc") {
0059         return Solid::StorageDrive::SdMmc;
0060     } else {
0061         return Solid::StorageDrive::HardDisk;
0062     }
0063 }
0064 
0065 bool FakeStorage::isRemovable() const
0066 {
0067     return fakeDevice()->property("isRemovable").toBool();
0068 }
0069 
0070 bool FakeStorage::isHotpluggable() const
0071 {
0072     return fakeDevice()->property("isHotpluggable").toBool();
0073 }
0074 
0075 qulonglong FakeStorage::size() const
0076 {
0077     return fakeDevice()->property("size").toULongLong();
0078 }
0079 
0080 QDateTime FakeStorage::timeDetected() const
0081 {
0082     return fakeDevice()->property("timeDetected").toDateTime();
0083 }
0084 
0085 QDateTime FakeStorage::timeMediaDetected() const
0086 {
0087     return fakeDevice()->property("timeMediaDetected").toDateTime();
0088 }
0089 
0090 #include "moc_fakestorage.cpp"