--- a/creator/engine/src/creator_logelement.cpp Tue Aug 31 15:15:20 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,171 +0,0 @@
-/*
-* Copyright (c) 2010 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:
-*
-*/
-
-
-
-#include "creator_logelement.h"
-#include "creator_traces.h"
-#include "creator_log.h"
-
-using namespace creatorlog;
-
-/*
- *
- */
-CCreatorLogElement* CCreatorLogElement::NewL(CCreatorEngine* aEngine, const TDesC& aName, const TDesC& aContext )
- {
- CCreatorLogElement* self = new (ELeave) CCreatorLogElement(aEngine);
- CleanupStack::PushL(self);
- self->ConstructL(aName, aContext);
- CleanupStack::Pop(self);
- return self;
- }
-/*
- *
- */
-CCreatorLogElement::CCreatorLogElement(CCreatorEngine* aEngine)
-:
-CCreatorScriptElement(aEngine)
- {
- iIsCommandElement = ETrue;
- }
-/*
- *
- */
-void CCreatorLogElement::ExecuteCommandL()
- {
- const CCreatorScriptAttribute* amountAttr = FindAttributeByName(KAmount);
- TInt logAmount = 1;
- if( amountAttr )
- {
- logAmount = ConvertStrToIntL(amountAttr->Value());
- }
- // Get 'fields' element
- CCreatorScriptElement* fieldsElement = FindSubElement(KFields);
- if( fieldsElement && fieldsElement->SubElements().Count() > 0 )
- {
- // Get sub-elements
- const RPointerArray<CCreatorScriptElement>& fields = fieldsElement->SubElements();
- // Create log entries, the amount of entries is defined by logAmount:
- for( TInt cI = 0; cI < logAmount; ++cI )
- {
- TInt direction = -1;
- CLogsParameters* param = new (ELeave) CLogsParameters;
- CleanupStack::PushL(param);
-
- for( TInt i = 0; i < fields.Count(); ++i )
- {
- CCreatorScriptElement* field = fields[i];
- TPtrC elemName = field->Name();
- TPtrC elemContent = field->Content();
- const CCreatorScriptAttribute* randomAttr = field->FindAttributeByName(KRandomLength);
- const CCreatorScriptAttribute* increaseAttr = field->FindAttributeByName(KIncrease);
- TBool increase( EFalse );
- if ( increaseAttr )
- {
- increase = ConvertStrToBooleanL( increaseAttr->Value() );
- }
-
- if( elemName == KDirection )
- {
- direction = GetLogCommandL(elemContent, randomAttr || elemContent.Length() == 0);
- }
- else if( elemName == KDuration )
- {
- if( randomAttr || elemContent.Length() == 0 )
- {
- param->iDuration = iEngine->RandomNumber(7200);
- }
- else
- {
- param->iDuration = ConvertStrToIntL(elemContent);
- }
- }
- else if( elemName == KPhonenumber )
- {
- if( randomAttr || elemContent.Length() == 0 )
- {
- SetContentToTextParamL(param->iPhoneNumber, iEngine->RandomString(CCreatorEngine::EPhoneNumber));
- }
- else
- {
- if ( increase )
- {
- delete param->iPhoneNumber;
- param->iPhoneNumber = NULL;
- param->iPhoneNumber = HBufC::NewL( elemContent.Length() + 3 );
- IncreasePhoneNumL( elemContent, cI, param->iPhoneNumber );
- }
- else
- {
- SetContentToTextParamL(param->iPhoneNumber, elemContent);
- }
- }
- }
- else if( elemName == KDatetime )
- {
- if( randomAttr || elemContent.Length() == 0 )
- {
- param->iEventTime = iEngine->RandomTime(iEngine->RandomDate(CCreatorEngine::EDatePast), CCreatorEngine::EDatePast);
- }
- else
- {
- param->iEventTime = ConvertToDateTimeL(elemContent);
- }
- }
- }
-
- if( direction == -1 )
- {
- direction = GetLogCommandL(KEmpty, ETrue);
- }
- iEngine->AppendToCommandArrayL(direction, param);
- CleanupStack::Pop(); // param
- }
- }
- else
- {
- for(TInt i = 0; i < logAmount; ++i )
- {
- iEngine->AppendToCommandArrayL(GetLogCommandL(KEmpty, ETrue), 0, 1);
- }
- }
- }
-
-TInt CCreatorLogElement::GetLogCommandL( const TDesC& aLogCmdStr, TBool aRandom ) const
- {
- if( aRandom )
- {
- TInt commandArray[] = {
- ECmdCreateLogEntryMissedCalls,
- ECmdCreateLogEntryReceivedCalls,
- ECmdCreateLogEntryDialledNumbers
- };
- return commandArray[iEngine->RandomNumber(0, 2)];
- }
-
- if( CompareIgnoreCase(aLogCmdStr, KMissed) == 0 )
- return ECmdCreateLogEntryMissedCalls;
- else if( CompareIgnoreCase(aLogCmdStr, KIn) == 0 )
- return ECmdCreateLogEntryReceivedCalls;
- else if( CompareIgnoreCase(aLogCmdStr, KOut) == 0 )
- return ECmdCreateLogEntryDialledNumbers;
-
- LOGSTRING2("CCreatorLogElement::GetLogCommandL: Unknown log direction: %S", &aLogCmdStr);
- User::Leave(KErrNotFound);
- return -1; // Not reached, but disables compiler warning...
- }