Main Page   Modules   Class Hierarchy   Data Structures   File List   Data Fields   Globals  

OsclSocketRequestAO Class Reference

#include <oscl_socket_method.h>

Inheritance diagram for OsclSocketRequestAO:

OsclActiveObject HeapBase PVActiveBase _OsclHeapBase OsclAcceptRequest OsclBindRequest OsclConnectRequest OsclListenRequest OsclRecvFromRequest OsclRecvRequest OsclSendRequest OsclSendToRequest OsclShutdownRequest

Public Methods

void ConstructL ()

Protected Methods

 OsclSocketRequestAO (OsclSocketMethod &aContainer, const char *name)
virtual ~OsclSocketRequestAO ()
OsclAnyNewRequest (const uint32 size)
void CleanupParam (bool deallocate=false)
void Abort ()
void RequestDone ()
int GetSocketError ()
void DoCancel ()
void Run ()
virtual void Success ()
OsclSocketISocketI ()
OsclSocketObserverSocketObserver ()
uint32 Id ()
Oscl_DefAllocAlloc ()

Protected Attributes

OsclSocketMethodiContainer
int32 iSocketError
SocketRequestParamiParam
uint32 iParamSize

Friends

class OsclSocketI
class OsclSocketMethod
class OsclSocketRequest

Detailed Description

This is the base class for all the AOs that interact with the socket server. This object is contained within an OsclSocketMethod object


Constructor & Destructor Documentation

OsclSocketRequestAO::OsclSocketRequestAO OsclSocketMethod   aContainer,
const char *    name
[inline, protected]
 

virtual OsclSocketRequestAO::~OsclSocketRequestAO   [inline, protected, virtual]
 


Member Function Documentation

void OsclSocketRequestAO::Abort   [inline, protected]
 

Oscl_DefAlloc& OsclSocketRequestAO::Alloc   [inline, protected]
 

void OsclSocketRequestAO::CleanupParam bool    deallocate = false [protected]
 

void OsclSocketRequestAO::ConstructL   [inline]
 

void OsclSocketRequestAO::DoCancel   [inline, protected, virtual]
 

Cancel request handler. This gets called by scheduler when the request is cancelled. The default routine will complete the request. If any additional action is needed, the derived class may override this. If the derived class does override DoCancel, it must complete the request.

Reimplemented from OsclActiveObject.

int OsclSocketRequestAO::GetSocketError   [inline, protected]
 

uint32 OsclSocketRequestAO::Id   [inline, protected]
 

OsclAny* OsclSocketRequestAO::NewRequest const uint32    size [protected]
 

void OsclSocketRequestAO::RequestDone   [inline, protected]
 

void OsclSocketRequestAO::Run   [protected, virtual]
 

Handles an active object's request completion event.

A derived class must provide an implementation to handle the completed request. If appropriate, it may issue another request.

The function is called by the active scheduler when a request completion event occurs, i.e. after the active scheduler's WaitForAnyRequest() function completes.

Before calling this active object's Run() function, the active scheduler has:

1. decided that this is the highest priority active object with a completed request

2. marked this active object's request as complete (i.e. the request is no longer outstanding)

Run() runs under a trap harness in the active scheduler. If it leaves, then the active scheduler calls ExecError() to handle the leave.

Note that once the active scheduler's Start() function has been called, all user code is run under one of the program's active object's Run() or RunError() functions.

Implements PVActiveBase.

OsclSocketI* OsclSocketRequestAO::SocketI   [inline, protected]
 

OsclSocketObserver* OsclSocketRequestAO::SocketObserver   [inline, protected]
 

virtual void OsclSocketRequestAO::Success   [inline, protected, virtual]
 

Reimplemented in OsclRecvRequest, OsclRecvFromRequest, OsclSendRequest, and OsclSendToRequest.


Friends And Related Function Documentation

friend class OsclSocketI [friend]
 

friend class OsclSocketMethod [friend]
 

friend class OsclSocketRequest [friend]
 


Field Documentation

OsclSocketMethod& OsclSocketRequestAO::iContainer [protected]
 

SocketRequestParam* OsclSocketRequestAO::iParam [protected]
 

uint32 OsclSocketRequestAO::iParamSize [protected]
 

int32 OsclSocketRequestAO::iSocketError [protected]
 


The documentation for this class was generated from the following file:
OSCL API
Posting Version: OPENCORE_20090310