equal
deleted
inserted
replaced
101 void TCFSigLegacyRMessage2Ext::ForwardRequestL(MeshMachine::TNodeContextBase& aContext) |
101 void TCFSigLegacyRMessage2Ext::ForwardRequestL(MeshMachine::TNodeContextBase& aContext) |
102 { |
102 { |
103 ASSERT(aContext.Activity() != NULL); |
103 ASSERT(aContext.Activity() != NULL); |
104 RNodeInterface* rcpt = NULL; |
104 RNodeInterface* rcpt = NULL; |
105 |
105 |
106 /* At the connection level we want to go down active serviceprovider, as there are multiple |
106 rcpt = aContext.Node().GetFirstClient<TDefaultClientMatchPolicy>(TClientType(TCFClientType::EServProvider, TCFClientType::EActive), |
107 and the first one is usually an scpr */ |
|
108 if (aContext.Activity()->ActivitySigId() == ECFActivityConnectionLegacyRMessage2Handler) |
|
109 { |
|
110 rcpt = aContext.Node().GetFirstClient<TDefaultClientMatchPolicy>(TClientType(TCFClientType::EServProvider, TCFClientType::EActive), |
|
111 Messages::TClientType(0, Messages::TClientType::ELeaving)); |
107 Messages::TClientType(0, Messages::TClientType::ELeaving)); |
112 } |
|
113 else |
|
114 { |
|
115 rcpt = aContext.Node().GetFirstClient<TDefaultClientMatchPolicy>(TClientType(TCFClientType::EServProvider), |
|
116 Messages::TClientType(0, Messages::TClientType::ELeaving)); |
|
117 } |
|
118 |
108 |
119 if(rcpt) |
109 if(rcpt) |
120 { |
110 { |
121 aContext.Activity()->PostRequestTo(*rcpt, *this); |
111 aContext.Activity()->PostRequestTo(*rcpt, *this); |
122 } |
112 } |