messagingapp/msgsettings/msgsettingsmw/src/smssettingsprivate.cpp
changeset 25 84d9eb65b26f
parent 23 238255e8b033
child 27 e4592d119491
child 37 518b245aa84c
child 79 2981cb3aa489
--- a/messagingapp/msgsettings/msgsettingsmw/src/smssettingsprivate.cpp	Fri Apr 16 14:56:15 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,397 +0,0 @@
-/*
- * Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
- * All rights reserved.
- * This component and the accompanying materials are made available
- * under the terms of "Eclipse Public License v1.0"
- * which accompanies this distribution, and is available
- * at the URL "http://www.eclipse.org/legal/epl-v10.html".
- *
- * Initial Contributors:
- * Nokia Corporation - initial contribution.
- *
- * Contributors:
- *
- * Description:  This provides the messaging mw interface for sms 
- *
- */
-
-#include <commdb.h>
-#include <commdbconnpref.h>
-#include <msvapi.h>
-#include <msvstd.h>
-#include <msvuids.h>
-#include <csmsaccount.h>
-#include <smutset.h>
-#include "debugtraces.h"
-
-
-#include "smssettingsprivate.h"
-#include "msgsettingsutil.h"
-
-
-const TInt KUniSmsSCStringLength = 50;
-
-/**
- * Message Server session event handler 
- */
-class CObserver : public MMsvSessionObserver
-{
-public:
-    void HandleSessionEvent(TMsvSessionEvent /*aEvent*/, TAny* /*aArg1*/,
-                            TAny* /*aArg2*/, TAny* /*aArg3*/)
-    {
-    }
-
-    void HandleSessionEventL(TMsvSessionEvent /*aEvent*/, TAny* /*aArg1*/,
-                             TAny* /*aArg2*/, TAny* /*aArg3*/)
-    {
-    }
-};
-
-//two phase constructor
-SmsSettingsPrivate* SmsSettingsPrivate::NewL()
-{
-    SmsSettingsPrivate* self = new (ELeave) SmsSettingsPrivate();
-    CleanupStack::PushL(self);
-    self->ConstructL();
-    CleanupStack::Pop();
-    return self;
-}
-
-//2nd phase constructor
-void SmsSettingsPrivate::ConstructL()
-{
-    createRepositoryL();
-}
-
-//---------------------------------------------------------------
-// SmsSettingsPrivate::SmsSettingsPrivate
-// @see header
-//---------------------------------------------------------------
-SmsSettingsPrivate::SmsSettingsPrivate()
-{
-    //do nothing
-}
-
-//---------------------------------------------------------------
-// SmsSettingsPrivate::~SmsSettingsPrivate
-// @see header
-//---------------------------------------------------------------
-SmsSettingsPrivate::~SmsSettingsPrivate()
-{
-    //do nothing
-}
-
-//---------------------------------------------------------------
-// SmsSettingsPrivate::createRepository
-// @see header
-//---------------------------------------------------------------
-void SmsSettingsPrivate::createRepositoryL()
-{
-    CObserver* pObserver = new (ELeave) CObserver();
-    CleanupStack::PushL(pObserver);
-
-    TMsvSelectionOrdering ordering;
-    CMsvSession* iMsvSession = CMsvSession::OpenSyncL(*pObserver);
-    CleanupStack::PushL(iMsvSession);
-    CMsvEntry* root = CMsvEntry::NewL(*iMsvSession,
-                                      KMsvRootIndexEntryId,
-                                      ordering);
-    CleanupStack::PushL(root);
-
-    //then do not create a new entry
-    TMsvId firstId;
-    TRAPD(err, TSmsUtilities::ServiceIdL(*root,firstId));
-    if (err == KErrNotFound)
-    {
-        TMsvEntry entry;
-        entry.iMtm = KUidMsgTypeSMS;
-        entry.iType = KUidMsvServiceEntry;
-        entry.SetReadOnly(EFalse);
-        entry.SetVisible(EFalse);
-        entry.iDate.UniversalTime();
-        entry.iDetails.Set(_L("Nokiatest"));
-
-        root->SetEntryL(KMsvRootIndexEntryId);
-        root->CreateL(entry);
-		}
-		
-        //create a dummy entry
-    CSmsAccount* smsAccount = CSmsAccount::NewLC();
-
-    CSmsSettings* smsSettings = CSmsSettings::NewLC();
-
-    smsAccount->LoadSettingsL(*smsSettings);
-    smsSettings->SetValidityPeriod(ESmsVPMaximum);
-    smsSettings->SetReplyQuoted(ETrue);
-    smsSettings->SetRejectDuplicate(ETrue);
-    smsSettings->SetDelivery(ESmsDeliveryImmediately);
-    smsSettings->SetDeliveryReport(EFalse);
-    smsSettings->SetReplyPath(EFalse);
-    smsSettings->SetMessageConversion((TSmsPIDConversion) 0);
-    smsSettings->SetCanConcatenate(ETrue);
-    smsSettings->SetCharacterSet(TSmsDataCodingScheme::ESmsAlphabet7Bit);
-    smsSettings->SetValidityPeriodFormat(TSmsFirstOctet::ESmsVPFInteger);
-    smsSettings->SetStatusReportHandling(CSmsSettings::EMoveReportToInboxVisible);
-    smsSettings->SetSpecialMessageHandling(CSmsSettings::EMoveReportToInboxVisible);
-    smsSettings->SetSmsBearer((CSmsSettings::TMobileSmsBearer) 3);
-    smsSettings->SetCommDbAction(CSmsSettings::EStoreToCommDb);
-    smsSettings->SetSmsBearerAction(CSmsSettings::EStoreToCommDb);
-
-    smsAccount->SaveSettingsL(*smsSettings);
-
-    CleanupStack::PopAndDestroy(2);
-   	CleanupStack::PopAndDestroy(3);
-}
-
-void SmsSettingsPrivate::setDeliveryReport(TBool report)
-{
-    CSmsAccount* smsAccount = CSmsAccount::NewLC();
-    CSmsSettings* smsSettings = CSmsSettings::NewLC();
-
-    smsAccount->LoadSettingsL(*smsSettings);
-
-    smsSettings->SetDeliveryReport(report);
-
-    smsAccount->SaveSettingsL(*smsSettings);
-
-    CleanupStack::PopAndDestroy(2);
-}
-
-void SmsSettingsPrivate::setCharacterEncoding(TBool status)
-{
-    CSmsAccount* smsAccount = CSmsAccount::NewLC();
-    CSmsSettings* smsSettings = CSmsSettings::NewLC();
-
-    smsAccount->LoadSettingsL(*smsSettings);
-
-    if (status == EFalse)
-    {
-        smsSettings->SetCharacterSet(TSmsDataCodingScheme::ESmsAlphabet7Bit);
-    }
-    else
-    {
-        smsSettings->SetCharacterSet(TSmsDataCodingScheme::ESmsAlphabetUCS2);
-    }
-
-    smsAccount->SaveSettingsL(*smsSettings);
-
-    CleanupStack::PopAndDestroy(2);
-}
-
-void SmsSettingsPrivate::settingsDeliverReportAndCharEncoding(
-                                                              TBool& report,
-                                                              TBool& statusEncoding)
-{
-    CSmsAccount* smsAccount = CSmsAccount::NewLC();
-    CSmsSettings* smsSettings = CSmsSettings::NewLC();
-
-    smsAccount->LoadSettingsL(*smsSettings);
-
-    report = smsSettings->DeliveryReport();
-
-    TSmsDataCodingScheme::TSmsAlphabet charSet = smsSettings->CharacterSet();
-
-    statusEncoding = ETrue;
-    if (charSet == TSmsDataCodingScheme::ESmsAlphabet7Bit)
-    {
-        statusEncoding = EFalse;
-    }
-    CleanupStack::PopAndDestroy(2);
-}
-
-void SmsSettingsPrivate::getAllSMSMessageCenter(
-                                                RPointerArray<HBufC>& accessPoints,
-                                                TInt &defaultIndex)
-{
-    CSmsAccount* smsAccount = CSmsAccount::NewLC();
-    CSmsSettings* settings = CSmsSettings::NewLC();
-
-    smsAccount->LoadSettingsL(*settings);
-
-    //save the default index
-    defaultIndex = settings->DefaultServiceCenter();
-
-    int totalSMSc = settings->ServiceCenterCount();
-    for (int index = 0; index < totalSMSc; index++)
-    {
-        TPtrC16 name = settings->GetServiceCenter(index).Name();
-        HBufC* accessName = name.AllocL();
-        accessPoints.AppendL(accessName);
-    }
-
-    CleanupStack::PopAndDestroy(2);
-
-    return;
-}
-
-void SmsSettingsPrivate::setSMSMessageCenter(int index)
-{
-    CSmsAccount* smsAccount = CSmsAccount::NewLC();
-    CSmsSettings* smsSettings = CSmsSettings::NewLC();
-
-    smsAccount->LoadSettingsL(*smsSettings);
-    smsSettings->SetDefaultServiceCenter(index);
-    smsAccount->SaveSettingsL(*smsSettings);
-
-    CleanupStack::PopAndDestroy(2);
-}
-
-void SmsSettingsPrivate::editSMSServiceCentre(HBufC* address, HBufC* name,
-                                              TInt index)
-{
-    CSmsAccount* smsAccount = CSmsAccount::NewLC();
-    CSmsSettings* smsSettings = CSmsSettings::NewLC();
-
-    smsAccount->LoadSettingsL(*smsSettings);
-
-    TInt indexDefault = smsSettings->DefaultServiceCenter();
-    bool flag = false;
-    if (index == indexDefault)
-    {
-        flag = true;
-    }
-
-    //remove the service center
-    smsSettings->RemoveServiceCenter(index);
-    //add a new service center
-    smsSettings->AddServiceCenterL(name->Des(), address->Des());
-
-    if (flag == true)
-    {
-        smsSettings->SetDefaultServiceCenter(smsSettings->ServiceCenterCount()
-                - 1);
-    }
-    smsAccount->SaveSettingsL(*smsSettings);
-
-    CleanupStack::PopAndDestroy(2);
-}
-
-void SmsSettingsPrivate::addSmsMessageCenter(HBufC* address, HBufC* name)
-{
-    CSmsAccount* smsAccount = CSmsAccount::NewLC();
-    CSmsSettings* smsSettings = CSmsSettings::NewLC();
-
-    smsAccount->LoadSettingsL(*smsSettings);
-    smsSettings->AddServiceCenterL(name->Des(), address->Des());
-    smsAccount->SaveSettingsL(*smsSettings);
-
-    CleanupStack::PopAndDestroy(2);
-}
-
-void SmsSettingsPrivate::smsCenterNameAndNumber(int index,
-                                                HBufC** centerNumber,
-                                                HBufC** centerName)
-{
-    CSmsAccount* smsAccount = CSmsAccount::NewLC();
-    CSmsSettings* smsSettings = CSmsSettings::NewLC();
-
-    smsAccount->LoadSettingsL(*smsSettings);
-
-    TPtrC16 addr = smsSettings->GetServiceCenter(index).Address();
-    TPtrC16 name = smsSettings->GetServiceCenter(index).Name();
-
-    (*centerNumber) = addr.AllocL();
-    (*centerName) = name.AllocL();
-
-    CleanupStack::PopAndDestroy(2);
-}
-
-void SmsSettingsPrivate::setEmailGateway(HBufC* emailGateway)
-{
-#ifdef _DEBUG_TRACES_
-    qDebug() << "Enter SmsSettingsPrivate::setEmailGateway" << emailGateway;
-#endif
-
-    
-    TBuf<KUniSmsSCStringLength> emailGateWayNumber;
-    
-    MsgSettingsUtil::WriteEmailGatewayOverSmsSettingsL( 
-                             emailGateway->Des(),
-                             ETrue );
-    
-#ifdef _DEBUG_TRACES_
-    qDebug() << "Exit SmsSettingsPrivate::setEmailGateway";
-#endif
-
-    return;
-}
-
-void SmsSettingsPrivate::setEmailSeriveCenterNumber(HBufC* emailNumber)
-{
-#ifdef _DEBUG_TRACES_
-    qDebug() << "Enter SmsSettingsPrivate::setEmailSeriveCenterNumber"
-            << emailNumber;
-#endif
-
-    
-    MsgSettingsUtil::WriteEmailServiceNumberOverSmsSettingsL(emailNumber->Des(),
-                                                             ETrue );
-    
-#ifdef _DEBUG_TRACES_
-    qDebug() << "Enter SmsSettingsPrivate::setEmailSeriveCenterNumber";
-#endif
-
-    return;
-}
-
-void SmsSettingsPrivate::emailEmailGatewayAndServiceCenterNumber(
-                                                  HBufC** emailGateway,
-                                                  HBufC** serviceNumber)
-{
-#ifdef _DEBUG_TRACES_
-    qDebug()
-            << "Enter SmsSettingsPrivate::emailEmailGatewayAndServiceCenterNumber";
-#endif
-
-    CSmsAccount* smsAccount = CSmsAccount::NewLC();
-    CSmsSettings* smsSettings = CSmsSettings::NewLC();
-
-    smsAccount->LoadSettingsL(*smsSettings);
-
-    TBuf<KUniSmsSCStringLength> emailSmscNumber;
-    TBuf<KUniSmsSCStringLength> emailGateWayNumber;
-
-    TInt readResult = MsgSettingsUtil::ReadEmailOverSmsSettingsL(emailSmscNumber,
-                                               emailGateWayNumber);
-    if (KErrNone == readResult)
-    {
-        // In any otther case we need to show the conf pop-up window
-        if (emailSmscNumber == KNullDesC)
-        {
-            if (smsSettings->DefaultServiceCenter() > 0)
-            {
-                emailSmscNumber = smsSettings->GetServiceCenter(
-                             smsSettings->DefaultServiceCenter()).Address();
-            }
-            else
-            {
-                int totalSMSc = smsSettings->ServiceCenterCount();
-                if (totalSMSc > 0)
-                {
-                    emailSmscNumber
-                        = smsSettings->GetServiceCenter(0).Address();
-                }
-            }
-        }
-    }
-    
-    MsgSettingsUtil::WriteEmailServiceNumberOverSmsSettingsL(
-                                                             emailSmscNumber,
-                                                             ETrue);
-    
-    *emailGateway = emailGateWayNumber.AllocL();
-    *serviceNumber = emailSmscNumber.AllocL();
-    
-    CleanupStack::PopAndDestroy(2); //smssetting and smsaccount
-    
-#ifdef _DEBUG_TRACES_
-    qDebug()
-            << "Enter SmsSettingsPrivate::emailEmailGatewayAndServiceCenterNumber"
-            << serviceNumber << " " << emailGateway;
-#endif
-
-    
-}
-
-//eof