CSdpAttributeRequester Class Reference

class CSdpAttributeRequester : public CSdpRequesterBase

Inherits from

Public Member Functions
~CSdpAttributeRequester()
voidAttributeRequestL(const TBTDevAddr &, TSdpServRecordHandle, TUint16, CSdpAttrIdMatchList &, const TDesC8 &)
CSdpAttributeRequester *NewL(RSdpSession &, CSdpAgentEng &)
Private Member Functions
CSdpAttributeRequester(RSdpSession &, CSdpAgentEng &)
voidConstructL()
voidDoCancel()
voidHandleAttributeResponseL()
voidIssueRequestL()
voidRequestCompleteL()
voidReset()
TInt RunError(TInt)
voidSendAttributeRequest()
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
TSdpServRecordHandle iHandle
CSdpAttrIdMatchList *iMatchList
TUint16 iMaxAttrByteCount
Inherited Attributes
CActive::iStatus
CSdpRequesterBase::iParent
CSdpRequesterBase::iRemoteAddress
CSdpRequesterBase::iRequester
CSdpRequesterBase::iResponse
CSdpRequesterBase::iResultSize
CSdpRequesterBase::iSdpSession
CSdpRequesterBase::iState

Constructor & Destructor Documentation

CSdpAttributeRequester(RSdpSession &, CSdpAgentEng &)

CSdpAttributeRequester(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

~CSdpAttributeRequester()

~CSdpAttributeRequester()

Destructor

Member Functions Documentation

AttributeRequestL(const TBTDevAddr &, TSdpServRecordHandle, TUint16, CSdpAttrIdMatchList &, const TDesC8 &)

voidAttributeRequestL(const TBTDevAddr &aRemoteDev,
TSdpServRecordHandleaHandle,
TUint16aMaxAttrByteCount,
CSdpAttrIdMatchList &aMatchList,
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 attribute request.)

Parameters

const TBTDevAddr & aRemoteDev
TSdpServRecordHandle aHandle
TUint16 aMaxAttrByteCount
CSdpAttrIdMatchList & aMatchList
const TDesC8 & aContState

ConstructL()

voidConstructL()[private]

Currently blank.

DoCancel()

voidDoCancel()[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).

HandleAttributeResponseL()

voidHandleAttributeResponseL()[private]

IssueRequestL()

voidIssueRequestL()[private, virtual]

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

NewL(RSdpSession &, CSdpAgentEng &)

CSdpAttributeRequester *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()

voidRequestCompleteL()[private, virtual]
Response parameter format is
		byte count of attr list		TUint16
		Attribute ID & Value		DES
		Continuation State			1 + 0-16 bytes
 

Reset()

voidReset()[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(TIntaError)[private, virtual]

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

Parameters

TInt aError

SendAttributeRequest()

voidSendAttributeRequest()[private]

Member Data Documentation

TPtrC8 iContState

TPtrC8 iContState[private]

TSdpServRecordHandle iHandle

TSdpServRecordHandle iHandle[private]

CSdpAttrIdMatchList * iMatchList

CSdpAttrIdMatchList *iMatchList[private]

TUint16 iMaxAttrByteCount

TUint16 iMaxAttrByteCount[private]