|  |  |  | Bonobo Activation API Reference Manual |  | 
|---|---|---|---|---|
| Top | Description | ||||
#include <bonobo-activation/bonobo-activation.h> typedef Bonobo_ImplementationID; typedef Bonobo_ActivationID; typedef Bonobo_ActivationFlags; enum Bonobo_ActivationResultType; Bonobo_ServerInfoList * bonobo_activation_query (const char *requirements,char *const *selection_order,CORBA_Environment *ev); CORBA_Object bonobo_activation_activate (const char *requirements,char *const *selection_order,Bonobo_ActivationFlags flags,Bonobo_ActivationID *ret_aid,CORBA_Environment *ev); CORBA_Object bonobo_activation_activate_from_id (const Bonobo_ActivationID aid,Bonobo_ActivationFlags flags,Bonobo_ActivationID *ret_aid,CORBA_Environment *ev); void (*BonoboActivationCallback) (CORBA_Object activated_object,const char *error_reason,gpointer user_data); void bonobo_activation_activate_async (const char *requirements,char *const *selection_order,Bonobo_ActivationFlags flags,BonoboActivationCallback callback,gpointer user_data,CORBA_Environment *ev); void bonobo_activation_activate_from_id_async (const Bonobo_ActivationID aid,Bonobo_ActivationFlags flags,BonoboActivationCallback callback,gpointer user_data,CORBA_Environment *ev); void bonobo_activation_set_activation_env_value (const char *name,const char *value);
This section describes how you can query for components and activate them.
Two set of functions are described: synchronous and asynchronous ones. The asynchronous version of the functions allow you to avoid blocking your application while the CORBA servers are started.
typedef enum {
  Bonobo_ACTIVATION_RESULT_OBJECT,
  Bonobo_ACTIVATION_RESULT_SHLIB,
  Bonobo_ACTIVATION_RESULT_NONE
} Bonobo_ActivationResultType;
Bonobo_ServerInfoList * bonobo_activation_query (const char *requirements,char *const *selection_order,CORBA_Environment *ev);
Executes the requirements query on the bonobo-activation-server.
The result is sorted according to selection_order. 
selection_order can safely be NULL as well as ev.
The returned list has to be freed with CORBA_free.
| 
 | query string. | 
| 
 | sort criterion for returned list. | 
| 
 | a CORBA_Environmentstructure which will contain 
     the CORBA exception status of the operation, or NULL | 
| Returns : | the list of servers matching the requirements. | 
CORBA_Object bonobo_activation_activate (const char *requirements,char *const *selection_order,Bonobo_ActivationFlags flags,Bonobo_ActivationID *ret_aid,CORBA_Environment *ev);
Activates a given object. ret_aid can be safely NULLed as well
as ev and selection_order. flags can be set to zero if you do 
not what to use.
| 
 | query string. | 
| 
 | sort criterion for returned list. | 
| 
 | how to activate the object. | 
| 
 | AID of the activated object. | 
| 
 | CORBA_Environmentstructure which will contain 
     the CORBA exception status of the operation. | 
| Returns : | the CORBA object reference of the activated object.
              This value can be CORBA_OBJECT_NIL: you are supposed 
              to check evfor success. | 
CORBA_Object bonobo_activation_activate_from_id (const Bonobo_ActivationID aid,Bonobo_ActivationFlags flags,Bonobo_ActivationID *ret_aid,CORBA_Environment *ev);
Activates the server corresponding to aid. ret_aid can be safely 
NULLed as well as ev. flags can be zero if you do not know what 
to do.
| 
 | AID or IID of the object to activate. | 
| 
 | activation flag. | 
| 
 | AID of the activated server. | 
| 
 | CORBA_Environmentstructure which will contain 
     the CORBA exception status of the operation. | 
| Returns : | a CORBA object reference to the newly activated 
              server. Do not forget to check evfor failure!! | 
void (*BonoboActivationCallback) (CORBA_Object activated_object,const char *error_reason,gpointer user_data);
This is the signature of the function which you must pass as a callback to the asynchrounous activation functions.
| 
 | |
| 
 | |
| 
 | 
void bonobo_activation_activate_async (const char *requirements,char *const *selection_order,Bonobo_ActivationFlags flags,BonoboActivationCallback callback,gpointer user_data,CORBA_Environment *ev);
This function will asynchronously try to activate a component
given the requirements query string. When the component is
activated or when the activation fails, it will call callback
with the given user_data data as parameter.
callback will be called with a CORBA_OBJECT_NIL object if the
activation fails. If the activation fails, the callback will be
given a human-readable string containing a description of the
error. In case of sucess, the error string value is undefined.
selection_order can be safely NULLed as well as ev and
user_data. flags can be set to 0 if you do not know what to
use.
| 
 | the bonobo-activation query string. | 
| 
 | preference array. | 
| 
 | activation flags. | 
| 
 | callback function. | 
| 
 | data to be poassed to the callback function. | 
| 
 | exception structure. | 
void bonobo_activation_activate_from_id_async (const Bonobo_ActivationID aid,Bonobo_ActivationFlags flags,BonoboActivationCallback callback,gpointer user_data,CORBA_Environment *ev);
This function will asynchronously try to activate a component
with the given aid. When the component is
activated or when the activation fails, it will call callback
with the given user_data data as parameter.
callback will be called with a CORBA_OBJECT_NIL object if the
activation fails. If the activation fails, the callback will be
given a human-readable string containing a description of the
error. In case of sucess, the error string value is undefined.
flags can be 0 if you do not know what to set it to and
ev can be safely set to NULL.
| 
 | the AID or IID of the component to activate. | 
| 
 | activation flags. | 
| 
 | callback function. | 
| 
 | data to be poassed to the callback function. | 
| 
 | exception structure. |