3 * @file RT_POA_Command.h
5 * @author Pradeep Gore <pradeep@oomworks.com>
8 #ifndef TAO_Notify_Tests_RT_POA_COMMAND_H
9 #define TAO_Notify_Tests_RT_POA_COMMAND_H
10 #include /**/ "ace/pre.h"
12 #include "rt_notify_test_export.h"
14 #if !defined (ACE_LACKS_PRAGMA_ONCE)
16 #endif /* ACE_LACKS_PRAGMA_ONCE */
19 #include "tao/RTCORBA/RTCORBA.h"
20 #include "tao/PortableServer/PortableServer.h"
21 #include "../lib/Command.h"
22 #include "ace/SString.h"
25 * @class TAO_Notify_Tests_RT_POA_Command
27 * @brief Command for managing RTCORBA POAs.
29 class TAO_RT_NOTIFY_TEST_Export TAO_Notify_Tests_RT_POA_Command
: public TAO_Notify_Tests_Command
33 TAO_Notify_Tests_RT_POA_Command ();
36 ~TAO_Notify_Tests_RT_POA_Command ();
38 /// Parse args and populate options.
39 /// The arg_shifter options are read in the following manner: -Create <name> -PriorityModel <CLIENT|SERVER> <priority> -Lanes <count> (-Lane <priority> ,<static_threads> <dynamic_threads>)* -Bands <count> (-Band <low> <high>)*
40 virtual void init (ACE_Arg_Shifter
& arg_shifter
);
42 /// Execute the command.
43 virtual void execute_i ();
45 /// Get the command name.
46 virtual const char* get_name ();
47 static const char* name ();
50 /// Create the POA with the params parsed.
51 void create (RTCORBA::RTORB_ptr rt_orb
, PortableServer::POA_ptr parent_poa
);
60 ACE_CString POA_name_
;
62 RTCORBA::PriorityModel priority_model_
;
63 RTCORBA::Priority server_priority_
;
64 RTCORBA::ThreadpoolLanes lanes_
;
65 RTCORBA::PriorityBands bands_
;
67 CORBA::ULong thread_pool_static_threads_
;
68 RTCORBA::Priority thread_pool_default_priority_
;
71 #include /**/ "ace/post.h"
72 #endif /* TAO_Notify_Tests_RT_POA_COMMAND_H */