void ModemManager::ModemLocationInterface::propertiesChanged(const QString & interface, const QVariantMap & properties)
{
    mmDebug() << interface << properties.keys();

    if (interface == QString("org.freedesktop.ModemManager.Modem.Location")) {
        QLatin1String capabilities("Capabilities");
        QLatin1String enabled("Enabled");
        QLatin1String signalsLocation("SignalsLocation");
        QLatin1String location("Location");

        QVariantMap::const_iterator it = properties.find(capabilities);
        if ( it != properties.end()) {
            emit capabilitiesChanged((ModemManager::ModemLocationInterface::Capability)it->toUInt());
        }
        it = properties.find(enabled);
        if ( it != properties.end()) {
            emit enabledChanged(it->toBool());
        }
        it = properties.find(signalsLocation);
        if ( it != properties.end()) {
            emit signalsLocationChanged(it->toBool());
        }
        it = properties.find(location);
        if ( it != properties.end()) {
            QVariant v = it.value();
            LocationInformationMap map;
            if (v.canConvert<LocationInformationMap>()) {
                map = v.value<LocationInformationMap>();
            } else {
                mmDebug() << "Error converting LocationInformationMap property";
            }
            emit locationChanged(map);
        }
    }
}
예제 #2
0
void RemoteActivatable::propertiesChanged(const QVariantMap &changedProperties)
{
    Q_D(RemoteActivatable);
    QStringList propKeys = changedProperties.keys();
    QLatin1String deviceUniKey("deviceUni"),
                  activatableTypeKey("activatableType"),
                  sharedKey("shared");
    QVariantMap::const_iterator it = changedProperties.find(deviceUniKey);
    if (it != changedProperties.end())
    {
        d->deviceUni = it->toString();
        propKeys.removeOne(deviceUniKey);
    }
    it = changedProperties.find(activatableTypeKey);
    if (it != changedProperties.end())
    {
        d->activatableType = (Knm::Activatable::ActivatableType)it->toUInt();
        propKeys.removeOne(activatableTypeKey);
    }
    it = changedProperties.find(sharedKey);
    if (it != changedProperties.end())
    {
        d->shared = it->toBool();
        propKeys.removeOne(sharedKey);
    }
    /*if (propKeys.count()) {
        qDebug() << "Unhandled properties: " << propKeys;
    }*/
}
void RemoteInterfaceConnection::icPropertiesChanged(const QVariantMap &changedProperties)
{
    Q_D(RemoteInterfaceConnection);
    QStringList propKeys = changedProperties.keys();
    QLatin1String connectionTypeKey("connectionType"),
                  uuidKey("uuid"),
                  nameKey("name"),
                  iconNameKey("iconName"),
                  activationStateKey("activationState"),
                  hasDefaultRouteKey("hasDefaultRoute");
    QVariantMap::const_iterator it = changedProperties.find(connectionTypeKey);
    if (it != changedProperties.end()) {
        d->connectionType = (Knm::Connection::Type)it->toUInt();
        propKeys.removeOne(connectionTypeKey);
    }
    it = changedProperties.find(uuidKey);
    if (it != changedProperties.end()) {
        d->uuid = it->toString();
        propKeys.removeOne(uuidKey);
    }
    it = changedProperties.find(nameKey);
    if (it != changedProperties.end()) {
        d->name = it->toString();
        propKeys.removeOne(nameKey);
    }
    it = changedProperties.find(iconNameKey);
    if (it != changedProperties.end()) {
        d->iconName = it->toString();
        propKeys.removeOne(iconNameKey);
    }
    it = changedProperties.find(activationStateKey);
    if (it != changedProperties.end()) {
        d->oldActivationState = d->activationState;
        d->activationState = (Knm::InterfaceConnection::ActivationState)it->toUInt();
        emit activationStateChanged(d->oldActivationState, d->activationState);
        propKeys.removeOne(activationStateKey);
    }
    it = changedProperties.find(hasDefaultRouteKey);
    if (it != changedProperties.end()) {
        d->hasDefaultRoute = it->toBool();
        emit hasDefaultRouteChanged(d->hasDefaultRoute);
        propKeys.removeOne(hasDefaultRouteKey);
    }
    /*if (propKeys.count()) {
        kDebug() << "Unhandled properties: " << propKeys;
    }*/
    emit changed();
}