3 #ifndef TEST_PROTOCOLS_HOOKS_H
4 #define TEST_PROTOCOLS_HOOKS_H
6 #include /**/ "ace/pre.h"
8 #include "tao/Protocols_Hooks.h"
10 #include "ace/Service_Config.h"
12 #if !defined (ACE_LACKS_PRAGMA_ONCE)
14 #endif /* ACE_LACKS_PRAGMA_ONCE */
16 class Test_Protocols_Hooks
: public TAO_Protocols_Hooks
20 Test_Protocols_Hooks (void);
23 virtual ~Test_Protocols_Hooks (void);
25 /// Initialize the protocols hooks instance.
26 void init_hooks (TAO_ORB_Core
*orb_core
);
28 CORBA::Boolean
set_client_network_priority (IOP::ProfileId protocol_tag
,
31 CORBA::Boolean
set_server_network_priority (IOP::ProfileId protocol_tag
,
32 CORBA::Policy
*policy
);
34 void server_protocol_properties_at_orb_level (
35 TAO_IIOP_Protocol_Properties
&protocol_properties
);
37 void client_protocol_properties_at_orb_level (
38 TAO_IIOP_Protocol_Properties
&protocol_properties
);
40 void server_protocol_properties_at_orb_level (
41 TAO_UIOP_Protocol_Properties
&protocol_properties
);
43 void client_protocol_properties_at_orb_level (
44 TAO_UIOP_Protocol_Properties
&protocol_properties
);
46 void server_protocol_properties_at_orb_level (
47 TAO_SHMIOP_Protocol_Properties
&protocol_properties
);
49 void client_protocol_properties_at_orb_level (
50 TAO_SHMIOP_Protocol_Properties
&protocol_properties
);
52 void server_protocol_properties_at_orb_level (
53 TAO_DIOP_Protocol_Properties
&protocol_properties
);
55 void client_protocol_properties_at_orb_level (
56 TAO_DIOP_Protocol_Properties
&protocol_properties
);
58 void server_protocol_properties_at_orb_level (
59 TAO_SCIOP_Protocol_Properties
&protocol_properties
);
61 void client_protocol_properties_at_orb_level (
62 TAO_SCIOP_Protocol_Properties
&protocol_properties
);
64 CORBA::Long
get_dscp_codepoint (void);
66 void get_selector_hook (CORBA::Policy
*model_policy
,
68 &is_client_propagated
,
69 CORBA::Short
&server_priority
);
71 void get_selector_bands_policy_hook (CORBA::Policy
*bands_policy
,
72 CORBA::Short priority
,
73 CORBA::Short
&min_priority
,
74 CORBA::Short
&max_priority
,
78 * Accessor and modifier to the current thread priority, used to
79 * implement the RTCORBA::Current interface, but it is faster for
80 * some critical components.
83 int get_thread_CORBA_priority (CORBA::Short
&priority
);
85 int get_thread_native_priority (CORBA::Short
&);
87 int get_thread_CORBA_and_native_priority (CORBA::Short
&, CORBA::Short
&);
89 int get_thread_implicit_CORBA_priority (CORBA::Short
&);
91 int set_thread_CORBA_priority (CORBA::Short
);
93 int restore_thread_CORBA_and_native_priority (CORBA::Short
,
99 CORBA::ULong failure_count_
;
102 ACE_STATIC_SVC_DECLARE_EXPORT (ACE_Local_Service
, Test_Protocols_Hooks
)
103 ACE_FACTORY_DECLARE (ACE_Local_Service
, Test_Protocols_Hooks
)
105 #include /**/ "ace/post.h"
106 #endif /* TAO_RT_PROTOCOLS_HOOKS_H */