![]() |
![]() |
![]() |
Bonobo Activation API Reference Manual | ![]() |
---|---|---|---|---|
Top | Description |
#include <bonobo-activation/bonobo-activation.h> typedef Bonobo_ImplementationID; typedef Bonobo_ActivationID; typedef Bonobo_ActivationFlags; 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 struct { CORBA_unsigned_long _maximum, _length; Bonobo_ActivationEnvValue* _buffer; CORBA_boolean _release; } CORBA_sequence_Bonobo_ActivationEnvValue; #endif #if !defined(TC_IMPL_TC_CORBA_sequence_Bonobo_ActivationEnvValue_0) #define TC_IMPL_TC_CORBA_sequence_Bonobo_ActivationEnvValue_0 'B' #define TC_IMPL_TC_CORBA_sequence_Bonobo_ActivationEnvValue_1 'o' #define TC_IMPL_TC_CORBA_sequence_Bonobo_ActivationEnvValue_2 'n' #define TC_IMPL_TC_CORBA_sequence_Bonobo_ActivationEnvValue_3 'o' #define TC_IMPL_TC_CORBA_sequence_Bonobo_ActivationEnvValue_4 'b' #define TC_IMPL_TC_CORBA_sequence_Bonobo_ActivationEnvValue_5 'o' #define TC_IMPL_TC_CORBA_sequence_Bonobo_ActivationEnvValue_6 '_' #define TC_IMPL_TC_CORBA_sequence_Bonobo_ActivationEnvValue_7 'A' #define TC_IMPL_TC_CORBA_sequence_Bonobo_ActivationEnvValue_8 'c' #define TC_IMPL_TC_CORBA_sequence_Bonobo_ActivationEnvValue_9 't' #define TC_IMPL_TC_CORBA_sequence_Bonobo_ActivationEnvValue_10 'i' #define TC_IMPL_TC_CORBA_sequence_Bonobo_ActivationEnvValue_11 'v' #define TC_IMPL_TC_CORBA_sequence_Bonobo_ActivationEnvValue_12 'a' #define TC_IMPL_TC_CORBA_sequence_Bonobo_ActivationEnvValue_13 't' #define TC_IMPL_TC_CORBA_sequence_Bonobo_ActivationEnvValue_14 'i' #define TC_IMPL_TC_CORBA_sequence_Bonobo_ActivationEnvValue_15 'o' #define TC_IMPL_TC_CORBA_sequence_Bonobo_ActivationEnvValue_16 'n' #define TC_IMPL_TC_CORBA_sequence_Bonobo_ActivationEnvValue_17 '_' #define TC_IMPL_TC_CORBA_sequence_Bonobo_ActivationEnvValue_18 't' #define TC_IMPL_TC_CORBA_sequence_Bonobo_ActivationEnvValue_19 'y' #define TC_IMPL_TC_CORBA_sequence_Bonobo_ActivationEnvValue_20 'p' #define TC_IMPL_TC_CORBA_sequence_Bonobo_ActivationEnvValue_21 'e' #define TC_IMPL_TC_CORBA_sequence_Bonobo_ActivationEnvValue_22 's' #ifdef ORBIT_IDL_C_IMODULE_Bonobo_Activation_types static #else extern #endif ORBIT2_MAYBE_CONST struct CORBA_TypeCode_struct TC_CORBA_sequence_Bonobo_ActivationEnvValue_struct; #define TC_CORBA_sequence_Bonobo_ActivationEnvValue ((CORBA_TypeCode)&TC_CORBA_sequence_Bonobo_ActivationEnvValue_struct) #endif #define CORBA_sequence_Bonobo_ActivationEnvValue__alloc() ((CORBA_sequence_Bonobo_ActivationEnvValue *)ORBit_small_alloc (TC_CORBA_sequence_Bonobo_ActivationEnvValue)) #define CORBA_sequence_Bonobo_ActivationEnvValue__freekids(m,d) ORBit_small_freekids (TC_CORBA_sequence_Bonobo_ActivationEnvValue,(m),(d)) #define CORBA_sequence_Bonobo_ActivationEnvValue_allocbuf(l) ((Bonobo_ActivationEnvValue*)ORBit_small_allocbuf (TC_CORBA_sequence_Bonobo_ActivationEnvValue, (l))) #define CORBA_sequence_Bonobo_ActivationEnvValue_allocbuf(l) ((Bonobo_ActivationEnvValue*)ORBit_small_allocbuf (TC_CORBA_sequence_Bonobo_ActivationEnvValue, (l))) #endif #if !defined(_Bonobo_ActivationEnvironment_defined) #define _Bonobo_ActivationEnvironment_defined 1 typedef CORBA_sequence_Bonobo_ActivationEnvValue Bonobo_ActivationEnvironment; #define Bonobo_ActivationEnvironment_marshal(x,y,z) CORBA_sequence_Bonobo_ActivationEnvValue_marshal((x),(y),(z)) #define Bonobo_ActivationEnvironment_demarshal(x,y,z,i) CORBA_sequence_Bonobo_ActivationEnvValue_demarshal((x),(y),(z),(i)) #if !defined(TC_IMPL_TC_Bonobo_ActivationEnvironment_0) #define TC_IMPL_TC_Bonobo_ActivationEnvironment_0 'B' #define TC_IMPL_TC_Bonobo_ActivationEnvironment_1 'o' #define TC_IMPL_TC_Bonobo_ActivationEnvironment_2 'n' #define TC_IMPL_TC_Bonobo_ActivationEnvironment_3 'o' #define TC_IMPL_TC_Bonobo_ActivationEnvironment_4 'b' #define TC_IMPL_TC_Bonobo_ActivationEnvironment_5 'o' #define TC_IMPL_TC_Bonobo_ActivationEnvironment_6 '_' #define TC_IMPL_TC_Bonobo_ActivationEnvironment_7 'A' #define TC_IMPL_TC_Bonobo_ActivationEnvironment_8 'c' #define TC_IMPL_TC_Bonobo_ActivationEnvironment_9 't' #define TC_IMPL_TC_Bonobo_ActivationEnvironment_10 'i' #define TC_IMPL_TC_Bonobo_ActivationEnvironment_11 'v' #define TC_IMPL_TC_Bonobo_ActivationEnvironment_12 'a' #define TC_IMPL_TC_Bonobo_ActivationEnvironment_13 't' #define TC_IMPL_TC_Bonobo_ActivationEnvironment_14 'i' #define TC_IMPL_TC_Bonobo_ActivationEnvironment_15 'o' #define TC_IMPL_TC_Bonobo_ActivationEnvironment_16 'n' #define TC_IMPL_TC_Bonobo_ActivationEnvironment_17 '_' #define TC_IMPL_TC_Bonobo_ActivationEnvironment_18 't' #define TC_IMPL_TC_Bonobo_ActivationEnvironment_19 'y' #define TC_IMPL_TC_Bonobo_ActivationEnvironment_20 'p' #define TC_IMPL_TC_Bonobo_ActivationEnvironment_21 'e' #define TC_IMPL_TC_Bonobo_ActivationEnvironment_22 's' #ifdef ORBIT_IDL_C_IMODULE_Bonobo_Activation_types static #else extern #endif ORBIT2_MAYBE_CONST struct CORBA_TypeCode_struct TC_Bonobo_ActivationEnvironment_struct; #define TC_Bonobo_ActivationEnvironment ((CORBA_TypeCode)&TC_Bonobo_ActivationEnvironment_struct) #endif #define Bonobo_ActivationEnvironment__alloc() ((Bonobo_ActivationEnvironment *)ORBit_small_alloc (TC_CORBA_sequence_Bonobo_ActivationEnvValue)) #define Bonobo_ActivationEnvironment__freekids(m,d) ORBit_small_freekids (TC_CORBA_sequence_Bonobo_ActivationEnvValue,(m),(d)) #define Bonobo_ActivationEnvironment_allocbuf(l) ((Bonobo_ActivationEnvValue*)ORBit_small_allocbuf (TC_CORBA_sequence_Bonobo_ActivationEnvValue, (l))) #endif #if !defined(_Bonobo_ActivationResultType_defined) #define _Bonobo_ActivationResultType_defined 1 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_Environment structure 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_Environment structure 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 ev for 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_Environment structure 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 ev for 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. |