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

CCobainServer Class Reference

Cobain server. More...

#include <cobainserver.h>


Public Types

enum  TRequest {
  EGetNumPeers = 1, EGetPeer, EStartListen, EAbortListen,
  EGetIncomingConnection, EConnect, ESend, ECloseSocket,
  ECreate, ECancelReceive, EReceive
}
enum  TServerPanic {
  EBadRequest = 8800, EServerStartFailed, EUnsupportedProtocol, ESocketTableFull,
  EBadSocketTableIndex, ENoSuchConnection, EAlreadyListening, ENotListening,
  EBadMessage, EReceiveAlreadyPending, EBadSubsessionHandle
}

Static Public Member Functions

CCobainServerNewL ()
TInt ThreadFunction (TAny *aStarted)
void ThreadFunctionL ()
void PanicServer (CCobainServer::TServerPanic aPanic)

Private Member Functions

 CCobainServer (TInt aPriority)
 ~CCobainServer ()
void ConstructL ()
CSharableSession * NewSessionL (const TVersion &aVersion) const
void IncrementSession ()
void DecrementSession ()

Private Attributes

TInt iSessionCount


Detailed Description

Cobain server.

Author:
Matti Dahlbom

Matti Kokkola

Version:
beta0_7_2003-12-08, 1.28

Definition at line 58 of file cobainserver.h.


Member Enumeration Documentation

enum CCobainServer::TRequest
 

Enumeration values:
EGetNumPeers 
EGetPeer 
EStartListen 
EAbortListen 
EGetIncomingConnection 
EConnect 
ESend 
ECloseSocket 
ECreate 
ECancelReceive 
EReceive 

Definition at line 61 of file cobainserver.h.

enum CCobainServer::TServerPanic
 

Enumeration values:
EBadRequest 
EServerStartFailed 
EUnsupportedProtocol 
ESocketTableFull 
EBadSocketTableIndex 
ENoSuchConnection 
EAlreadyListening 
ENotListening 
EBadMessage 
EReceiveAlreadyPending 
EBadSubsessionHandle 

Definition at line 75 of file cobainserver.h.


Constructor & Destructor Documentation

CCobainServer::CCobainServer TInt  aPriority  )  [private]
 

Definition at line 32 of file cobainserver.cpp.

References Log::Init().

Referenced by NewL().

CCobainServer::~CCobainServer  )  [private]
 

Definition at line 40 of file cobainserver.cpp.

References Log::Print().


Member Function Documentation

void CCobainServer::ConstructL  )  [private]
 

Definition at line 55 of file cobainserver.cpp.

References Log::Print().

Referenced by NewL().

void CCobainServer::DecrementSession  )  [private]
 

Definition at line 87 of file cobainserver.cpp.

References iSessionCount.

Referenced by CServerSession::~CServerSession().

void CCobainServer::IncrementSession  )  [private]
 

Definition at line 82 of file cobainserver.cpp.

References iSessionCount.

Referenced by CServerSession::ConstructL().

CCobainServer * CCobainServer::NewL  )  [static]
 

Definition at line 45 of file cobainserver.cpp.

References CCobainServer(), and ConstructL().

Referenced by ThreadFunctionL().

CSharableSession * CCobainServer::NewSessionL const TVersion &  aVersion  )  const [private]
 

Definition at line 63 of file cobainserver.cpp.

References KCobainServerBuildVersion, KCobainServerMajorVersion, KCobainServerMinorVersion, and CServerSession::NewL().

void CCobainServer::PanicServer CCobainServer::TServerPanic  aPanic  )  [static]
 

Definition at line 98 of file cobainserver.cpp.

Referenced by CServerSession::AllocateConnection(), and ThreadFunction().

TInt CCobainServer::ThreadFunction TAny *  aStarted  )  [static]
 

Definition at line 130 of file cobainserver.cpp.

References EServerStartFailed, PanicServer(), and ThreadFunctionL().

Referenced by E32Main().

void CCobainServer::ThreadFunctionL  )  [static]
 

Definition at line 103 of file cobainserver.cpp.

References NewL().

Referenced by ThreadFunction().


Friends And Related Function Documentation

friend class CServerSession [friend]
 

Definition at line 105 of file cobainserver.h.


Field Documentation

TInt CCobainServer::iSessionCount [private]
 

Definition at line 103 of file cobainserver.h.

Referenced by DecrementSession(), and IncrementSession().


The documentation for this class was generated from the following files:
Generated on Mon Dec 8 10:26:08 2003 for CobainAPIImplementation by doxygen 1.3.5