Tuxedo
0

Administering a Tuxedo Application at Run Time

 Previous Next Contents View as PDF  

PortableServer::POA::activate_object_with_id

Synopsis

Activates an individual object with a specified ObjectId.

C++ Binding

void activate_object_with_id (
const ObjectId & id,
Servant p_servant);

Argument

id

ObjectId that identifies the object on which that operation was invoked.

p_servant

An instance of the C++ implementation class for the interface.

Exceptions

The ObjectAlreadyActive exception is raised if the CORBA object denoted by the ObjectId value is already active in this POA.

The ServantAlreadyActive exception is raised if the servant is already in the Active Object Map.

Note: Other exceptions can occur if the POA uses unsupported policies.

The BAD_PARAM system exception may be raised if the POA has the SYSTEM_ID policy and it detects that the ObjectId value was not generated by the system or for this POA. An ORB is not required to detect all such invalid ObjectId values. However, a portable application must not invoke activate_object_with_id on a POA if the POA has the SYSTEM_ID policy with an ObjectId value that was not previously generated by the system for that POA, or, if the POA also has the PERSISTENT policy, for a previous instantiation of the same POA.

Description

This operation enters an association between the specified ObjectId and the specified servant in the Active Object Map.

Note: This function is supported only for a joint client/server.

Return Values

None.

Example

MyFooServant* afoo = new MyFooServant(poa, 27);
PortableServer::ObjectId_var oid =
PortableServer::string_to_ObjectId("myLittleFoo");
poa->activate_object_with_id(oid.in(), afoo);
Foo_var foo = afoo->_this();

 

Back to Top Previous Next
Contact e-docsContact BEAwebmasterprivacy