summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjai <jai@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2007-02-01 17:51:24 +0000
committerjai <jai@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2007-02-01 17:51:24 +0000
commit584a8d84adee5c55413af9f2ccb5b27823994950 (patch)
tree8f8f026660bada51ad89029bbe48d4d2fc4c177d
parentbea4de4a8ee9f4fababbcedbd3aef50171ea09e9 (diff)
downloadATCD-584a8d84adee5c55413af9f2ccb5b27823994950.tar.gz
adding DS library
-rw-r--r--modules/TAO/tao/PortableServer/Default_Servant_Dispatcher.cpp16
1 files changed, 16 insertions, 0 deletions
diff --git a/modules/TAO/tao/PortableServer/Default_Servant_Dispatcher.cpp b/modules/TAO/tao/PortableServer/Default_Servant_Dispatcher.cpp
index 63e6773dac9..271c0f01411 100644
--- a/modules/TAO/tao/PortableServer/Default_Servant_Dispatcher.cpp
+++ b/modules/TAO/tao/PortableServer/Default_Servant_Dispatcher.cpp
@@ -45,6 +45,22 @@ TAO_Default_Servant_Dispatcher::pre_invoke_remote_request (
TAO_ServerRequest &,
TAO::Portable_Server::Servant_Upcall::Pre_Invoke_State &)
{
+ TAO_Service_Context &request_service_context =
+ req.request_service_context ();
+
+ CORBA::Long dscp_codepoint;
+
+ TAO_Connection_Handler *connection_handler =
+ req.transport ()->connection_handler ();
+
+ // I could replace this call with a call on the protocols hooks.
+ // But the point is that the POA got to cache the policy that was
+ // used at POA creation time, so that it can pass it here.
+ // The DiffServ codepoint created needs to be passed on to the
+ // connection handler, which is being done in the next line.
+ //
+ dscp_codepoint = poa.get_diffserv_codepoint (request_service_context);
+ connection_handler->set_dscp_codepoint (dscp_codepoint);
}
void