Location:
MSVAPI.H
Link against: msgs.lib
Link against: msgs_autoshutdown.lib
class CMsvSendOperation : public CMsvOperation;
Utility to create an operation containing a sending operation which may be used to retrieve a standard progress structure.
This class is intended to be derived from. The derived class must define the TranslateProgress()
member function. This function is responsible for translating the native progress of the given mtm into the standard progress
structure, CMsvSendOperation::TSendOperationProgress
.
CBase
- Base class for all classes to be instantiated on the heap
CActive
- The core class of the active object abstraction
CMsvOperation
- Defines an interface for use by objects which control asynchronous commands in the messaging system
CMsvSendOperation
- Utility to create an operation containing a sending operation which may be used to retrieve a standard progress structure
Defined in CMsvSendOperation
:
CMsvSendOperation()
, DoCancel()
, ESendStateConnecting
, ESendStateDone
, ESendStateFailed
, ESendStateInPreparation
, ESendStateSending
, ESendStateWaitingToSend
, FinalProgress()
, ProgressL()
, RunL()
, Start()
, TSendOperationProgress
, TSendOperationState
, TranslateProgress()
, iOperation
, iProgress
, ~CMsvSendOperation()
Inherited from CActive
:
Cancel()
,
Deque()
,
EPriorityHigh
,
EPriorityIdle
,
EPriorityLow
,
EPriorityStandard
,
EPriorityUserInput
,
IsActive()
,
IsAdded()
,
Priority()
,
RunError()
,
SetActive()
,
SetPriority()
,
TPriority
,
iStatus
Inherited from CBase
:
Delete()
,
operator new()
Inherited from CMsvOperation
:
Extension_()
,
Id()
,
Mtm()
,
Service()
,
SystemProgress()
,
iMsvSession
,
iMtm
,
iObserverRequestStatus
,
iService
virtual IMPORT_C ~CMsvSendOperation();
Destructor.
Any active request on the object is cancelled.
protected: IMPORT_C CMsvSendOperation(CMsvSession &aMsvSession, TRequestStatus &aObserverRequestStatus);
Constructor.
|
|
virtual IMPORT_C const TDesC8 &ProgressL();
Gets progress information about the current send operation
Returns the translated progress for the current send operation. Calls the underlying ProgressL function to obtain the native progress then calls TranslateProgressL to translate the native progress into standard send progress.
|
virtual IMPORT_C const TDesC8 &FinalProgress();
Gets information about a completed operation.
Returns the translated progress for the current send operation. Calls the sending operation's FinalProgress function to obtain the native progress then calls TranslateProgressL to translate the native progress into standard send progress.
|
IMPORT_C void Start(CMsvOperation *aOperation);
Takes ownership of a CMsvOperation
object that is set to complete iStatus of this object. This implementation does not leave.
|
private: virtual IMPORT_C void DoCancel();
Called when this operation is cancelled and is active. It in turn cancels the sending operation and completes iObserverRequestStatus with KErrCancel.
private: virtual IMPORT_C void RunL();
Called on completion of sending operation. Completes iObserverRequestStatus with the sending operation's status. This RunL does not leave.
private: virtual const TDesC8 &TranslateProgress(const TDesC8 &aProgress)=0;
Translates the progress from sending operation's progress into TSendOperationProgress
.
This member function must be defined by derived classes. Must not leave.
|
|
class TSendOperationProgress;
Send progress.
Structure holding send progress. For mtms unable to provide detailed progress information, iProgressMax and iProgress must be zeroed. This will then allow the client to check for this case and display a busy status dialog as opposed to a progress dialog. If the mtm is capable of detailed progress, iProgressMax should be set to the total number of units to be sent and iProgress the number of units sent.
Defined in CMsvSendOperation::TSendOperationProgress
:
iError
, iProgress
, iProgressMax
, iState
iState
TSendOperationState iState;
iError
TInt iError;
iProgressMax
TInt iProgressMax;
iProgress
TInt iProgress;
TSendOperationState
Send progress state.
|
protected: TPckgBuf< TSendOperationProgress > iProgress;
The progress that is associated with this operation.
The TranslateProgress defined by derived classes must populate and return this progress structure.
protected: CMsvOperation * iOperation;
The sending operation.
Assigned when ConstructL is called