TAO_ORB_Parameters Class Reference

Parameters that are specific to the ORB. These parameters can be for the client, the server, or for both. More...

#include <params.h>

Collaboration diagram for TAO_ORB_Parameters:

Collaboration graph
[legend]
List of all members.

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 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)
char * default_init_ref (void) const
 Set/Get the Init Reference of an arbitrary ObjectID.

void default_init_ref (const char *default_init_ref)
int std_profile_components (void) const
void std_profile_components (int 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 prefer_ipv6_interfaces (bool p)
bool prefer_ipv6_interfaces (void) const
void connect_ipv6_only (bool p)
bool connect_ipv6_only (void) const
void negotiate_codesets (bool c)
bool negotiate_codesets (void) 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 cdr_memcpy_tradeoff_
ACE_CDR::ULong max_message_size_
 Maximum GIOP message size to be sent over a given transport.

int use_lite_protocol_
 For selecting a liteweight version of the GIOP protocol.

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.

int 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 prefer_ipv6_interfaces_
 Prefer to connect IPv6 over IPv4 Yes or No.

bool connect_ipv6_only_
bool negotiate_codesets_
 Enable the use of codeset negotiation.


Detailed Description

Parameters that are specific to the ORB. These parameters can be for the client, the server, or for both.

Definition at line 51 of file params.h.


Member Typedef Documentation

typedef ACE_Array_Map<ACE_CString, ACE_CString> TAO_ORB_Parameters::endpoints_map_type
 

Definition at line 55 of file params.h.


Constructor & Destructor Documentation

TAO_BEGIN_VERSIONED_NAMESPACE_DECL TAO_ORB_Parameters::TAO_ORB_Parameters void   ) 
 

Constructor.

Definition at line 19 of file params.cpp.

References ACE_DEFAULT_CDR_MEMCPY_TRADEOFF, ACE_DEFAULT_MAX_SOCKET_BUFSIZ, ACE_SCHED_OTHER, service_port_, TAO_DEFAULT_INIT_REFERENCE_INITIALIZER, and TAO_NO_OF_MCAST_SERVICES.

00020   : endpoints_map_ (10)
00021   , mcast_discovery_endpoint_ ()
00022   , default_init_ref_ (TAO_DEFAULT_INIT_REFERENCE_INITIALIZER)
00023   , sock_rcvbuf_size_ (ACE_DEFAULT_MAX_SOCKET_BUFSIZ)
00024   , sock_sndbuf_size_ (ACE_DEFAULT_MAX_SOCKET_BUFSIZ)
00025   , nodelay_ (1)
00026   , sock_keepalive_ (0)
00027   , sock_dontroute_ (0)
00028   , cdr_memcpy_tradeoff_ (ACE_DEFAULT_CDR_MEMCPY_TRADEOFF)
00029   , max_message_size_ (0) // Disable outgoing GIOP fragments by default
00030   , use_lite_protocol_ (0)
00031   , use_dotted_decimal_addresses_ (0)
00032   , cache_incoming_by_dotted_decimal_address_ (0)
00033   , linger_ (-1)
00034   , std_profile_components_ (1)
00035   , ace_sched_policy_ (ACE_SCHED_OTHER)
00036   , sched_policy_ (THR_SCHED_DEFAULT)
00037   , scope_policy_ (THR_SCOPE_PROCESS)
00038   , single_read_optimization_ (1)
00039   , shared_profile_ (0)
00040   , use_parallel_connects_ (false)
00041   , parallel_connect_delay_ (0)
00042   , pref_network_ ()
00043   , disable_rt_collocation_resolver_ (false)
00044   , enforce_preferred_interfaces_ (false)
00045 #if defined (ACE_HAS_IPV6)
00046   , prefer_ipv6_interfaces_ (false)
00047   , connect_ipv6_only_ (false)
00048 #endif /* ACE_HAS_IPV6 */
00049   , negotiate_codesets_ (true)
00050 {
00051   for (int i = 0; i != TAO_NO_OF_MCAST_SERVICES; ++i)
00052     {
00053       this->service_port_[i] = 0;
00054     }
00055 }


Member Function Documentation

ACE_INLINE void TAO_ORB_Parameters::ace_sched_policy int  x  ) 
 

Definition at line 184 of file params.i.

References ace_sched_policy_.

00185 {
00186   this->ace_sched_policy_ = x;
00187 }

ACE_INLINE 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.

Definition at line 178 of file params.i.

References ace_sched_policy_.

00179 {
00180   return this->ace_sched_policy_;
00181 }

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.

Definition at line 80 of file params.cpp.

References ACE_CString, endpoints_map_, parse_and_add_endpoints(), and TAO_EndpointSet.

Referenced by TAO_ORB_Core::set_endpoint_helper().

00082 {
00083   TAO_EndpointSet endpoint_set;
00084 
00085   // Parse the additional endpoints.
00086   int const result =
00087     this->parse_and_add_endpoints (additional_endpoints,
00088                                    endpoint_set);
00089 
00090   // Parse failure.
00091   if (result != 0)
00092     return result;
00093 
00094   // Look for the lane in the endpoints map.
00095   //
00096   // Return reference to endpoints string corresponding to lane
00097   // string.  If none, a default constructed string is inserted into
00098   // the map and returned.
00099   ACE_CString & existing_endpoints = this->endpoints_map_[lane];
00100 
00101   // Create the resulting endpoints string.
00102   if (existing_endpoints.length () != 0)
00103     {
00104       existing_endpoints += ";";
00105     }
00106 
00107   existing_endpoints += additional_endpoints;
00108 
00109   return 0;
00110 }

ACE_INLINE void TAO_ORB_Parameters::cache_incoming_by_dotted_decimal_address int   ) 
 

Definition at line 74 of file params.i.

References cache_incoming_by_dotted_decimal_address_.

00075 {
00076   this->cache_incoming_by_dotted_decimal_address_ = x;
00077 }

ACE_INLINE 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

Definition at line 68 of file params.i.

References cache_incoming_by_dotted_decimal_address_.

00069 {
00070   return this->cache_incoming_by_dotted_decimal_address_;
00071 }

ACE_INLINE void TAO_ORB_Parameters::cdr_memcpy_tradeoff int   ) 
 

Definition at line 38 of file params.i.

References cdr_memcpy_tradeoff_.

00039 {
00040   this->cdr_memcpy_tradeoff_ = x;
00041 }

ACE_INLINE 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.

Definition at line 32 of file params.i.

References cdr_memcpy_tradeoff_.

Referenced by TAO_Profile::create_tagged_profile(), TAO_Profile::encode(), CORBA::ORB::object_to_string(), TAO_GIOP_Message_Lite::process_request_message(), TAO_GIOP_Message_Base::process_request_message(), TAO_ServerRequest::send_cached_reply(), TAO_GIOP_Message_Lite::send_reply_exception(), and TAO_ServerRequest::tao_send_reply_exception().

00033 {
00034   return this->cdr_memcpy_tradeoff_;
00035 }

bool TAO_ORB_Parameters::connect_ipv6_only void   )  const
 

Definition at line 306 of file params.cpp.

References connect_ipv6_only_.

00307 {
00308   return this->connect_ipv6_only_;
00309 }

void TAO_ORB_Parameters::connect_ipv6_only bool  p  ) 
 

Definition at line 300 of file params.cpp.

References connect_ipv6_only_.

Referenced by TAO_IIOP_Endpoint::next_filtered(), TAO_IIOP_Connection_Handler::open(), TAO_IIOP_Acceptor::open(), TAO_Acceptor_Registry::open_default(), TAO_IIOP_Acceptor::open_i(), and TAO_IIOP_Acceptor::probe_interfaces().

00301 {
00302   this->connect_ipv6_only_ = p;
00303 }

ACE_INLINE void TAO_ORB_Parameters::default_init_ref const char *  default_init_ref  ) 
 

Definition at line 118 of file params.i.

References default_init_ref_.

00119 {
00120   this->default_init_ref_ = default_init_ref;
00121 }

ACE_INLINE char * TAO_ORB_Parameters::default_init_ref void   )  const
 

Set/Get the Init Reference of an arbitrary ObjectID.

Definition at line 124 of file params.i.

References CORBA::string_dup().

Referenced by TAO_ORB_Core::resolve_rir(), and CORBA::ORB::resolve_service().

00125 {
00126   return CORBA::string_dup (this->default_init_ref_.c_str ());
00127 }

ACE_INLINE void TAO_ORB_Parameters::disable_rt_collocation_resolver bool   ) 
 

Definition at line 276 of file params.i.

References disable_rt_collocation_resolver_.

00277 {
00278   this->disable_rt_collocation_resolver_ = x;
00279 }

ACE_INLINE bool TAO_ORB_Parameters::disable_rt_collocation_resolver void   )  const
 

Mutators and accessors for rt_collocation_resolver.

Definition at line 270 of file params.i.

References disable_rt_collocation_resolver_.

00271 {
00272   return this->disable_rt_collocation_resolver_;
00273 }

bool TAO_ORB_Parameters::enforce_pref_interfaces void   )  const
 

Definition at line 281 of file params.cpp.

References enforce_preferred_interfaces_.

00282 {
00283   return this->enforce_preferred_interfaces_;
00284 }

void TAO_ORB_Parameters::enforce_pref_interfaces bool  p  ) 
 

Definition at line 275 of file params.cpp.

References enforce_preferred_interfaces_.

Referenced by TAO_IIOP_Profile::decode_profile().

00276 {
00277   this->enforce_preferred_interfaces_ = p;
00278 }

void TAO_ORB_Parameters::get_endpoint_set const ACE_CString lane,
TAO_EndpointSet endpoint_set
 

Definition at line 58 of file params.cpp.

References ACE_ASSERT, ACE_Array_Map< ACE_CString, ACE_CString >::end(), endpoints_map_, ACE_Array_Map< ACE_CString, ACE_CString >::find(), and parse_and_add_endpoints().

Referenced by TAO_Default_Thread_Lane_Resources_Manager::open_default_resources().

00060 {
00061   // Look for the lane in the endpoints map.
00062   endpoints_map_type::iterator const endpoints =
00063     this->endpoints_map_.find (lane);
00064 
00065   // If lane is not in the map, <endpoint_set> remains empty
00066   if (endpoints == this->endpoints_map_.end ())
00067     return;
00068 
00069   // At this point, the parsing should not fail since they have been
00070   // parsed successfully before.
00071   int const result =
00072     this->parse_and_add_endpoints ((*endpoints).second,
00073                                    endpoint_set);
00074 
00075   ACE_ASSERT (result == 0);
00076   ACE_UNUSED_ARG (result);
00077 }

ACE_INLINE void TAO_ORB_Parameters::linger int   ) 
 

Definition at line 86 of file params.i.

References linger_.

00087 {
00088   this->linger_ = x;
00089 }

ACE_INLINE int TAO_ORB_Parameters::linger void   )  const
 

The ORB will turn off SO_LINGER if this is zero.

Definition at line 80 of file params.i.

References linger_.

Referenced by TAO_IIOP_Connection_Handler::close_connection().

00081 {
00082   return this->linger_;
00083 }

ACE_INLINE void TAO_ORB_Parameters::max_message_size ACE_CDR::ULong  size  ) 
 

Maximum size of a GIOP message before outgoing fragmentation kicks in.

Definition at line 50 of file params.i.

References CORBA::ULong.

00051 {
00052   this->max_message_size_ = size;
00053 }

ACE_INLINE ACE_CDR::ULong TAO_ORB_Parameters::max_message_size void   )  const
 

Maximum size of a GIOP message before outgoing fragmentation kicks in.

Definition at line 44 of file params.i.

00045 {
00046   return this->max_message_size_;
00047 }

ACE_INLINE void TAO_ORB_Parameters::mcast_discovery_endpoint const char *  mde  ) 
 

Definition at line 106 of file params.i.

References mcast_discovery_endpoint_, and CORBA::string_dup().

00107 {
00108   this->mcast_discovery_endpoint_ = CORBA::string_dup (mde);
00109 }

ACE_INLINE const char * TAO_ORB_Parameters::mcast_discovery_endpoint void   )  const
 

Get/Set address:port for Multicast Discovery Protocol for the Naming Service.

Definition at line 112 of file params.i.

References TAO::String_var< charT >::in(), and mcast_discovery_endpoint_.

Referenced by TAO_MCAST_Parser::multicast_query().

00113 {
00114   return this->mcast_discovery_endpoint_.in ();
00115 }

ACE_INLINE bool TAO_ORB_Parameters::negotiate_codesets void   )  const
 

Definition at line 283 of file params.i.

References negotiate_codesets_.

00284 {
00285   return this->negotiate_codesets_;
00286 }

ACE_INLINE void TAO_ORB_Parameters::negotiate_codesets bool  c  ) 
 

Definition at line 289 of file params.i.

References negotiate_codesets_.

Referenced by TAO_ORB_Core::codeset_manager().

00290 {
00291   this->negotiate_codesets_ = x;
00292 }

ACE_INLINE void TAO_ORB_Parameters::nodelay int   ) 
 

Definition at line 148 of file params.i.

References nodelay_.

00149 {
00150   this->nodelay_ = x;
00151 }

ACE_INLINE int TAO_ORB_Parameters::nodelay void   )  const
 

Set/Get the status of whether to use TCP_NODELAY or not.

Definition at line 142 of file params.i.

References nodelay_.

Referenced by TAO_IIOP_Connection_Handler::open().

00143 {
00144   return this->nodelay_;
00145 }

ACE_INLINE void TAO_ORB_Parameters::parallel_connect_delay unsigned long  x  ) 
 

Definition at line 252 of file params.i.

References parallel_connect_delay_.

00253 {
00254   this->parallel_connect_delay_ = x;
00255 }

ACE_INLINE unsigned long TAO_ORB_Parameters::parallel_connect_delay void   )  const
 

The milliseconds delay used to stagger individual connection starts when using parallel connects.

Definition at line 246 of file params.i.

References parallel_connect_delay_.

Referenced by TAO_IIOP_Connector::make_parallel_connection().

00247 {
00248   return this->parallel_connect_delay_;
00249 }

int TAO_ORB_Parameters::parse_and_add_endpoints const ACE_CString endpoints,
TAO_EndpointSet endpoint_set
[private]
 

Definition at line 113 of file params.cpp.

References ACE_CString, and ssize_t.

Referenced by add_endpoints(), and get_endpoint_set().

00115 {
00116   // Parse the string into seperate endpoints, where `endpoints' is of
00117   // the form:
00118   //
00119   //    protocol1://V,v@addr1,...,addrN;protocol2://addr1,...,W.w@addrN;...
00120   //
00121   // A single endpoint, instead of several, can be added just as well.
00122 
00123   static char const endpoints_delimiter = ';';
00124 
00125   size_t const length = endpoints.length ();
00126 
00127   if (endpoints[0] == endpoints_delimiter ||
00128       endpoints[length - 1] == endpoints_delimiter)
00129     {
00130       return -1;
00131       // Failure: endpoints string has an empty endpoint at the
00132       // beginning or the end of the string
00133       // (e.g. ";uiop://foo;iiop://1.3@bar")
00134     }
00135 
00136   int status = 0;
00137   // Return code:  0 = success,  -1 = failure
00138 
00139   if (length > 0)
00140     {
00141       int endpoints_count = 1;
00142 
00143       for (size_t j = 0; j != length; ++j)
00144         {
00145           if (endpoints[j] == endpoints_delimiter)
00146             {
00147               ++endpoints_count;
00148             }
00149         }
00150 
00151       ssize_t begin = 0;
00152       ssize_t end = endpoints.find (endpoints_delimiter);
00153 
00154       for (int i = 0; i < endpoints_count; ++i)
00155         {
00156           if (end == 0)
00157             {
00158               // Handle case where two consecutive endpoints `;;'
00159               // delimiters are found within the endpoints set.
00160               //
00161               // Is it enough to just skip over it or should we return an
00162               // error?
00163               continue;
00164             }
00165 
00166           ACE_CString const endpt =
00167             endpoints.substring (begin, end - begin);
00168           // The substring call will work even if `end' is equal to
00169           // ACE_CString::npos since that will just extract the substring
00170           // from the offset `begin' to the end of the string.
00171 
00172           // Check for a valid URL style endpoint set
00173           ssize_t const check_offset = endpt.find ("://");
00174 
00175           if (check_offset > 0 &&
00176               check_offset != endpt.npos)
00177             {
00178               endpoint_set.enqueue_tail (endpt);
00179               // Insert endpoint into list
00180             }
00181           else
00182             {
00183               status = -1;  // Error: invalid URL style endpoint set
00184             }
00185 
00186           begin = end + 1;
00187           end = endpoints.find (endpoints_delimiter, begin);
00188         }
00189     }
00190   else
00191     {
00192       status = -1;
00193       // Failure:  Empty string
00194     }
00195 
00196   return status;
00197 }

bool TAO_ORB_Parameters::prefer_ipv6_interfaces void   )  const
 

Definition at line 294 of file params.cpp.

References prefer_ipv6_interfaces_.

00295 {
00296   return this->prefer_ipv6_interfaces_;
00297 }

void TAO_ORB_Parameters::prefer_ipv6_interfaces bool  p  ) 
 

Definition at line 288 of file params.cpp.

References prefer_ipv6_interfaces_.

Referenced by TAO_IIOP_Endpoint::next_filtered().

00289 {
00290   this->prefer_ipv6_interfaces_ = p;
00291 }

const char * TAO_ORB_Parameters::preferred_interfaces void   )  const
 

Definition at line 269 of file params.cpp.

References pref_network_.

00270 {
00271   return this->pref_network_.c_str ();
00272 }

bool TAO_ORB_Parameters::preferred_interfaces const char *  s  ) 
 

Accepts the list of preferred interfaces and does a simple semantic check on the string

Definition at line 200 of file params.cpp.

References pref_network_.

Referenced by TAO_IIOP_Profile::decode_profile().

00201 {
00202   // Validates that s contains one or more comma separated
00203   // interfaces each consisting of a string with a single
00204   // assignment separator ('=' or ':')
00205   // Any other char is legal, although '*' and '?' will be
00206   // treated as wildcards.
00207   const char* p = s;
00208   bool expect_assign = false;
00209   bool expect_comma = false;
00210   bool expect_char = true;
00211   bool expect_wild = true;
00212   bool found_remote = false;
00213   while (*p != 0)
00214   {
00215     switch (*p)
00216     {
00217 #if !defined (ACE_HAS_IPV6)
00218     // Can't use this as assignment operator when IPv6 decimal
00219     // addresses may be involved.
00220     case ':':
00221 #endif /* ACE_HAS_IPV6 */
00222     case '=':
00223       if (! expect_assign)
00224         return false;
00225       found_remote = true;
00226       expect_assign = false;
00227       expect_char = true;
00228       expect_comma = false;
00229       expect_wild = true;
00230       break;
00231     case ',':
00232       if (! expect_comma)
00233         return false;
00234       found_remote = false;
00235       expect_assign = false;
00236       expect_char = true;
00237       expect_comma = false;
00238       expect_wild = true;
00239       break;
00240     case '*':
00241     case '?':
00242       if (! expect_wild)
00243         return false;
00244       expect_assign = ! found_remote;
00245       expect_char = true;
00246       expect_comma = found_remote;
00247       expect_wild = false;
00248       break;
00249     default:
00250       if (! expect_char)
00251         return false;
00252       expect_assign = ! found_remote;
00253       expect_char = true;
00254       expect_comma = found_remote;
00255       expect_wild = true;
00256       break;
00257     }
00258     ++p;
00259     }
00260   if (!expect_comma || expect_assign)
00261     return false;
00262 
00263   this->pref_network_ = s;
00264 
00265   return true;
00266 }

ACE_INLINE void TAO_ORB_Parameters::sched_policy long  x  ) 
 

Definition at line 196 of file params.i.

References sched_policy_.

00197 {
00198   this->sched_policy_ = x;
00199 }

ACE_INLINE 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.

Definition at line 190 of file params.i.

References sched_policy_.

Referenced by thread_creation_flags().

00191 {
00192   return this->sched_policy_;
00193 }

ACE_INLINE void TAO_ORB_Parameters::scope_policy long  x  ) 
 

Definition at line 208 of file params.i.

References scope_policy_.

00209 {
00210   this->scope_policy_ = x;
00211 }

ACE_INLINE 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.

Definition at line 202 of file params.i.

References scope_policy_.

Referenced by thread_creation_flags().

00203 {
00204   return this->scope_policy_;
00205 }

ACE_INLINE void TAO_ORB_Parameters::service_port TAO::MCAST_SERVICEID  service_id,
CORBA::UShort  port
 

Definition at line 93 of file params.i.

References service_port_.

00095 {
00096   this->service_port_[service_id] = port;
00097 }

ACE_INLINE CORBA::UShort TAO_ORB_Parameters::service_port TAO::MCAST_SERVICEID  service_id  )  const
 

Set/Get the port of services locatable through multicast.

Definition at line 100 of file params.i.

References service_port_.

Referenced by CORBA::ORB::resolve_service().

00101 {
00102   return this->service_port_[service_id];
00103 }

ACE_INLINE void TAO_ORB_Parameters::shared_profile int  x  ) 
 

Definition at line 264 of file params.i.

References shared_profile_.

00265 {
00266   this->shared_profile_ = x;
00267 }

ACE_INLINE int TAO_ORB_Parameters::shared_profile void   )  const
 

Create shared profiles without priority.

Definition at line 258 of file params.i.

References shared_profile_.

Referenced by TAO_IIOP_Acceptor::create_profile().

00259 {
00260   return this->shared_profile_;
00261 }

ACE_INLINE void TAO_ORB_Parameters::single_read_optimization int  x  ) 
 

Definition at line 228 of file params.i.

References single_read_optimization_.

00229 {
00230   this->single_read_optimization_ = x;
00231 }

ACE_INLINE int TAO_ORB_Parameters::single_read_optimization void   )  const
 

Single read optimization.

Definition at line 222 of file params.i.

References single_read_optimization_.

Referenced by TAO_Transport::handle_input_parse_data().

00223 {
00224   return this->single_read_optimization_;
00225 }

ACE_INLINE void TAO_ORB_Parameters::sock_dontroute int   ) 
 

Definition at line 172 of file params.i.

References sock_dontroute_.

00173 {
00174   this->sock_dontroute_ = x;
00175 }

ACE_INLINE int TAO_ORB_Parameters::sock_dontroute void   ) 
 

Set/Get whether we should set SO_DONTROUTE on the socket or not.

Definition at line 166 of file params.i.

References sock_dontroute_.

Referenced by TAO_IIOP_Connection_Handler::open().

00167 {
00168   return this->sock_dontroute_;
00169 }

ACE_INLINE void TAO_ORB_Parameters::sock_keepalive int   ) 
 

Definition at line 160 of file params.i.

References sock_keepalive_.

00161 {
00162   this->sock_keepalive_ = x;
00163 }

ACE_INLINE int TAO_ORB_Parameters::sock_keepalive void   ) 
 

Set/Get whether we should set SO_KEEPALIVE on the socket or not.

Definition at line 154 of file params.i.

References sock_keepalive_.

Referenced by TAO_IIOP_Connection_Handler::open().

00155 {
00156   return this->sock_keepalive_;
00157 }

ACE_INLINE void TAO_ORB_Parameters::sock_rcvbuf_size int   ) 
 

Definition at line 14 of file params.i.

References sock_rcvbuf_size_.

00015 {
00016   sock_rcvbuf_size_ = s;
00017 }

TAO_BEGIN_VERSIONED_NAMESPACE_DECL ACE_INLINE int TAO_ORB_Parameters::sock_rcvbuf_size void   )  const
 

Set/Get the size to be used for a socket's receive buffer.

Definition at line 8 of file params.i.

References sock_rcvbuf_size_.

Referenced by TAO_IIOP_Connection_Handler::open().

00009 {
00010   return sock_rcvbuf_size_;
00011 }

ACE_INLINE void TAO_ORB_Parameters::sock_sndbuf_size int   ) 
 

Definition at line 26 of file params.i.

References sock_sndbuf_size_.

00027 {
00028   sock_sndbuf_size_ = s;
00029 }

ACE_INLINE int TAO_ORB_Parameters::sock_sndbuf_size void   )  const
 

Set/Get the size to be used for a socket's send buffer.

Definition at line 20 of file params.i.

References sock_sndbuf_size_.

Referenced by TAO_IIOP_Connection_Handler::open().

00021 {
00022   return sock_sndbuf_size_;
00023 }

ACE_INLINE void TAO_ORB_Parameters::std_profile_components int  x  ) 
 

Definition at line 136 of file params.i.

References std_profile_components_.

00137 {
00138   this->std_profile_components_ = x;
00139 }

ACE_INLINE int TAO_ORB_Parameters::std_profile_components void   )  const
 

Disable the OMG standard profile components, useful for homogenous environments.

Definition at line 130 of file params.i.

References std_profile_components_.

Referenced by TAO_IIOP_Acceptor::create_new_profile(), TAO_IIOP_Acceptor::create_shared_profile(), and TAO_Profile::verify_orb_configuration().

00131 {
00132   return this->std_profile_components_;
00133 }

ACE_INLINE long TAO_ORB_Parameters::thread_creation_flags void   )  const
 

Thread creation flags.

Shorthand for OR'ing together the scope_policy and sched_policy.

Definition at line 214 of file params.i.

References sched_policy(), and scope_policy().

00215 {
00216   return
00217     this->scope_policy () |
00218     this->sched_policy ();
00219 }

ACE_INLINE void TAO_ORB_Parameters::use_dotted_decimal_addresses int   ) 
 

Definition at line 62 of file params.i.

References use_dotted_decimal_addresses_.

00063 {
00064   this->use_dotted_decimal_addresses_ = x;
00065 }

ACE_INLINE 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.

Definition at line 56 of file params.i.

References use_dotted_decimal_addresses_.

Referenced by TAO_IIOP_Acceptor::hostname().

00057 {
00058   return this->use_dotted_decimal_addresses_;
00059 }

ACE_INLINE void TAO_ORB_Parameters::use_parallel_connects bool  x  ) 
 

Definition at line 240 of file params.i.

References use_parallel_connects_.

00241 {
00242   this->use_parallel_connects_ = x;
00243 }

ACE_INLINE bool TAO_ORB_Parameters::use_parallel_connects void   )  const
 

Want to use parallel connection attempts when profiles have multiple endpoints.

Definition at line 234 of file params.i.

References use_parallel_connects_.

Referenced by TAO::Profile_Transport_Resolver::use_parallel_connect().

00235 {
00236   return this->use_parallel_connects_;
00237 }


Member Data Documentation

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.

Definition at line 298 of file params.h.

Referenced by ace_sched_policy().

int TAO_ORB_Parameters::cache_incoming_by_dotted_decimal_address_ [private]
 

If incoming connections should be cached against IP (true) or hostname (false).

Definition at line 282 of file params.h.

Referenced by cache_incoming_by_dotted_decimal_address().

int TAO_ORB_Parameters::cdr_memcpy_tradeoff_ [private]
 

Control the strategy for copying vs. appeding octet sequences in CDR streams.

Definition at line 265 of file params.h.

Referenced by cdr_memcpy_tradeoff().

bool TAO_ORB_Parameters::connect_ipv6_only_ [private]
 

Only connect to (client) or listen on and accept from (server) IPv6 interfaces Yes or No.

Definition at line 360 of file params.h.

Referenced by connect_ipv6_only().

ACE_CString TAO_ORB_Parameters::default_init_ref_ [private]
 

List of comma separated prefixes from ORBDefaultInitRef.

Definition at line 246 of file params.h.

Referenced by default_init_ref().

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.

Definition at line 348 of file params.h.

Referenced by disable_rt_collocation_resolver().

endpoints_map_type TAO_ORB_Parameters::endpoints_map_ [private]
 

Map of endpoints this server is willing to accept requests on.

Definition at line 236 of file params.h.

Referenced by add_endpoints(), and get_endpoint_set().

bool TAO_ORB_Parameters::enforce_preferred_interfaces_ [private]
 

Definition at line 350 of file params.h.

Referenced by enforce_pref_interfaces().

int TAO_ORB_Parameters::linger_ [private]
 

For setting the SO_LINGER option.

Definition at line 285 of file params.h.

Referenced by linger().

ACE_CDR::ULong TAO_ORB_Parameters::max_message_size_ [private]
 

Maximum GIOP message size to be sent over a given transport.

Setting a maximum message size will cause outgoing GIOP fragmentation to be enabled.

Definition at line 272 of file params.h.

CORBA::String_var TAO_ORB_Parameters::mcast_discovery_endpoint_ [private]
 

Address:port for Multicast Discovery Protocol for the Naming Service.

Definition at line 243 of file params.h.

Referenced by mcast_discovery_endpoint().

bool TAO_ORB_Parameters::negotiate_codesets_ [private]
 

Enable the use of codeset negotiation.

Definition at line 364 of file params.h.

Referenced by negotiate_codesets().

int TAO_ORB_Parameters::nodelay_ [private]
 

1 if we're using TCP_NODELAY and 0 otherwise.

Definition at line 255 of file params.h.

Referenced by nodelay().

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.

Definition at line 332 of file params.h.

Referenced by parallel_connect_delay().

ACE_CString TAO_ORB_Parameters::pref_network_ [private]
 

Preferred network interfaces as a string.

Definition at line 335 of file params.h.

Referenced by preferred_interfaces().

bool TAO_ORB_Parameters::prefer_ipv6_interfaces_ [private]
 

Prefer to connect IPv6 over IPv4 Yes or No.

Definition at line 354 of file params.h.

Referenced by prefer_ipv6_interfaces().

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.

Definition at line 307 of file params.h.

Referenced by sched_policy().

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.

Definition at line 316 of file params.h.

Referenced by scope_policy().

CORBA::UShort TAO_ORB_Parameters::service_port_[TAO_NO_OF_MCAST_SERVICES] [private]
 

Port numbers of the configured services.

Definition at line 239 of file params.h.

Referenced by service_port(), and TAO_ORB_Parameters().

int TAO_ORB_Parameters::shared_profile_ [private]
 

Shared Profile - Use the same profile for multiple endpoints.

Definition at line 322 of file params.h.

Referenced by shared_profile().

int TAO_ORB_Parameters::single_read_optimization_ [private]
 

Single read optimization.

Definition at line 319 of file params.h.

Referenced by single_read_optimization().

int TAO_ORB_Parameters::sock_dontroute_ [private]
 

1 if we're using SO_DONTROUTE and 0 otherwise (default 0).

Definition at line 261 of file params.h.

Referenced by sock_dontroute().

int TAO_ORB_Parameters::sock_keepalive_ [private]
 

1 if we're using SO_KEEPALIVE and 0 otherwise (default 0).

Definition at line 258 of file params.h.

Referenced by sock_keepalive().

int TAO_ORB_Parameters::sock_rcvbuf_size_ [private]
 

Size to be used for a socket's receive buffer.

Definition at line 249 of file params.h.

Referenced by sock_rcvbuf_size().

int TAO_ORB_Parameters::sock_sndbuf_size_ [private]
 

Size to be used for a socket's send buffer.

Definition at line 252 of file params.h.

Referenced by sock_sndbuf_size().

int TAO_ORB_Parameters::std_profile_components_ [private]
 

If true then the standard OMG components are not generated.

Definition at line 288 of file params.h.

Referenced by std_profile_components().

int TAO_ORB_Parameters::use_dotted_decimal_addresses_ [private]
 

For selecting a address notation.

Definition at line 278 of file params.h.

Referenced by use_dotted_decimal_addresses().

int TAO_ORB_Parameters::use_lite_protocol_ [private]
 

For selecting a liteweight version of the GIOP protocol.

Definition at line 275 of file params.h.

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.

Definition at line 326 of file params.h.

Referenced by use_parallel_connects().


The documentation for this class was generated from the following files:
Generated on Thu Nov 9 12:22:53 2006 for TAO by doxygen 1.3.6