diff -r 000000000000 -r 667063e416a2 locationtriggering/ltclientlib/src/lbttriggerentry.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/locationtriggering/ltclientlib/src/lbttriggerentry.cpp Tue Feb 02 01:06:48 2010 +0200 @@ -0,0 +1,306 @@ +/* +* 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: Base class implementation of trigger entries. +* +*/ + + +#include +#include +#include "lbttriggerentry.h" +#include "lbttriggerconditionbase.h" + +// ======== LOCAL FUNCTIONS ======== + +// --------------------------------------------------------------------------- +// CLbtTriggerEntry::Id() +// +// (other items were commented in a header). +// --------------------------------------------------------------------------- +// +EXPORT_C const TLbtTriggerId& CLbtTriggerEntry::Id() const + { + return iId; + } +// --------------------------------------------------------------------------- +// CLbtTriggerEntry::SetId() +// +// (other items were commented in a header). +// --------------------------------------------------------------------------- +// +EXPORT_C void CLbtTriggerEntry::SetId( TLbtTriggerId aId ) + { + iId=aId; + } +// --------------------------------------------------------------------------- +// CLbtTriggerEntry::Name() +// +// (other items were commented in a header). +// --------------------------------------------------------------------------- +// +EXPORT_C const TDesC& CLbtTriggerEntry::Name() const + { + if(!iName) + { + return KNullDesC; + } + else + { + return *iName; + } + } +// --------------------------------------------------------------------------- +// CLbtTriggerEntry::SetNameL() +// +// (other items were commented in a header). +// --------------------------------------------------------------------------- +// +EXPORT_C void CLbtTriggerEntry::SetNameL( const TDesC& aName ) + { + if(aName.Length()>KLbtMaxNameLength) + User::Leave(KErrArgument); + else + { + if( iName ) + { + delete iName; + iName = NULL; + } + iName=HBufC::NewL(aName.Length()); + TPtr NamPtr=iName->Des(); + NamPtr.Copy(aName); + } + } +// --------------------------------------------------------------------------- +// CLbtTriggerEntry::SetTimeToRearm() +// +// (other items were commented in a header). +// --------------------------------------------------------------------------- +// +EXPORT_C void CLbtTriggerEntry::SetTimeToRearm( TInt aSeconds ) + { + if( aSeconds < KLbtMinTimeToRearm || aSeconds > KLbtMaxTimeToRearm ) + + User::Panic(KLbtClientPanicCategory,ELbtErrArgument); + + iRearmTime = aSeconds; + } +// --------------------------------------------------------------------------- +// CLbtTriggerEntry::State() +// +// (other items were commented in a header). +// --------------------------------------------------------------------------- +// +EXPORT_C CLbtTriggerEntry::TLbtTriggerState CLbtTriggerEntry::State() const + { + return iState; + } +// --------------------------------------------------------------------------- +// CLbtTriggerEntry::SetState() +// +// (other items were commented in a header). +// --------------------------------------------------------------------------- +// +EXPORT_C void CLbtTriggerEntry::SetState( TLbtTriggerState aState ) + { + iState=aState; + } +// --------------------------------------------------------------------------- +// CLbtTriggerEntry::TimeToRearm() +// +// (other items were commented in a header). +// --------------------------------------------------------------------------- +// +EXPORT_C TInt CLbtTriggerEntry::TimeToRearm() const + { + return iRearmTime; + } + +// --------------------------------------------------------------------------- +// CLbtTriggerEntry::GetRequestorsL() +// +// (other items were commented in a header). +// --------------------------------------------------------------------------- +// +EXPORT_C void CLbtTriggerEntry::GetRequestorsL( RRequestorStack& aRequestors ) const + { + aRequestors.Reset(); + TInt count = iRequestor.Count(); + for( TInt i=0;iRequestorType(), + iRequestor[i]->RequestorFormat(), + iRequestor[i]->RequestorData()); + aRequestors.Append( Requestor ); + } + } + +// --------------------------------------------------------------------------- +// CLbtTriggerEntry::SetRequestorsL() +// +// (other items were commented in a header). +// --------------------------------------------------------------------------- +// +EXPORT_C void CLbtTriggerEntry::SetRequestorsL( const RRequestorStack& aRequestors ) + { + TInt count = aRequestors.Count(); + if( count>0 ) + { + for( TInt i=0;iRequestorType(), + aRequestors[i]->RequestorFormat(), + aRequestors[i]->RequestorData()); + iRequestor.Append( Requestor ); + } + } + else + { + User::Leave(KErrArgument); + } + } +// --------------------------------------------------------------------------- +// CLbtTriggerEntry::SetRequestorL() +// +// (other items were commented in a header). +// --------------------------------------------------------------------------- +// +EXPORT_C void CLbtTriggerEntry::SetRequestorL( + CRequestor::TRequestorType aType, + CRequestor::TRequestorFormat aFormat, + const TDesC& aData ) + { + CRequestor *Requestor=CRequestor::NewL(aType,aFormat,aData); + iRequestor.Append(Requestor); + } + + +// --------------------------------------------------------------------------- +// CLbtTriggerEntry::ManagerUi() +// +// (other items were commented in a header). +// --------------------------------------------------------------------------- +// +EXPORT_C TUid CLbtTriggerEntry::ManagerUi() const + { + return iManagerUi; + } +// --------------------------------------------------------------------------- +// CLbtTriggerEntry::SetManagerUi() +// +// (other items were commented in a header). +// --------------------------------------------------------------------------- +// +EXPORT_C void CLbtTriggerEntry::SetManagerUi( TUid aUid ) + { + iManagerUi=aUid; + } +// --------------------------------------------------------------------------- +// CLbtTriggerEntry::GetCondition() +// +// (other items were commented in a header). +// --------------------------------------------------------------------------- +// +EXPORT_C CLbtTriggerConditionBase* CLbtTriggerEntry::GetCondition() + { + return iTriggerCondition; + } + +// --------------------------------------------------------------------------- +// CLbtTriggerEntry::GetCondition() +// +// (other items were commented in a header). +// --------------------------------------------------------------------------- +// +EXPORT_C const CLbtTriggerConditionBase* CLbtTriggerEntry::GetCondition() const + { + return iTriggerCondition; + } + +// --------------------------------------------------------------------------- +// CLbtTriggerEntry::SetCondition() +// +// (other items were commented in a header). +// --------------------------------------------------------------------------- +// +EXPORT_C void CLbtTriggerEntry::SetCondition( CLbtTriggerConditionBase* aCondition ) + { + if( iTriggerCondition ) + { + delete iTriggerCondition; + iTriggerCondition = NULL; + } + iTriggerCondition=aCondition; + } + + +// --------------------------------------------------------------------------- +// CLbtTriggerEntry::InternalizeL() +// +// (other items were commented in a header). +// --------------------------------------------------------------------------- +// +EXPORT_C void CLbtTriggerEntry::InternalizeL( RReadStream& aStream ) + { + iRequestor.InternalizeL( aStream ); + DoInternalizeL(aStream); + } + +// --------------------------------------------------------------------------- +// CLbtTriggerEntry::ExternalizeL() +// +// (other items were commented in a header). +// --------------------------------------------------------------------------- +// +EXPORT_C void CLbtTriggerEntry::ExternalizeL( RWriteStream& aStream ) const + { + iRequestor.ExternalizeL( aStream ); + DoExternalizeL(aStream); + } + +// --------------------------------------------------------------------------- +// CLbtTriggerEntry::CLbtTriggerEntry() +// Default constructor +// --------------------------------------------------------------------------- +// +CLbtTriggerEntry::CLbtTriggerEntry() + { + iName = NULL; + iTriggerCondition = NULL; + iRearmTime = KLbtDefaultTimeToRearm; + } + +// --------------------------------------------------------------------------- +// CLbtTriggerEntry::~CLbtTriggerEntry() +// Destructor +// --------------------------------------------------------------------------- +// +CLbtTriggerEntry::~CLbtTriggerEntry() + { + if( iTriggerCondition ) + { + delete iTriggerCondition; + iTriggerCondition = NULL; + } + if( iName ) + { + delete iName; + iName = NULL; + } + iRequestor.ResetAndDestroy(); + iRequestor.Close(); + } + + +