CSdpSearchRequester Class Reference

class CSdpSearchRequester : public CSdpRequesterBase

Inherits from

Public Member Functions
~CSdpSearchRequester ()
CSdpSearchRequester * NewL ( RSdpSession &, CSdpAgentEng &)
void SearchRequestL (const TBTDevAddr &, CSdpSearchPattern &, TUint16 , const TDesC8 &)
Private Member Functions
CSdpSearchRequester ( RSdpSession &, CSdpAgentEng &)
void ConstructL ()
void DoCancel ()
void HandleSearchResponseL ()
void IssueRequestL ()
void RequestCompleteL ()
void Reset ()
TInt RunError ( TInt )
void SendSearchRequest ()
Inherited Functions
CActive::CActive(TInt)
CActive::Cancel()
CActive::Deque()
CActive::Extension_(TUint,TAny *&,TAny *)
CActive::IsActive()const
CActive::IsAdded()const
CActive::Priority()const
CActive::SetActive()
CActive::SetPriority(TInt)
CActive::~CActive()
CBase::CBase()
CBase::Delete(CBase *)
CBase::operator new(TUint)
CBase::operator new(TUint,TAny *)
CBase::operator new(TUint,TLeave)
CBase::operator new(TUint,TLeave,TUint)
CBase::operator new(TUint,TUint)
CBase::~CBase()
CSdpRequesterBase::CSdpRequesterBase(RSdpSession &,CSdpAgentEng &)
CSdpRequesterBase::NewRequestL(const TBTDevAddr &)
CSdpRequesterBase::RetrieveResponseL()
CSdpRequesterBase::~CSdpRequesterBase()
Inherited Enumerations
CActive:TPriority
CSdpRequesterBase:TConnectState
Private Attributes
TPtrC8 iContState
TUint16 iMaxRecCount
CSdpSearchPattern * iUUIDFilter
Inherited Attributes
CActive::iStatus
CSdpRequesterBase::iParent
CSdpRequesterBase::iRemoteAddress
CSdpRequesterBase::iRequester
CSdpRequesterBase::iResponse
CSdpRequesterBase::iResultSize
CSdpRequesterBase::iSdpSession
CSdpRequesterBase::iState

Constructor & Destructor Documentation

CSdpSearchRequester(RSdpSession &, CSdpAgentEng &)

CSdpSearchRequester ( RSdpSession & aSdpSession,
CSdpAgentEng & aParent
) [private]

Constructor: Adds this CSdpAttributeRequester to Active Scheduler. Sets parent, and passes client side object for session with SDP server (currently ESock). Sets up cont state member to default 0 length descriptor.

Parameters

RSdpSession & aSdpSession
CSdpAgentEng & aParent

~CSdpSearchRequester()

~CSdpSearchRequester ( )

Destructor

Member Functions Documentation

ConstructL()

void ConstructL ( ) [private]

Currently does nothing.

DoCancel()

void DoCancel ( ) [private, virtual]

Cancels current asynchronous requests. This could be with the Sdp server (currently ESOCK) or if this CSdpRequesterBase is in idle state it cancels the time out timer (set-up to perform a disconnection after a defined length of time).

HandleSearchResponseL()

void HandleSearchResponseL ( ) [private]

IssueRequestL()

void IssueRequestL ( ) [private, virtual]

Requester is now connected. Called down from requester base class. Time to actually issue the request

NewL(RSdpSession &, CSdpAgentEng &)

CSdpSearchRequester * NewL ( RSdpSession & aSdpSession,
CSdpAgentEng & aParent
) [static]

Standard NewL method. Note: need to pass the client side object of the SDP service session, and the CSdpA.gentEng parent which is managing this CSdpAttributeRequester active object.

Parameters

RSdpSession & aSdpSession
CSdpAgentEng & aParent

RequestCompleteL()

void RequestCompleteL ( ) [private, virtual]
Response parameter format is
         Total service record count		TUint16
		Current service record count	TUint16
		Service Record Handles			unadorned list of TUint32's
		Continuation State				1 + 0-16 bytes
        

Reset()

void Reset ( ) [private, virtual]

Called when base requester idle timer expires, and when an error is reported Cleans up and makes sure we really are disconnected.

RunError(TInt)

TInt RunError ( TInt aError ) [private, virtual]

Called automatically when a RunL leaves. Calls appropriate error handling function in the CSdpAgentEng parent.

Parameters

TInt aError

SearchRequestL(const TBTDevAddr &, CSdpSearchPattern &, TUint16, const TDesC8 &)

void SearchRequestL ( const TBTDevAddr & aRemoteDev,
CSdpSearchPattern & aUUIDFilter,
TUint16 aMaxCount,
const TDesC8 & aContState
)

Sets up appropriate member variables, then attempts to connect to remote device. (If connection is made the state machine takes over to make the actual search request.)

Parameters

const TBTDevAddr & aRemoteDev
CSdpSearchPattern & aUUIDFilter
TUint16 aMaxCount
const TDesC8 & aContState

SendSearchRequest()

void SendSearchRequest ( ) [private]

Member Data Documentation

TPtrC8 iContState

TPtrC8 iContState [private]

TUint16 iMaxRecCount

TUint16 iMaxRecCount [private]

CSdpSearchPattern * iUUIDFilter

CSdpSearchPattern * iUUIDFilter [private]