diff -r 000000000000 -r 72b543305e3a email/imum/DomainApi/src/ImumDaMailboxUtilitiesImpl.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/email/imum/DomainApi/src/ImumDaMailboxUtilitiesImpl.cpp Thu Dec 17 08:44:11 2009 +0200 @@ -0,0 +1,195 @@ +/* +* Copyright (c) 2006 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: ImumDaMailboxUtilitiesImpl.cpp +* +*/ + + +#include +#include +#include + +#include "ImumDaMailboxUtilitiesImpl.h" + +// ============================ MEMBER FUNCTIONS ============================== + +// ---------------------------------------------------------------------------- +// CImumDaMailboxUtilitiesImpl::CImumDaMailboxUtilitiesImpl() +// ---------------------------------------------------------------------------- +// +CImumDaMailboxUtilitiesImpl::CImumDaMailboxUtilitiesImpl( + CImumInternalApi& aMailboxApi ) + : + iMailboxApi( aMailboxApi ), + iUtils( NULL ) + { + } +// ---------------------------------------------------------------------------- +// CImumDaMailboxUtilitiesImpl::~CImumDaMailboxUtilitiesImpl() +// ---------------------------------------------------------------------------- +// +CImumDaMailboxUtilitiesImpl::~CImumDaMailboxUtilitiesImpl() + { + iUtils = NULL; + } + +// ---------------------------------------------------------------------------- +// CImumDaMailboxUtilitiesImpl::NewL() +// ---------------------------------------------------------------------------- +// +CImumDaMailboxUtilitiesImpl* CImumDaMailboxUtilitiesImpl::NewL( + CImumInternalApi& aMailboxApi) + { + CImumDaMailboxUtilitiesImpl* self = NewLC( aMailboxApi ); + CleanupStack::Pop( self ); + + return self; + } + +// ---------------------------------------------------------------------------- +// CImumDaMailboxUtilitiesImpl::NewLC() +// ---------------------------------------------------------------------------- +// +CImumDaMailboxUtilitiesImpl* CImumDaMailboxUtilitiesImpl::NewLC( + CImumInternalApi& aMailboxApi) + { + CImumDaMailboxUtilitiesImpl* self = + new ( ELeave ) CImumDaMailboxUtilitiesImpl( aMailboxApi ); + + CleanupStack::PushL( self ); + self->ConstructL(); + + return self; + } + +// ---------------------------------------------------------------------------- +// CImumDaMailboxUtilitiesImpl::ConstructL() +// ---------------------------------------------------------------------------- +// +void CImumDaMailboxUtilitiesImpl::ConstructL() + { + iUtils = const_cast( + &iMailboxApi.MailboxUtilitiesL() ); + } + +// ======================= INTERFACE IMPLEMENTATION =========================== + +// ---------------------------------------------------------------------------- +// From class MImumDaMailboxUtilities +// CImumDaMailboxUtilitiesImpl::DefaultMailboxId() +// ---------------------------------------------------------------------------- +// +TMsvId CImumDaMailboxUtilitiesImpl::DefaultMailboxId() const + { + return iUtils->DefaultMailboxId( ETrue ); + } + +// ---------------------------------------------------------------------------- +// From class MImumDaMailboxUtilities +// CImumDaMailboxUtilitiesImpl::IsMailMtm() +// ---------------------------------------------------------------------------- +// +TBool CImumDaMailboxUtilitiesImpl::IsMailMtm( + const TUid& aMtm, + const TBool& aAllowExtended ) const + { + return iUtils->IsMailMtm( aMtm, aAllowExtended ); + } + +// ---------------------------------------------------------------------------- +// From class MImumDaMailboxUtilities +// CImumDaMailboxUtilitiesImpl::IsMailbox() +// ---------------------------------------------------------------------------- +// +TBool CImumDaMailboxUtilitiesImpl::IsMailbox( + const TMsvId aMailboxId ) const + { + return iUtils->IsMailbox( aMailboxId ); + } + +// ---------------------------------------------------------------------------- +// From class MImumDaMailboxUtilities +// CImumDaMailboxUtilitiesImpl::IsMailbox() +// ---------------------------------------------------------------------------- +// +TBool CImumDaMailboxUtilitiesImpl::IsMailbox( + const TMsvEntry& aMailbox ) const + { + return iUtils->IsMailbox( aMailbox ); + } + +// ---------------------------------------------------------------------------- +// From class MImumDaMailboxUtilities +// CImumDaMailboxUtilitiesImpl::GetMailboxEntryL() +// ---------------------------------------------------------------------------- +// +TMsvEntry CImumDaMailboxUtilitiesImpl::GetMailboxEntryL( + const TMsvId aMailboxId, + const TImumDaMboxRequestType& aType ) const + { + return iUtils->GetMailboxEntryL( + aMailboxId, + static_cast( aType ) ); + } + +// ---------------------------------------------------------------------------- +// From class MImumDaMailboxUtilities +// CImumDaMailboxUtilitiesImpl::GetMailboxEntriesL() +// ---------------------------------------------------------------------------- +// +const TUid& CImumDaMailboxUtilitiesImpl::GetMailboxEntriesL( + const TMsvId aMailboxId, + RMsvEntryArray& aEntries, + const TBool aResetArray ) const + { + return iUtils->GetMailboxEntriesL( + aMailboxId, + aEntries, + aResetArray ); + } + +// --------------------------------------------------------------------------- +// From class MImumDaMailboxUtilities. +// CImumDaMailboxUtilitiesImpl::IsMailboxHealthy() +// --------------------------------------------------------------------------- +// +TBool CImumDaMailboxUtilitiesImpl::IsMailboxHealthy( + const TMsvId aMailboxId ) const + { + TBool healthy = EFalse; + TRAP_IGNORE( healthy = iMailboxApi.HealthServicesL().IsMailboxHealthy( aMailboxId ) ); + // If HealthServicesL should leave, healthy == EFalse; + + return healthy; + } + + +// ---------------------------------------------------------------------------- +// From class MImumDaMailboxUtilities +// CImumDaMailboxUtilitiesImpl::GetMailboxesL() +// ---------------------------------------------------------------------------- +// +MImumDaMailboxUtilities::RMailboxIdArray + CImumDaMailboxUtilitiesImpl::GetMailboxesL( + const TInt64 aFlags) const + { + RMailboxIdArray aMailboxArray; + + iMailboxApi.HealthServicesL().GetMailboxList( + aMailboxArray, + ( aFlags | MImumInHealthServices::EFlagGetHealthy ), + ETrue ); + + return aMailboxArray; + }