#include <ServantRetentionStrategyNonRetain.h>
Inheritance diagram for TAO::Portable_Server::ServantRetentionStrategyNonRetain:
|
Definition at line 30 of file ServantRetentionStrategyNonRetain.cpp.
00030 : 00031 poa_ (0) 00032 { 00033 } |
|
Implements TAO::Portable_Server::ServantRetentionStrategy. Reimplemented in TAO::Portable_Server::ServantRetentionStrategyRetain. Definition at line 159 of file ServantRetentionStrategyNonRetain.cpp.
00163 { 00164 throw PortableServer::POA::WrongPolicy (); 00165 } |
|
Implements TAO::Portable_Server::ServantRetentionStrategy. Reimplemented in TAO::Portable_Server::ServantRetentionStrategyRetain. Definition at line 169 of file ServantRetentionStrategyNonRetain.cpp.
00174 { 00175 throw PortableServer::POA::WrongPolicy (); 00176 } |
|
Implements TAO::Portable_Server::ServantRetentionStrategy. Reimplemented in TAO::Portable_Server::ServantRetentionStrategyRetain. Definition at line 180 of file ServantRetentionStrategyNonRetain.cpp. References ACE_NEW_THROW_EX, TAO_Root_POA::invoke_key_to_object_helper_i(), and TAO_Root_POA::key_to_object_params_.
00183 { 00184 // This operation creates an object reference that encapsulates a 00185 // POA-generated Object Id value and the specified interface 00186 // repository id. This operation does not cause an activation to 00187 // take place. The resulting reference may be passed to clients, so 00188 // that subsequent requests on those references will cause the 00189 // appropriate servant manager to be invoked, if one is 00190 // available. The generated Object Id value may be obtained by 00191 // invoking POA::reference_to_id with the created reference. 00192 00193 PortableServer::ObjectId_var system_id; 00194 PortableServer::ObjectId user_id; 00195 00196 // Otherwise, it is the NON_RETAIN policy. Therefore, any ol' 00197 // object id will do (even an empty one). 00198 PortableServer::ObjectId *sys_id = 0; 00199 ACE_NEW_THROW_EX (sys_id, 00200 PortableServer::ObjectId, 00201 CORBA::NO_MEMORY ()); 00202 00203 system_id = sys_id; 00204 00205 // User id is the same as system id. 00206 user_id = system_id.in (); 00207 00208 // Remember params for potentially invoking <key_to_object> later. 00209 this->poa_->key_to_object_params_.set (system_id, 00210 intf, 00211 0, 00212 1, 00213 priority, 00214 true); 00215 00216 return this->poa_->invoke_key_to_object_helper_i (intf, user_id); 00217 } |
|
Implements TAO::Portable_Server::ServantRetentionStrategy. Reimplemented in TAO::Portable_Server::ServantRetentionStrategyRetain. Definition at line 220 of file ServantRetentionStrategyNonRetain.cpp. References ACE_NEW_THROW_EX, TAO_Root_POA::invoke_key_to_object_helper_i(), and TAO_Root_POA::key_to_object_params_.
00224 { 00225 // This operation creates an object reference that encapsulates the 00226 // specified Object Id and interface repository Id values. This 00227 // operation does not cause an activation to take place. The 00228 // resulting reference may be passed to clients, so that subsequent 00229 // requests on those references will cause the object to be 00230 // activated if necessary, or the default servant used, depending on 00231 // the applicable policies. 00232 00233 PortableServer::Servant servant = 0; 00234 PortableServer::ObjectId_var system_id; 00235 00236 // Otherwise, it is the NON_RETAIN policy. Therefore, user id 00237 // is the same as system id. 00238 PortableServer::ObjectId *sys_id = 0; 00239 ACE_NEW_THROW_EX (sys_id, 00240 PortableServer::ObjectId (oid), 00241 CORBA::NO_MEMORY ()); 00242 00243 system_id = sys_id; 00244 00245 // Remember params for potentially invoking <key_to_object> later. 00246 this->poa_->key_to_object_params_.set (system_id, 00247 intf, 00248 servant, 00249 1, 00250 priority, 00251 true); 00252 00253 return this->poa_->invoke_key_to_object_helper_i (intf, oid); 00254 } |
|
Implements TAO::Portable_Server::ServantRetentionStrategy. Reimplemented in TAO::Portable_Server::ServantRetentionStrategyRetain. Definition at line 140 of file ServantRetentionStrategyNonRetain.cpp.
00141 { 00142 } |
|
Implements TAO::Portable_Server::ServantRetentionStrategy. Reimplemented in TAO::Portable_Server::ServantRetentionStrategyRetain. Definition at line 48 of file ServantRetentionStrategyNonRetain.cpp.
00050 { 00051 // When using Non_Retain we don't have an active object map and we just 00052 // can't deactivate any object 00053 throw PortableServer::POA::WrongPolicy (); 00054 } |
|
Implements TAO::Portable_Server::ServantRetentionStrategy. Reimplemented in TAO::Portable_Server::ServantRetentionStrategyRetain. Definition at line 101 of file ServantRetentionStrategyNonRetain.cpp. References TAO::Portable_Server::POA_Current_Impl::replace_object_id(), and TAO::Portable_Server::Servant_Upcall::user_id().
00105 { 00106 // We have the NON_RETAIN policy, user id is the system id. 00107 00108 // Smartly copy all the data; <poa_current_impl.object_id_> does 00109 // not own the data. 00110 poa_current_impl.replace_object_id (system_id); 00111 00112 servant_upcall.user_id (&system_id); 00113 00114 return 0; 00115 } |
|
Implements TAO::Portable_Server::ServantRetentionStrategy. Reimplemented in TAO::Portable_Server::ServantRetentionStrategyRetain. Definition at line 57 of file ServantRetentionStrategyNonRetain.cpp.
00059 { 00060 throw PortableServer::POA::WrongPolicy (); 00061 } |
|
Implements TAO::Portable_Server::ServantRetentionStrategy. Reimplemented in TAO::Portable_Server::ServantRetentionStrategyRetain. Definition at line 118 of file ServantRetentionStrategyNonRetain.cpp.
00121 {
00122 return -1;
00123 }
|
|
Implements TAO::Portable_Server::ServantRetentionStrategy. Reimplemented in TAO::Portable_Server::ServantRetentionStrategyRetain. Definition at line 85 of file ServantRetentionStrategyNonRetain.cpp.
00088 { 00089 throw PortableServer::POA::WrongPolicy (); 00090 } |
|
Implements TAO::Portable_Server::ServantRetentionStrategy. Reimplemented in TAO::Portable_Server::ServantRetentionStrategyRetain. Definition at line 126 of file ServantRetentionStrategyNonRetain.cpp.
00129 {
00130 return 0;
00131 }
|
|
Implements TAO::Portable_Server::ServantRetentionStrategy. Reimplemented in TAO::Portable_Server::ServantRetentionStrategyRetain. Definition at line 257 of file ServantRetentionStrategyNonRetain.cpp.
00262 {
00263 return -1;
00264 }
|
|
Implements TAO::Portable_Server::ServantRetentionStrategy. Reimplemented in TAO::Portable_Server::ServantRetentionStrategyRetain. Definition at line 267 of file ServantRetentionStrategyNonRetain.cpp.
00269 { 00270 return false; 00271 } |
|
Implements TAO::Portable_Server::ServantRetentionStrategy. Reimplemented in TAO::Portable_Server::ServantRetentionStrategyRetain. Definition at line 93 of file ServantRetentionStrategyNonRetain.cpp. References TAO_SERVANT_NOT_FOUND.
00096 { 00097 return TAO_SERVANT_NOT_FOUND; 00098 } |
|
Implements TAO::Portable_Server::ServantRetentionStrategy. Reimplemented in TAO::Portable_Server::ServantRetentionStrategyRetain. Definition at line 152 of file ServantRetentionStrategyNonRetain.cpp.
00154 { 00155 throw PortableServer::POA::WrongPolicy (); 00156 } |
|
Implements TAO::Portable_Server::ServantRetentionStrategy. Reimplemented in TAO::Portable_Server::ServantRetentionStrategyRetain. Definition at line 145 of file ServantRetentionStrategyNonRetain.cpp.
00147 { 00148 throw PortableServer::POA::WrongPolicy (); 00149 } |
|
Implements TAO::Portable_Server::Policy_Strategy. Reimplemented in TAO::Portable_Server::ServantRetentionStrategyRetain. Definition at line 42 of file ServantRetentionStrategyNonRetain.cpp.
00043 { 00044 poa_ = 0; 00045 } |
|
Implements TAO::Portable_Server::Policy_Strategy. Reimplemented in TAO::Portable_Server::ServantRetentionStrategyRetain. Definition at line 36 of file ServantRetentionStrategyNonRetain.cpp.
00037 { 00038 poa_ = poa; 00039 } |
|
Implements TAO::Portable_Server::ServantRetentionStrategy. Reimplemented in TAO::Portable_Server::ServantRetentionStrategyRetain. Definition at line 64 of file ServantRetentionStrategyNonRetain.cpp. References ACE_NEW_THROW_EX.
00066 { 00067 // The system id is the id (and no conversion/transformation is 00068 // needed). 00069 PortableServer::ObjectId *id = 0; 00070 ACE_NEW_THROW_EX (id, 00071 PortableServer::ObjectId (system_id), 00072 CORBA::NO_MEMORY ()); 00073 00074 return id; 00075 } |
|
Implements TAO::Portable_Server::ServantRetentionStrategy. Reimplemented in TAO::Portable_Server::ServantRetentionStrategyRetain. Definition at line 281 of file ServantRetentionStrategyNonRetain.cpp.
00282 { 00283 return ::PortableServer::NON_RETAIN; 00284 } |
|
Implements TAO::Portable_Server::ServantRetentionStrategy. Reimplemented in TAO::Portable_Server::ServantRetentionStrategyRetain. Definition at line 274 of file ServantRetentionStrategyNonRetain.cpp.
00276 {
00277 return 0;
00278 }
|
|
Implements TAO::Portable_Server::ServantRetentionStrategy. Reimplemented in TAO::Portable_Server::ServantRetentionStrategyRetain. Definition at line 78 of file ServantRetentionStrategyNonRetain.cpp.
00080 { 00081 throw PortableServer::POA::WrongPolicy (); 00082 } |
|
Implements TAO::Portable_Server::ServantRetentionStrategy. Reimplemented in TAO::Portable_Server::ServantRetentionStrategyRetain. Definition at line 134 of file ServantRetentionStrategyNonRetain.cpp.
00135 {
00136 return 0;
00137 }
|
|
Definition at line 125 of file ServantRetentionStrategyNonRetain.h. |