diff -r 238255e8b033 -r 84d9eb65b26f messagingappbase/smsmtm/servermtm/inc/SMSSOUTB.H --- a/messagingappbase/smsmtm/servermtm/inc/SMSSOUTB.H Fri Apr 16 14:56:15 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,137 +0,0 @@ -// Copyright (c) 1999-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: -// - -#ifndef __SMSSOUTB_H__ -#define __SMSSOUTB_H__ - -#include - -#include -#include -#include -#include -#include "smssactive.h" - -#if (defined SYMBIAN_USER_PROMPT_SERVICE) -#include -using namespace UserPromptService; -#endif - -class CParaFormatLayer; -class CCharFormatLayer; -class CSmsSendSession; -class CMsvScheduleSend; -class CSmsEventLogger; -class CSmsEditorBuffer; - -class CSmsOutboxSend : public CSmssActive -/** -@internalComponent -@released -*/ - { -public: - enum TSmsOutboxSendState - { - ESmsOutboxSendStateWaiting, - ESmsOutboxSendStateFindingOtherMessages, - ESmsOutboxSendStateSending, - ESmsOutboxSendStateReScheduling, - ESmsOutboxSendStateAddLogEvent, - ESmsOutboxSendStateGetLogEvent, - ESmsOutboxSendStateChangeLogEvent, - ESmsOutboxSendStateLogEntryComplete, - ESmsOutboxSendStateMovingEntry, - ESmsOutboxSendStateComplete, - ESmsOutboxSendAuthoriseState - }; - -public: - static CSmsOutboxSend* NewL(CMsvServerEntry& aServerEntry, CMsvScheduleSend& aScheduleSend, RFs& aFs); - ~CSmsOutboxSend(); - - const TSmsProgress& Progress(); - -#if (defined SYMBIAN_USER_PROMPT_SERVICE) - void StartL(TRequestStatus& aStatus,const CMsvEntrySelection& aSelection, const TBool aMove, const TDesC8& aParameter, TThreadId aClientThreadId, TBool aHasCapability); -#endif - - void Start(TRequestStatus& aStatus,const CMsvEntrySelection& aSelection, const TBool aMove, const TDesC8& aParameter); - -protected: - void DoSmssCancel(); - -private: - void DoRunL(); - -private: - CSmsOutboxSend(CMsvServerEntry& aServerEntry, CMsvScheduleSend& aScheduleSend, RFs& aFs); - void ConstructL(); - void SendNextHeaderL(); - void DoComplete(TInt& aStatus); //from CSmssActive - void FindOtherMessagesL(const CMsvEntrySelection& aSelection); - - void MoveEntryL(); - void LogEntry(); - void ReScheduleFailedMessageL(); - void DoReScheduleL(const TMsvSendErrorAction* aErrorAction = NULL); - - TBool ConditionsRightForSending(TMsvSendErrorAction& rErrorAction); - -// Logging Functions - void GetLogEvent(TLogId aId); - void AddLogEvent(); - void ChangeLogEvent(); - - TBool MessageSent() const; - TBool CanLogRecipient(const CSmsNumber& aNumber) const; - TInt GetLogStatus() const; - - void FailOutstandingMessages(TInt aError, TInt aSendingState); - void SendHeader(); -private: - TSmsProgress iProgress; - - CMsvEntrySelection* iMsvEntrySelection; - CSmsSendSession* iSendSession; - CSmsEventLogger* iLogger; - - CRichText* iRichText; - CParaFormatLayer* iParaLayer; - CCharFormatLayer* iCharLayer; - CSmsEditorBuffer* iText; - CSmsHeader* iSmsHeader; - - CMsvScheduleSend& iScheduleSend; - - TMsvSchedulePackage iPackage; - TMsvEntry iEntry; - TMsvId iCurrentMessage; - TBool iMove; - TBool iSentFolderExists; - TTime iStartTime; - TBool iCondMet; - TInt iErr; - -#if (defined SYMBIAN_USER_PROMPT_SERVICE) - /** For Interaction with UPS server */ - RUpsSession iUpsSession; - RUpsSubsession iUpsSubsession; - TBool iHasCapability; - TUpsDecision iDecision; -#endif - }; - -#endif // __SMSSOUTB_H__