TAO 2.0.4
|
Parameters that are specific to the ORB. These parameters can be for the client, the server, or for both. More...
#include <params.h>
Public Types | |
typedef ACE_Array_Map < ACE_CString, ACE_CString > | endpoints_map_type |
Public Member Functions | |
TAO_ORB_Parameters (void) | |
Constructor. | |
int | add_endpoints (const ACE_CString &lane, const ACE_CString &endpoints) |
void | get_endpoint_set (const ACE_CString &lane, TAO_EndpointSet &endpoint_set) |
CORBA::UShort | service_port (TAO::MCAST_SERVICEID service_id) const |
Set/Get the port of services locatable through multicast. | |
void | service_port (TAO::MCAST_SERVICEID service_id, CORBA::UShort port) |
const char * | mcast_discovery_endpoint (void) const |
void | mcast_discovery_endpoint (const char *mde) |
int | sock_rcvbuf_size (void) const |
Set/Get the size to be used for a socket's receive buffer. | |
void | sock_rcvbuf_size (int) |
int | sock_sndbuf_size (void) const |
Set/Get the size to be used for a socket's send buffer. | |
void | sock_sndbuf_size (int) |
int | nodelay (void) const |
Set/Get the status of whether to use TCP_NODELAY or not. | |
void | nodelay (int) |
int | sock_keepalive (void) |
Set/Get whether we should set SO_KEEPALIVE on the socket or not. | |
void | sock_keepalive (int) |
int | sock_dontroute (void) |
Set/Get whether we should set SO_DONTROUTE on the socket or not. | |
void | sock_dontroute (int) |
int | ip_hoplimit (void) |
Set/Get the number of hops to be used for datagrams sent through socket. | |
void | ip_hoplimit (int) |
bool | ip_multicastloop (void) |
Set/Get whether we should set IP_MULTICAST_LOOP on the socket or not. | |
void | ip_multicastloop (bool) |
int | cdr_memcpy_tradeoff (void) const |
void | cdr_memcpy_tradeoff (int) |
int | use_dotted_decimal_addresses (void) const |
void | use_dotted_decimal_addresses (int) |
int | cache_incoming_by_dotted_decimal_address (void) const |
void | cache_incoming_by_dotted_decimal_address (int) |
int | linger (void) const |
The ORB will turn off SO_LINGER if this is zero. | |
void | linger (int) |
time_t | accept_error_delay (void) const |
void | accept_error_delay (time_t) |
char * | default_init_ref (void) const |
Set/Get the Init Reference of an arbitrary ObjectID. | |
void | default_init_ref (const char *default_init_ref) |
bool | std_profile_components (void) const |
void | std_profile_components (bool x) |
int | ace_sched_policy (void) const |
Scheduling policy. | |
void | ace_sched_policy (int x) |
long | sched_policy (void) const |
Scheduling policy flag. | |
void | sched_policy (long x) |
long | scope_policy (void) const |
Scheduling scope flag. | |
void | scope_policy (long x) |
long | thread_creation_flags (void) const |
Thread creation flags. | |
int | single_read_optimization (void) const |
Single read optimization. | |
void | single_read_optimization (int x) |
int | shared_profile (void) const |
Create shared profiles without priority. | |
void | shared_profile (int x) |
bool | use_parallel_connects (void) const |
void | use_parallel_connects (bool x) |
unsigned long | parallel_connect_delay (void) const |
void | parallel_connect_delay (unsigned long x) |
bool | disable_rt_collocation_resolver (void) const |
Mutators and accessors for rt_collocation_resolver. | |
void | disable_rt_collocation_resolver (bool) |
bool | preferred_interfaces (const char *s) |
const char * | preferred_interfaces (void) const |
void | enforce_pref_interfaces (bool p) |
bool | enforce_pref_interfaces (void) const |
void | negotiate_codesets (bool c) |
bool | negotiate_codesets (void) const |
void | ami_collication (bool opt) |
bool | ami_collication (void) const |
void | protocols_hooks_name (const char *s) |
const char * | protocols_hooks_name (void) const |
void | thread_lane_resources_manager_factory_name (const char *s) |
const char * | thread_lane_resources_manager_factory_name (void) const |
void | stub_factory_name (const char *s) |
const char * | stub_factory_name (void) const |
void | poa_factory_name (const char *s) |
const char * | poa_factory_name (void) const |
void | poa_factory_directive (const ACE_TCHAR *s) |
const ACE_TCHAR * | poa_factory_directive (void) const |
void | endpoint_selector_factory_name (const char *s) |
const char * | endpoint_selector_factory_name (void) const |
void | collocation_resolver_name (const char *s) |
const char * | collocation_resolver_name (void) const |
void | forward_invocation_on_object_not_exist (bool opt) |
bool | forward_invocation_on_object_not_exist (void) const |
void | forward_once_exception (const int) |
int | forward_once_exception () const |
ACE_CDR::ULong | max_message_size (void) const |
void | max_message_size (ACE_CDR::ULong size) |
Private Member Functions | |
int | parse_and_add_endpoints (const ACE_CString &endpoints, TAO_EndpointSet &endpoint_set) |
Private Attributes | |
endpoints_map_type | endpoints_map_ |
Map of endpoints this server is willing to accept requests on. | |
CORBA::UShort | service_port_ [TAO_NO_OF_MCAST_SERVICES] |
Port numbers of the configured services. | |
CORBA::String_var | mcast_discovery_endpoint_ |
ACE_CString | default_init_ref_ |
List of comma separated prefixes from ORBDefaultInitRef. | |
int | sock_rcvbuf_size_ |
Size to be used for a socket's receive buffer. | |
int | sock_sndbuf_size_ |
Size to be used for a socket's send buffer. | |
int | nodelay_ |
1 if we're using TCP_NODELAY and 0 otherwise. | |
int | sock_keepalive_ |
1 if we're using SO_KEEPALIVE and 0 otherwise (default 0). | |
int | sock_dontroute_ |
1 if we're using SO_DONTROUTE and 0 otherwise (default 0). | |
int | ip_hoplimit_ |
Number of hops to be used for datagrams sent through socket. | |
bool | ip_multicastloop_ |
1 if we're using IP_MULTICAST_LOOP and 0 otherwise. | |
int | cdr_memcpy_tradeoff_ |
ACE_CDR::ULong | max_message_size_ |
Maximum GIOP message size to be sent over a given transport. | |
int | use_dotted_decimal_addresses_ |
For selecting a address notation. | |
int | cache_incoming_by_dotted_decimal_address_ |
int | linger_ |
For setting the SO_LINGER option. | |
time_t | accept_error_delay_ |
For setting the accept retry delay. | |
bool | std_profile_components_ |
If true then the standard OMG components are not generated. | |
int | ace_sched_policy_ |
Scheduling policy. | |
long | sched_policy_ |
Scheduling policy flag. | |
long | scope_policy_ |
Scheduling scope flag. | |
int | single_read_optimization_ |
Single read optimization. | |
int | shared_profile_ |
Shared Profile - Use the same profile for multiple endpoints. | |
int | use_parallel_connects_ |
unsigned long | parallel_connect_delay_ |
ACE_CString | pref_network_ |
Preferred network interfaces as a string. | |
bool | disable_rt_collocation_resolver_ |
Default collocation resolver. | |
bool | enforce_preferred_interfaces_ |
bool | negotiate_codesets_ |
Enable the use of codeset negotiation. | |
bool | ami_collication_ |
Do we make collocated ami calls. | |
ACE_CString | protocols_hooks_name_ |
ACE_CString | stub_factory_name_ |
ACE_CString | endpoint_selector_factory_name_ |
ACE_CString | thread_lane_resources_manager_factory_name_ |
ACE_CString | poa_factory_name_ |
ACE_TString | poa_factory_directive_ |
bool | forward_invocation_on_object_not_exist_ |
int | forward_once_exception_ |
ACE_CString | collocation_resolver_name_ |
Parameters that are specific to the ORB. These parameters can be for the client, the server, or for both.
TAO_ORB_Parameters::TAO_ORB_Parameters | ( | void | ) |
Constructor.
time_t TAO_ORB_Parameters::accept_error_delay | ( | void | ) | const |
The amount of time desired by the user to wait to accept connections after a particular type of accept() error.
void TAO_ORB_Parameters::accept_error_delay | ( | time_t | x | ) |
int TAO_ORB_Parameters::ace_sched_policy | ( | void | ) | const |
Scheduling policy.
Scheduling policy specified by the user through the -ORBSchedPolicy option. This value is typically used by functions like ACE_OS::thr_setprio() and ACE_Sched_Params::priority_min(). Legal values are ACE_SCHED_RR, ACE_SCHED_FIFO, and ACE_SCHED_OTHER.
void TAO_ORB_Parameters::ace_sched_policy | ( | int | x | ) |
int TAO_ORB_Parameters::add_endpoints | ( | const ACE_CString & | lane, |
const ACE_CString & | endpoints | ||
) |
Specifies the endpoints on which this server is willing to listen for requests.
void TAO_ORB_Parameters::ami_collication | ( | bool | opt | ) |
bool TAO_ORB_Parameters::ami_collication | ( | void | ) | const |
int TAO_ORB_Parameters::cache_incoming_by_dotted_decimal_address | ( | void | ) | const |
The ORB will cache incoming connections against the dotted decimal form of the peer's address
void TAO_ORB_Parameters::cache_incoming_by_dotted_decimal_address | ( | int | x | ) |
int TAO_ORB_Parameters::cdr_memcpy_tradeoff | ( | void | ) | const |
Octet sequences are marshalled without doing any copies, we simply append a block to the CDR message block chain. When the octet sequence is small enough and there is room in the current message block it is more efficient just to copy the buffer.
void TAO_ORB_Parameters::cdr_memcpy_tradeoff | ( | int | x | ) |
void TAO_ORB_Parameters::collocation_resolver_name | ( | const char * | s | ) |
const char * TAO_ORB_Parameters::collocation_resolver_name | ( | void | ) | const |
char * TAO_ORB_Parameters::default_init_ref | ( | void | ) | const |
Set/Get the Init Reference of an arbitrary ObjectID.
void TAO_ORB_Parameters::default_init_ref | ( | const char * | default_init_ref | ) |
bool TAO_ORB_Parameters::disable_rt_collocation_resolver | ( | void | ) | const |
Mutators and accessors for rt_collocation_resolver.
void TAO_ORB_Parameters::disable_rt_collocation_resolver | ( | bool | x | ) |
const char * TAO_ORB_Parameters::endpoint_selector_factory_name | ( | void | ) | const |
void TAO_ORB_Parameters::endpoint_selector_factory_name | ( | const char * | s | ) |
void TAO_ORB_Parameters::enforce_pref_interfaces | ( | bool | p | ) |
bool TAO_ORB_Parameters::enforce_pref_interfaces | ( | void | ) | const |
void TAO_ORB_Parameters::forward_invocation_on_object_not_exist | ( | bool | opt | ) |
bool TAO_ORB_Parameters::forward_invocation_on_object_not_exist | ( | void | ) | const |
void TAO_ORB_Parameters::forward_once_exception | ( | const int | ef | ) |
int TAO_ORB_Parameters::forward_once_exception | ( | void | ) | const |
void TAO_ORB_Parameters::get_endpoint_set | ( | const ACE_CString & | lane, |
TAO_EndpointSet & | endpoint_set | ||
) |
int TAO_ORB_Parameters::ip_hoplimit | ( | void | ) |
Set/Get the number of hops to be used for datagrams sent through socket.
void TAO_ORB_Parameters::ip_hoplimit | ( | int | x | ) |
void TAO_ORB_Parameters::ip_multicastloop | ( | bool | x | ) |
bool TAO_ORB_Parameters::ip_multicastloop | ( | void | ) |
Set/Get whether we should set IP_MULTICAST_LOOP on the socket or not.
int TAO_ORB_Parameters::linger | ( | void | ) | const |
The ORB will turn off SO_LINGER if this is zero.
void TAO_ORB_Parameters::linger | ( | int | x | ) |
ACE_CDR::ULong TAO_ORB_Parameters::max_message_size | ( | void | ) | const |
Maximum size of a GIOP message before outgoing fragmentation kicks in.
void TAO_ORB_Parameters::max_message_size | ( | ACE_CDR::ULong | size | ) |
Maximum size of a GIOP message before outgoing fragmentation kicks in.
const char * TAO_ORB_Parameters::mcast_discovery_endpoint | ( | void | ) | const |
Get/Set address:port for Multicast Discovery Protocol for the Naming Service.
void TAO_ORB_Parameters::mcast_discovery_endpoint | ( | const char * | mde | ) |
bool TAO_ORB_Parameters::negotiate_codesets | ( | void | ) | const |
void TAO_ORB_Parameters::negotiate_codesets | ( | bool | c | ) |
int TAO_ORB_Parameters::nodelay | ( | void | ) | const |
Set/Get the status of whether to use TCP_NODELAY or not.
void TAO_ORB_Parameters::nodelay | ( | int | x | ) |
unsigned long TAO_ORB_Parameters::parallel_connect_delay | ( | void | ) | const |
The milliseconds delay used to stagger individual connection starts when using parallel connects.
void TAO_ORB_Parameters::parallel_connect_delay | ( | unsigned long | x | ) |
int TAO_ORB_Parameters::parse_and_add_endpoints | ( | const ACE_CString & | endpoints, |
TAO_EndpointSet & | endpoint_set | ||
) | [private] |
Each "endpoint" is of the form:
protocol://V.v,...,W.w/
or:
protocol://addr1,addr2,...,addrN/
where "V.v" and "W.w" are optional versions.
Multiple sets of endpoints may be separated by a semi-colon `;'. For example:
iiop://space:2001,odyssey:2010;uiop://foo,bar
All preconnect or endpoint strings should be of the above form(s).
void TAO_ORB_Parameters::poa_factory_directive | ( | const ACE_TCHAR * | s | ) |
const ACE_TCHAR * TAO_ORB_Parameters::poa_factory_directive | ( | void | ) | const |
const char * TAO_ORB_Parameters::poa_factory_name | ( | void | ) | const |
void TAO_ORB_Parameters::poa_factory_name | ( | const char * | s | ) |
const char * TAO_ORB_Parameters::preferred_interfaces | ( | void | ) | const |
bool TAO_ORB_Parameters::preferred_interfaces | ( | const char * | s | ) |
Accepts the list of preferred interfaces and does a simple semantic check on the string
const char * TAO_ORB_Parameters::protocols_hooks_name | ( | void | ) | const |
void TAO_ORB_Parameters::protocols_hooks_name | ( | const char * | s | ) |
void TAO_ORB_Parameters::sched_policy | ( | long | x | ) |
long TAO_ORB_Parameters::sched_policy | ( | void | ) | const |
Scheduling policy flag.
Scheduling policy specified by the user through the -ORBSchedPolicy option. This value is typically used by ACE thread creation functions. Legal values are THR_SCHED_RR, THR_SCHED_FIFO, and THR_SCHED_DEFAULT.
long TAO_ORB_Parameters::scope_policy | ( | void | ) | const |
Scheduling scope flag.
Scheduling policy specified by the user through the -ORBScopePolicy option. This value is typically used by ACE thread creation functions. Legal values are THR_SCOPE_SYSTEM and THR_SCOPE_PROCESS.
void TAO_ORB_Parameters::scope_policy | ( | long | x | ) |
void TAO_ORB_Parameters::service_port | ( | TAO::MCAST_SERVICEID | service_id, |
CORBA::UShort | port | ||
) |
CORBA::UShort TAO_ORB_Parameters::service_port | ( | TAO::MCAST_SERVICEID | service_id | ) | const |
Set/Get the port of services locatable through multicast.
int TAO_ORB_Parameters::shared_profile | ( | void | ) | const |
Create shared profiles without priority.
void TAO_ORB_Parameters::shared_profile | ( | int | x | ) |
void TAO_ORB_Parameters::single_read_optimization | ( | int | x | ) |
int TAO_ORB_Parameters::single_read_optimization | ( | void | ) | const |
Single read optimization.
void TAO_ORB_Parameters::sock_dontroute | ( | int | x | ) |
int TAO_ORB_Parameters::sock_dontroute | ( | void | ) |
Set/Get whether we should set SO_DONTROUTE on the socket or not.
void TAO_ORB_Parameters::sock_keepalive | ( | int | x | ) |
int TAO_ORB_Parameters::sock_keepalive | ( | void | ) |
Set/Get whether we should set SO_KEEPALIVE on the socket or not.
void TAO_ORB_Parameters::sock_rcvbuf_size | ( | int | s | ) |
int TAO_ORB_Parameters::sock_rcvbuf_size | ( | void | ) | const |
Set/Get the size to be used for a socket's receive buffer.
void TAO_ORB_Parameters::sock_sndbuf_size | ( | int | s | ) |
int TAO_ORB_Parameters::sock_sndbuf_size | ( | void | ) | const |
Set/Get the size to be used for a socket's send buffer.
bool TAO_ORB_Parameters::std_profile_components | ( | void | ) | const |
Disable the OMG standard profile components, useful for homogenous environments.
void TAO_ORB_Parameters::std_profile_components | ( | bool | x | ) |
void TAO_ORB_Parameters::stub_factory_name | ( | const char * | s | ) |
const char * TAO_ORB_Parameters::stub_factory_name | ( | void | ) | const |
long TAO_ORB_Parameters::thread_creation_flags | ( | void | ) | const |
Thread creation flags.
Shorthand for OR'ing together the scope_policy and sched_policy.
void TAO_ORB_Parameters::thread_lane_resources_manager_factory_name | ( | const char * | s | ) |
const char * TAO_ORB_Parameters::thread_lane_resources_manager_factory_name | ( | void | ) | const |
void TAO_ORB_Parameters::use_dotted_decimal_addresses | ( | int | x | ) |
int TAO_ORB_Parameters::use_dotted_decimal_addresses | ( | void | ) | const |
The ORB will use the dotted decimal notation for addresses. By default we use the full ascii names.
bool TAO_ORB_Parameters::use_parallel_connects | ( | void | ) | const |
Want to use parallel connection attempts when profiles have multiple endpoints.
void TAO_ORB_Parameters::use_parallel_connects | ( | bool | x | ) |
time_t TAO_ORB_Parameters::accept_error_delay_ [private] |
For setting the accept retry delay.
int TAO_ORB_Parameters::ace_sched_policy_ [private] |
Scheduling policy.
Scheduling policy specified by the user through the -ORBSchedPolicy option. This value is typically used by functions like ACE_OS::thr_setprio() and ACE_Sched_Params::priority_min(). Legal values are ACE_SCHED_RR, ACE_SCHED_FIFO, and ACE_SCHED_OTHER.
bool TAO_ORB_Parameters::ami_collication_ [private] |
Do we make collocated ami calls.
If incoming connections should be cached against IP (true) or hostname (false).
int TAO_ORB_Parameters::cdr_memcpy_tradeoff_ [private] |
Control the strategy for copying vs. appending octet sequences in CDR streams.
Name of the collocation resolver that needs to be instantiated. The default value is "Default_Collocation_Resolver". If TAO_RTCORBA is linked, the set_collocation_resolver will be called to set the value to be "RT_Collocation_Resolver".
List of comma separated prefixes from ORBDefaultInitRef.
bool TAO_ORB_Parameters::disable_rt_collocation_resolver_ [private] |
Default collocation resolver.
The vanilla ORB has only one collocation resolver. But if the RTORB is in place, the RTORB can get in a new collocation resolver. There are some applications that would like to use the default collocation resolver with the RTORB. This boolean is the value of the option that the application passes in to enable/disable the use of RT collocation resolver with the RTORB. The default value is false to indicate that the RT_Collocation_Resolver will be loaded if the RTORB is used.
Name of the endpoint selector factory that needs to be instantiated. The default value is "Default_Endpoint_Selector_Factory". If TAO_RTCORBA is linked, the set_endpoint_selector_factory will be called to set the value to be "RT_Endpoint_Selector_Factory".
Map of endpoints this server is willing to accept requests on.
bool TAO_ORB_Parameters::enforce_preferred_interfaces_ [private] |
bool TAO_ORB_Parameters::forward_invocation_on_object_not_exist_ [private] |
Do we need forward invocation to next avaiable profile upon OBJECT_NOT_EXIST exception?
int TAO_ORB_Parameters::forward_once_exception_ [private] |
The exceptions upon which the requests will be forwarded once.
int TAO_ORB_Parameters::ip_hoplimit_ [private] |
Number of hops to be used for datagrams sent through socket.
bool TAO_ORB_Parameters::ip_multicastloop_ [private] |
1 if we're using IP_MULTICAST_LOOP and 0 otherwise.
int TAO_ORB_Parameters::linger_ [private] |
For setting the SO_LINGER option.
Maximum GIOP message size to be sent over a given transport.
Setting a maximum message size will cause outgoing GIOP fragmentation to be enabled.
Address:port for Multicast Discovery Protocol for the Naming Service.
bool TAO_ORB_Parameters::negotiate_codesets_ [private] |
Enable the use of codeset negotiation.
int TAO_ORB_Parameters::nodelay_ [private] |
1 if we're using TCP_NODELAY and 0 otherwise.
unsigned long TAO_ORB_Parameters::parallel_connect_delay_ [private] |
When using parallel connects, this delay is used to stagger connection attempts. This gives a trade-off between opening more potential connections than necessary vs increasing the potential time before a good connection is discovered. Time is expressed in milliseconds.
The service configurator directive used to load poa_factory_name_ dynamically.
Name of the service object used to create the RootPOA. The default value is "TAO_POA". If TAO_RTCORBA is loaded, this will be changed to TAO_RT_POA so that a POA equipped with realtime extensions will be returned.
ACE_CString TAO_ORB_Parameters::pref_network_ [private] |
Preferred network interfaces as a string.
Name of the protocols_hooks that needs to be instantiated. The default value is "Protocols_Hooks". If RTCORBA option is set, its value will be set to be "RT_Protocols_Hooks".
long TAO_ORB_Parameters::sched_policy_ [private] |
Scheduling policy flag.
Scheduling policy specified by the user through the -ORBSchedPolicy option. This value is typically used by ACE thread creation functions. Legal values are THR_SCHED_RR, THR_SCHED_FIFO, and THR_SCHED_DEFAULT.
long TAO_ORB_Parameters::scope_policy_ [private] |
Scheduling scope flag.
Scheduling policy specified by the user through the -ORBScopePolicy option. This value is typically used by ACE thread creation functions. Legal values are THR_SCOPE_SYSTEM and THR_SCOPE_PROCESS.
CORBA::UShort TAO_ORB_Parameters::service_port_[TAO_NO_OF_MCAST_SERVICES] [private] |
Port numbers of the configured services.
int TAO_ORB_Parameters::shared_profile_ [private] |
Shared Profile - Use the same profile for multiple endpoints.
int TAO_ORB_Parameters::single_read_optimization_ [private] |
Single read optimization.
int TAO_ORB_Parameters::sock_dontroute_ [private] |
1 if we're using SO_DONTROUTE and 0 otherwise (default 0).
int TAO_ORB_Parameters::sock_keepalive_ [private] |
1 if we're using SO_KEEPALIVE and 0 otherwise (default 0).
int TAO_ORB_Parameters::sock_rcvbuf_size_ [private] |
Size to be used for a socket's receive buffer.
int TAO_ORB_Parameters::sock_sndbuf_size_ [private] |
Size to be used for a socket's send buffer.
bool TAO_ORB_Parameters::std_profile_components_ [private] |
If true then the standard OMG components are not generated.
Name of the stub factory that needs to be instantiated. The default value is "Default_Stub_Factory". If TAO_RTCORBA is linked, the set_stub_factory will be called to set the value to be "RT_Stub_Factory".
Name of the thread lane resources manager that needs to be instantiated. The default value is "Default_Thread_Lane_Resources_Manager_Factory". If TAO_RTCORBA is linked, the set_thread_lane_resources_manager will be called to set the value to be "RT_Thread_Lane_Resources_Manager_Factory".
int TAO_ORB_Parameters::use_dotted_decimal_addresses_ [private] |
For selecting a address notation.
int TAO_ORB_Parameters::use_parallel_connects_ [private] |
Use Parallel Connects - Try to connect to all endpoints in a shared profile at once, use the first to complete.