00001 // -*- C++ -*- 00002 // 00003 // Transport.inl,v 1.24 2005/11/02 11:03:27 ossama Exp 00004 00005 TAO_BEGIN_VERSIONED_NAMESPACE_DECL 00006 00007 ACE_INLINE CORBA::ULong 00008 TAO_Transport::tag (void) const 00009 { 00010 return this->tag_; 00011 } 00012 00013 ACE_INLINE TAO_ORB_Core * 00014 TAO_Transport::orb_core (void) const 00015 { 00016 return this->orb_core_; 00017 } 00018 00019 ACE_INLINE TAO_Transport_Mux_Strategy * 00020 TAO_Transport::tms (void) const 00021 { 00022 return tms_; 00023 } 00024 00025 // Return the Wait strategy used by the Transport. 00026 ACE_INLINE TAO_Wait_Strategy * 00027 TAO_Transport::wait_strategy (void) const 00028 { 00029 return this->ws_; 00030 } 00031 00032 ACE_INLINE int 00033 TAO_Transport::bidirectional_flag (void) const 00034 { 00035 return this->bidirectional_flag_; 00036 } 00037 00038 ACE_INLINE void 00039 TAO_Transport::bidirectional_flag (int flag) 00040 { 00041 this->bidirectional_flag_ = flag; 00042 } 00043 00044 ACE_INLINE TAO::Connection_Role 00045 TAO_Transport::opened_as () const 00046 { 00047 return this->opening_connection_role_; 00048 } 00049 00050 ACE_INLINE void 00051 TAO_Transport::opened_as (TAO::Connection_Role role) 00052 { 00053 this->opening_connection_role_ = role; 00054 } 00055 00056 ACE_INLINE TAO::Transport_Cache_Manager::HASH_MAP_ENTRY * 00057 TAO_Transport::cache_map_entry (void) 00058 { 00059 return this->cache_map_entry_; 00060 } 00061 00062 ACE_INLINE void 00063 TAO_Transport::cache_map_entry ( 00064 TAO::Transport_Cache_Manager::HASH_MAP_ENTRY *entry) 00065 { 00066 this->cache_map_entry_ = entry; 00067 } 00068 00069 ACE_INLINE unsigned long 00070 TAO_Transport::purging_order (void) const 00071 { 00072 return this->purging_order_; 00073 } 00074 00075 ACE_INLINE void 00076 TAO_Transport::purging_order (unsigned long value) 00077 { 00078 // This should only be called by the Transport Cache Manager when 00079 // it is holding it's lock. 00080 // The transport should still be here since the cache manager still 00081 // has a reference to it. 00082 this->purging_order_ = value; 00083 } 00084 00085 ACE_INLINE size_t 00086 TAO_Transport::id (void) const 00087 { 00088 return this->id_; 00089 } 00090 00091 ACE_INLINE void 00092 TAO_Transport::id (size_t id) 00093 { 00094 this->id_ = id; 00095 } 00096 00097 ACE_INLINE int 00098 TAO_Transport::queue_is_empty (void) 00099 { 00100 ACE_GUARD_RETURN (ACE_Lock, 00101 ace_mon, 00102 *this->handler_lock_, 00103 -1); 00104 return this->queue_is_empty_i (); 00105 } 00106 00107 ACE_INLINE int 00108 TAO_Transport::flush_timer_pending (void) const 00109 { 00110 return this->flush_timer_id_ != -1; 00111 } 00112 00113 ACE_INLINE void 00114 TAO_Transport::reset_flush_timer (void) 00115 { 00116 this->flush_timer_id_ = -1; 00117 this->current_deadline_ = ACE_Time_Value::zero; 00118 } 00119 00120 //******************************************************************** 00121 // codeset related methods 00122 00123 00124 ACE_INLINE TAO_Codeset_Translator_Base * 00125 TAO_Transport::char_translator (void) const 00126 { 00127 return this->char_translator_; 00128 } 00129 00130 ACE_INLINE TAO_Codeset_Translator_Base * 00131 TAO_Transport::wchar_translator (void) const 00132 { 00133 return this->wchar_translator_; 00134 } 00135 00136 ACE_INLINE void 00137 TAO_Transport::char_translator (TAO_Codeset_Translator_Base *tf) 00138 { 00139 this->char_translator_ = tf; 00140 this->tcs_set_ = 1; 00141 } 00142 00143 ACE_INLINE void 00144 TAO_Transport::wchar_translator (TAO_Codeset_Translator_Base *tf) 00145 { 00146 this->wchar_translator_ = tf; 00147 this->tcs_set_ = 1; 00148 } 00149 00150 /// CodeSet negotiation 00151 ACE_INLINE CORBA::Boolean 00152 TAO_Transport::is_tcs_set(void) const 00153 { 00154 return tcs_set_; 00155 } 00156 00157 ACE_INLINE void 00158 TAO_Transport::first_request_sent (void) 00159 { 00160 this->first_request_ = 0; 00161 } 00162 00163 ACE_INLINE bool 00164 TAO_Transport::is_connected (void) const 00165 { 00166 ACE_GUARD_RETURN (ACE_Lock, 00167 ace_mon, 00168 *this->handler_lock_, 00169 false); 00170 00171 return this->is_connected_; 00172 } 00173 00174 ACE_INLINE TAO_Connection_Handler * 00175 TAO_Transport::connection_handler (void) 00176 { 00177 return this->connection_handler_i(); 00178 } 00179 00180 ACE_INLINE size_t 00181 TAO_Transport::recv_buffer_size (void) const 00182 { 00183 return this->recv_buffer_size_; 00184 } 00185 00186 ACE_INLINE size_t 00187 TAO_Transport::sent_byte_count (void) const 00188 { 00189 return this->sent_byte_count_; 00190 } 00191 00192 TAO_END_VERSIONED_NAMESPACE_DECL