ProjectExplorer: Move common bits of IDeviceFactory::canRestore

... to the single user.

As effect, all but the ios re-implementation are not needed.

Change-Id: I3c8b8c5d4ab3c8eac70c0bd534c5f1b33f8a3063
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
This commit is contained in:
hjk
2018-10-05 12:57:04 +02:00
parent 0c2101d816
commit f2411aa290
17 changed files with 4 additions and 48 deletions

View File

@@ -67,11 +67,6 @@ ProjectExplorer::IDevice::Ptr AndroidDeviceFactory::create() const
return ProjectExplorer::IDevice::Ptr();
}
bool AndroidDeviceFactory::canRestore(const QVariantMap &map) const
{
return ProjectExplorer::IDevice::typeFromMap(map) == deviceType();
}
ProjectExplorer::IDevice::Ptr AndroidDeviceFactory::restore(const QVariantMap &map) const
{
Q_UNUSED(map)

View File

@@ -41,7 +41,6 @@ public:
bool canCreate() const override;
ProjectExplorer::IDevice::Ptr create() const override;
bool canRestore(const QVariantMap &map) const override;
ProjectExplorer::IDevice::Ptr restore(const QVariantMap &map) const override;
};

View File

@@ -68,11 +68,6 @@ IDevice::Ptr BareMetalDeviceConfigurationFactory::create() const
return wizard.device();
}
bool BareMetalDeviceConfigurationFactory::canRestore(const QVariantMap &map) const
{
return IDevice::typeFromMap(map) == deviceType();
}
IDevice::Ptr BareMetalDeviceConfigurationFactory::restore(const QVariantMap &map) const
{
QTC_ASSERT(canRestore(map), return IDevice::Ptr());

View File

@@ -42,7 +42,6 @@ public:
QIcon icon() const override;
ProjectExplorer::IDevice::Ptr create() const override;
bool canRestore(const QVariantMap &map) const override;
ProjectExplorer::IDevice::Ptr restore(const QVariantMap &map) const override;
};

View File

@@ -69,8 +69,6 @@ ProjectExplorer::IDevice::Ptr IosDeviceFactory::create() const
bool IosDeviceFactory::canRestore(const QVariantMap &map) const
{
if (ProjectExplorer::IDevice::typeFromMap(map) != Constants::IOS_DEVICE_TYPE)
return false;
QVariantMap vMap = map.value(QLatin1String(Constants::EXTRA_INFO_KEY)).toMap();
if (vMap.isEmpty()
|| vMap.value(QLatin1String("deviceName")).toString() == QLatin1String("*unknown*"))

View File

@@ -67,11 +67,6 @@ ProjectExplorer::IDevice::Ptr IosSimulatorFactory::create() const
return ProjectExplorer::IDevice::Ptr();
}
bool IosSimulatorFactory::canRestore(const QVariantMap &map) const
{
return ProjectExplorer::IDevice::typeFromMap(map) == deviceType();
}
ProjectExplorer::IDevice::Ptr IosSimulatorFactory::restore(const QVariantMap &map) const
{
QTC_ASSERT(canRestore(map), return ProjectExplorer::IDevice::Ptr());

View File

@@ -41,7 +41,6 @@ public:
bool canCreate() const override;
ProjectExplorer::IDevice::Ptr create() const override;
bool canRestore(const QVariantMap &map) const override;
ProjectExplorer::IDevice::Ptr restore(const QVariantMap &map) const override;
};

View File

@@ -67,11 +67,6 @@ IDevice::Ptr DesktopDeviceFactory::create() const
return IDevice::Ptr();
}
bool DesktopDeviceFactory::canRestore(const QVariantMap &map) const
{
return IDevice::idFromMap(map) == deviceType();
}
IDevice::Ptr DesktopDeviceFactory::restore(const QVariantMap &map) const
{
QTC_ASSERT(canRestore(map), return ProjectExplorer::IDevice::Ptr());

View File

@@ -42,7 +42,6 @@ public:
bool canCreate() const override;
IDevice::Ptr create() const override;
bool canRestore(const QVariantMap &map) const override;
IDevice::Ptr restore(const QVariantMap &map) const override;
};

View File

@@ -337,9 +337,10 @@ void DeviceManager::setDefaultDevice(Core::Id id)
const IDeviceFactory *DeviceManager::restoreFactory(const QVariantMap &map)
{
const Core::Id deviceType = IDevice::typeFromMap(map);
IDeviceFactory *factory = Utils::findOrDefault(IDeviceFactory::allDeviceFactories(),
[&map](IDeviceFactory *factory) {
return factory->canRestore(map);
[&map, deviceType](IDeviceFactory *factory) {
return factory->canRestore(map) && factory->deviceType() == deviceType;
});
if (!factory)

View File

@@ -53,7 +53,7 @@ public:
virtual bool canCreate() const;
virtual IDevice::Ptr create() const = 0;
virtual bool canRestore(const QVariantMap &map) const = 0;
virtual bool canRestore(const QVariantMap &) const { return true; }
virtual IDevice::Ptr restore(const QVariantMap &map) const = 0;
static IDeviceFactory *find(Core::Id type);

View File

@@ -71,11 +71,6 @@ ProjectExplorer::IDevice::Ptr QnxDeviceFactory::create() const
return wizard.device();
}
bool QnxDeviceFactory::canRestore(const QVariantMap &map) const
{
return ProjectExplorer::IDevice::typeFromMap(map) == deviceType();
}
ProjectExplorer::IDevice::Ptr QnxDeviceFactory::restore(const QVariantMap &map) const
{
QTC_ASSERT(canRestore(map), return QnxDevice::Ptr());

View File

@@ -42,8 +42,6 @@ public:
bool canCreate() const override;
ProjectExplorer::IDevice::Ptr create() const override;
bool canRestore(const QVariantMap &map) const override;
ProjectExplorer::IDevice::Ptr restore(const QVariantMap &map) const override;
static Core::Id deviceType();

View File

@@ -62,11 +62,6 @@ IDevice::Ptr GenericLinuxDeviceConfigurationFactory::create() const
return wizard.device();
}
bool GenericLinuxDeviceConfigurationFactory::canRestore(const QVariantMap &map) const
{
return IDevice::typeFromMap(map) == deviceType();
}
IDevice::Ptr GenericLinuxDeviceConfigurationFactory::restore(const QVariantMap &map) const
{
QTC_ASSERT(canRestore(map), return IDevice::Ptr());

View File

@@ -43,7 +43,6 @@ public:
QIcon icon() const override;
ProjectExplorer::IDevice::Ptr create() const override;
bool canRestore(const QVariantMap &map) const override;
ProjectExplorer::IDevice::Ptr restore(const QVariantMap &map) const override;
};

View File

@@ -81,11 +81,6 @@ IDevice::Ptr WinRtDeviceFactory::create() const
return IDevice::Ptr();
}
bool WinRtDeviceFactory::canRestore(const QVariantMap &map) const
{
return IDevice::typeFromMap(map) == deviceType();
}
IDevice::Ptr WinRtDeviceFactory::restore(const QVariantMap &map) const
{
const IDevice::Ptr device(new WinRtDevice);

View File

@@ -40,7 +40,6 @@ public:
QIcon icon() const override;
bool canCreate() const override { return false; }
ProjectExplorer::IDevice::Ptr create() const override;
bool canRestore(const QVariantMap &map) const override;
ProjectExplorer::IDevice::Ptr restore(const QVariantMap &map) const override;
void autoDetect();