diff -r 3553901f7fa8 -r 4047d69ee0e4 telephonyserverplugins/attestltsy/handler/src/cltsyphonebookenhandler.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/telephonyserverplugins/attestltsy/handler/src/cltsyphonebookenhandler.cpp Tue Feb 09 12:31:43 2010 +0000 @@ -0,0 +1,198 @@ +// 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: +// CLtsyPhonebookEnHandler + +#include +#include + + + +#include "cltsyphonebookenhandler.h" +#include +#include "ltsymacros.h" +#include "globalphonemanager.h" +#include "atphbkengetinfo.h" +#include "atphbkenread.h" +#include "atphbkenreadall.h" + +CLtsyPhonebookEnHandler::CLtsyPhonebookEnHandler( + CCtsyDispatcherCallback& aCtsyDispatcherCallback,CGlobalPhonemanager* aGloblePhone) + :iCtsyDispatcherCallback(aCtsyDispatcherCallback),iGloblePhone(aGloblePhone) + + { + } + + +CLtsyPhonebookEnHandler::~CLtsyPhonebookEnHandler() + { + } + + +CLtsyPhonebookEnHandler* CLtsyPhonebookEnHandler::NewLC( + CCtsyDispatcherCallback& aCtsyDispatcherCallback,CGlobalPhonemanager* aGloblePhone) + { + TSYLOGENTRYEXIT; + CLtsyPhonebookEnHandler* self = new (ELeave) CLtsyPhonebookEnHandler(aCtsyDispatcherCallback,aGloblePhone); + CleanupStack::PushL(self); + self->ConstructL(); + return self; + } + + +CLtsyPhonebookEnHandler* CLtsyPhonebookEnHandler::NewL(CCtsyDispatcherCallback& aCtsyDispatcherCallback,CGlobalPhonemanager* aGloblePhone) + { + TSYLOGENTRYEXIT; + CLtsyPhonebookEnHandler* self= + CLtsyPhonebookEnHandler::NewLC(aCtsyDispatcherCallback,aGloblePhone); + CleanupStack::Pop(self); + return self; + } + + +void CLtsyPhonebookEnHandler::ConstructL() +/** + * Second phase constructor. + */ + { + TSYLOGENTRYEXIT; + + + } // CLtsyPhonebookEnHandler::ConstructL + +TBool CLtsyPhonebookEnHandler::IsInterfaceSupported(TLtsyDispatchInterfaceApiId aDispatchApiId) +/** + * Returns whether a Dispatch Interface APi is supported or not. + * + * @param aDispatchApiId Id of Dispatch interface being queried + * @return indication whether interface is supported or not + */ + { + + switch(aDispatchApiId) + { + // Insert ApiIds when support is provided in LTSY e.g. + // case MLtsyDispatchPhoneBootNotifySimStatusReady::KLtsyDispatchPhoneBootNotifySimStatusReadyApiId: return ETrue; + case KLtsyDispatchPhonebookEnStoreGetInfoApiId: + return ETrue; + case KLtsyDispatchPhonebookEnStoreReadAllApiId: + return ETrue; + case KLtsyDispatchPhonebookEnStoreReadEntryApiId: + return ETrue; + default: + return EFalse; + } + } + +void CLtsyPhonebookEnHandler::IsCallbackIndicatorSupported(TLtsyDispatchIndIdGroup /*aIdGroup*/, TUint32& /*aIndIdBitMask*/) +/** + * Returns the set of callback indicators that are supported. + * +* @param aIdGroup ID of group that is being queried e.g. aIdGroup=EIndIdGroup1 +* @param aIndIdBitMask [out] argument that should return a bitmask indicating which indicator callbacks are supported. + */ + { + + //Create bitmask with bitset for each indicator ID that is supported. E.g. + /* + if(aIdGroup == EIndIdGroup1) + aIndIdBitMask = KLtsyDispatchPhoneNotifyNetworkModeChangeIndId | + KLtsyDispatchPhoneNotifyEgprsInfoChangeIndId | + KLtsyDispatchPhoneNotifySignalStrengthChangeIndId; + else + aIndIdBitMask = 0; //no indicators from other groups supported + */ + } + + +TInt CLtsyPhonebookEnHandler::HandleStoreGetInfoReqL() +/** + * This request is completed by invoking + * CCtsyDispatcherCallback::CallbackPhonebookEnStoreGetInfoComp() + * + * @return KErrNone on success, KErrNotSupported if this request is not supported, + * or another error code to indicate the failure otherwise. + */ + { + TSYLOGENTRYEXIT; + + TInt ret = iGloblePhone->CheckGlobalPhoneStatus(); + if( KErrNone == ret ) + { + CAtPhbkEnGetInfo* atPhbkEnGetInfo = CAtPhbkEnGetInfo::NewL(*iGloblePhone,iCtsyDispatcherCallback); + //Setting Port active + iGloblePhone->iEventSignalActive = ETrue; + iGloblePhone->SetActiveRequest(atPhbkEnGetInfo); + atPhbkEnGetInfo->StartRequest(); + } + + return TSYLOGSETEXITERR(ret); + } // CLtsyPhonebookEnHandler::HandleStoreGetInfoReqL + + +TInt CLtsyPhonebookEnHandler::HandleStoreReadAllReqL() +/** + * This request is completed by invoking + * CCtsyDispatcherCallback::CallbackPhonebookEnStoreReadAllComp() + * + * @return KErrNone on success, KErrNotSupported if this request is not supported, + * or another error code to indicate the failure otherwise. + */ + { + TSYLOGENTRYEXIT; + + TInt ret = iGloblePhone->CheckGlobalPhoneStatus(); + if( KErrNone == ret ) + { + CAtPhbkEnReadAll* atPhbkEnReadAll = CAtPhbkEnReadAll::NewL(*iGloblePhone,iCtsyDispatcherCallback); + //Setting Port active + iGloblePhone->iEventSignalActive = ETrue; + iGloblePhone->SetActiveRequest(atPhbkEnReadAll); + atPhbkEnReadAll->StartRequest(); + } + + return TSYLOGSETEXITERR(ret); + } // CLtsyPhonebookEnHandler::HandleStoreReadAllReqL + + +TInt CLtsyPhonebookEnHandler::HandleStoreReadEntryReqL(TInt aIndex) +/** + * This request is completed by invoking + * CCtsyDispatcherCallback::CallbackPhonebookEnStoreReadEntryComp() + * + * @param aIndex index of the EN entry. + * + * @return KErrNone on success, KErrNotSupported if this request is not supported, + * or another error code to indicate the failure otherwise. + */ + { + TSYLOGENTRYEXIT; + + TInt ret = iGloblePhone->CheckGlobalPhoneStatus(); + if( KErrNone == ret ) + { + CAtPhbkEnRead* atPhbkEnRead = CAtPhbkEnRead::NewL(*iGloblePhone,iCtsyDispatcherCallback); + //Setting Port active + iGloblePhone->iEventSignalActive = ETrue; + iGloblePhone->SetActiveRequest(atPhbkEnRead); + atPhbkEnRead->SetIndex(aIndex); + atPhbkEnRead->StartRequest(); + } + + return TSYLOGSETEXITERR(ret); + } // CLtsyPhonebookEnHandler::HandleStoreReadEntryReqL + + + + +