/*! * Reads the setting value for the given key from cenrep */ QVariant XQSettingsManager::readItemValue(const XQSettingsKey& settkey, XQSettingsManager::Type /*type*/) { CX_DEBUG_ENTER_FUNCTION(); mError = XQSettingsManager::NoError; if(mStore.contains(settkey.key())) { return mStore[settkey.key()]; } return QVariant(1); }
bool CPublishAndSubscribeHandler::handleStopMonitoring(const XQSettingsKey& key, TInt& error) { if (!m_monitors.contains(key.key())) { error = KErrNotFound; return false; } const long int itemKey = key.key(); CPubSubMonitor* monitor = m_monitors[itemKey]; m_monitors.remove(itemKey); delete monitor; return error == KErrNone; }
bool CPublishAndSubscribeHandler::handleStartMonitoring(const XQSettingsKey& key, XQSettingsManager::Type type, MSettingsHandlerObserver& observer, TInt& error) { if (m_monitors.contains(key.key())) { error = KErrAlreadyExists; return false; } CPubSubMonitor* newMonitor = new CPubSubMonitor(key, type, observer); if (newMonitor) { m_monitors[key.key()] = newMonitor; error = newMonitor->StartMonitoring(); return error == KErrNone; } error = KErrNoMemory; return false; }
/*! Compares the two given keys. \param settingsKey XQSettingsKey \param psSettingsKey XQPublishAndSubscribeSettingsKey \return <code>true</code> if the target, uid and key values match, otherwise returns <code>false</code> */ bool NmUiEventsNotifier::keysEqual( const XQSettingsKey& settingsKey, const XQPublishAndSubscribeSettingsKey& psSettingsKey) const { return ((settingsKey.target() == psSettingsKey.target()) && (settingsKey.uid() == psSettingsKey.uid()) && (settingsKey.key() == psSettingsKey.key())); }
/*! * write value to cenrep key */ bool XQSettingsManager::writeItemValue(const XQSettingsKey& key, const QVariant& value) { CX_DEBUG_ENTER_FUNCTION(); mError = XQSettingsManager::NoError; mStore[key.key()] = value; CX_DEBUG_EXIT_FUNCTION(); return true; }
QVariant SettingsHandlerBase::handleReadItemValue(const XQSettingsKey& key, XQSettingsManager::Type type, TInt& error) { const TInt KRBufDefaultLength = 32; switch(type) { case XQSettingsManager::TypeVariant: { //Try to read TInt TInt intValue; error = getValue(key.key(), intValue); if (error == KErrNone) { return QVariant(intValue); } //Try to read TReal TReal realValue; error = getValue(key.key(), realValue); if (error == KErrNone) { return QVariant(realValue); } //Try to read RBuf8 QVariant byteArrayVariant; TRAP(error, RBuf8 tdes8Value; tdes8Value.CreateL(KRBufDefaultLength); CleanupClosePushL(tdes8Value); getValueL(key.key(), tdes8Value); byteArrayVariant.setValue(QByteArray((const char*)tdes8Value.Ptr(), tdes8Value.Length())); CleanupStack::PopAndDestroy(&tdes8Value); ) if (error == KErrNone) { return byteArrayVariant; } break; } case XQSettingsManager::TypeInt: { //Try to read TInt TInt intValue; error = getValue(key.key(), intValue); if (error == KErrNone) { return QVariant(intValue); } break; } case XQSettingsManager::TypeDouble: { //Try to read TReal TReal realValue; error = getValue(key.key(), realValue); if (error == KErrNone) { return QVariant(realValue); } break; } case XQSettingsManager::TypeString: { //Try to read RBuf8 QVariant stringVariant; TRAP(error, RBuf16 tdes16Value; tdes16Value.CreateL(KRBufDefaultLength); CleanupClosePushL(tdes16Value); getValueL(key.key(), tdes16Value); stringVariant.setValue(QString::fromUtf16(tdes16Value.Ptr(), tdes16Value.Length())); CleanupStack::PopAndDestroy(&tdes16Value); ) if (error == KErrNone) { return stringVariant; } break; }