Tizen Native API  4.0
Service

Functions

Eldbus_Service_Interface * eldbus_service_interface_register (Eldbus_Connection *conn, const char *path, const Eldbus_Service_Interface_Desc *desc)
 Register an interface in the given path and connection.
Eldbus_Service_Interface * eldbus_service_interface_fallback_register (Eldbus_Connection *conn, const char *path, const Eldbus_Service_Interface_Desc *desc)
 Register a fallback interface handler for a given subsection of the object hierarchy. Note: Use eldbus_service_interface_unregister() to unregister a interface.
Eldbus_Service_Interface * eldbus_service_interface_register2 (Eldbus_Connection *conn, const char *path, const Eldbus_Service_Interface_Desc2 *desc)
 Register an interface in the given path and connection. This extended register function allows the registration of stateful methods, with void* data.
Eldbus_Service_Interface * eldbus_service_interface_fallback_register2 (Eldbus_Connection *conn, const char *path, const Eldbus_Service_Interface_Desc2 *desc)
 Register a fallback interface handler for a given subsection of the object hierarchy. This extended register function allows the registration of stateful methods, with void* data.
void eldbus_service_interface_unregister (Eldbus_Service_Interface *iface)
 Unregister a interface. Note: This doesn't unregister the object path if interface count reaches 0. Use eldbus_service_object_unregister() to unregister the object.
void eldbus_service_object_unregister (Eldbus_Service_Interface *iface)
 Unregister all interfaces of the object path that this interface belongs and the object path.
Eldbus_Connectioneldbus_service_connection_get (const Eldbus_Service_Interface *iface)
const char * eldbus_service_object_path_get (const Eldbus_Service_Interface *iface)
Eina_Bool eldbus_service_signal_emit (const Eldbus_Service_Interface *iface, unsigned int signal_id,...)
 Emit a signal handler of the interface with non-complex types. Each signal handler have a internal id, the first signal handler of interface is = 0 the second = 1 and go on.
Eldbus_Messageeldbus_service_signal_new (const Eldbus_Service_Interface *iface, unsigned int signal_id)
 Create signal message. Each signal handler have a internal id, the first signal handler of interface is = 0 the second = 1 and go on. This function is used when the signal has complex types.
Eina_Bool eldbus_service_signal_send (const Eldbus_Service_Interface *iface, Eldbus_Message *signal_msg)
 Send a signal message.
void eldbus_service_object_data_set (Eldbus_Service_Interface *iface, const char *key, const void *data)
 Store data at object path, this data can be obtained from all interfaces of the same object.
void * eldbus_service_object_data_get (const Eldbus_Service_Interface *iface, const char *key)
 Get data stored in object path.
void * eldbus_service_object_data_del (Eldbus_Service_Interface *iface, const char *key)
 Del data stored in object path.
Eina_Bool eldbus_service_property_changed (const Eldbus_Service_Interface *iface, const char *name)
 Add property to list of changed properties A DBus.PropertiesChanged signal will be sent in an idler with all properties that have changed.
Eina_Bool eldbus_service_property_invalidate_set (const Eldbus_Service_Interface *iface, const char *name, Eina_Bool is_invalidate)
Eina_Bool eldbus_service_object_manager_attach (Eldbus_Service_Interface *iface)
Eina_Bool eldbus_service_object_manager_detach (Eldbus_Service_Interface *iface)

Typedefs

typedef Eina_Bool(* Eldbus_Property_Get_Cb )(const Eldbus_Service_Interface *iface, const char *propname, Eldbus_Message_Iter *iter, const Eldbus_Message *request_msg, Eldbus_Message **error)
typedef Eldbus_Message *(* Eldbus_Property_Set_Cb )(const Eldbus_Service_Interface *iface, const char *propname, Eldbus_Message_Iter *iter, const Eldbus_Message *input_msg)

Defines

#define ELDBUS_ARGS(args...)   (const Eldbus_Arg_Info[]){ args, { NULL, NULL } }
 Used to insert complete types to signature of methods or signals.

Define Documentation

#define ELDBUS_ARGS (   args...)    (const Eldbus_Arg_Info[]){ args, { NULL, NULL } }

Used to insert complete types to signature of methods or signals.

Example: ELDBUS_ARGS({"s", "interface"}, {"s", "property"}) The signature will be "ss" and each string will have a tag name on introspect XML with the respective name.


Typedef Documentation

typedef Eina_Bool(* Eldbus_Property_Get_Cb)(const Eldbus_Service_Interface *iface, const char *propname, Eldbus_Message_Iter *iter, const Eldbus_Message *request_msg, Eldbus_Message **error)

Callback function to append property value to message.

Parameters:
ifaceinterface of property
propnamename of property
itervariant iterator in which value must be appended
request_msgmessage that request property
errorif a error happen you must set a message error to be send caller
Returns:
EINA_TRUE if success
Note:
request_msg and error arguments are only different from NULL when a client request a property with Properties.Get or Properties.GetAll. Upon calls to eldbus_service_property_changed(), this callback will also be called. It's a mistake to return an error in this case because if a property changed, it must have a new value set and it should be able to be read.
typedef Eldbus_Message*(* Eldbus_Property_Set_Cb)(const Eldbus_Service_Interface *iface, const char *propname, Eldbus_Message_Iter *iter, const Eldbus_Message *input_msg)

Callback function to set property value from message.

Parameters:
ifaceinterface of property
propnamename of property
input_msgmessage call where you have to get value
Returns:
Message of response, could be a simple method_return, error or NULL to send response later.

Function Documentation

Eldbus_Connection* eldbus_service_connection_get ( const Eldbus_Service_Interface *  iface)
Deprecated:
Deprecated since 4.0.
Eldbus_Service_Interface* eldbus_service_interface_fallback_register ( Eldbus_Connection conn,
const char *  path,
const Eldbus_Service_Interface_Desc *  desc 
)

Register a fallback interface handler for a given subsection of the object hierarchy. Note: Use eldbus_service_interface_unregister() to unregister a interface.

Deprecated:
Deprecated since 4.0.
Parameters:
connwhere the interface should listen
patha '/' delimited string of path elements
descdescription of interface
See also:
eldbus_service_interface_unregister()
Since (EFL) :
1.9
Returns:
Interface
Since :
3.0
Eldbus_Service_Interface* eldbus_service_interface_fallback_register2 ( Eldbus_Connection conn,
const char *  path,
const Eldbus_Service_Interface_Desc2 *  desc 
)

Register a fallback interface handler for a given subsection of the object hierarchy. This extended register function allows the registration of stateful methods, with void* data.

Deprecated:
Deprecated since 4.0.

Note: Use eldbus_service_interface_unregister() to unregister a interface.

Parameters:
connwhere the interface should listen
patha '/' delimited string of path elements
descdescription of interface
See also:
eldbus_service_interface_unregister()
Since (EFL) :
1.11
Returns:
Interface
Since :
3.0
Eldbus_Service_Interface* eldbus_service_interface_register ( Eldbus_Connection conn,
const char *  path,
const Eldbus_Service_Interface_Desc *  desc 
)

Register an interface in the given path and connection.

Deprecated:
Deprecated since 4.0.
Parameters:
connwhere the interface should listen
pathobject path
descdescription of interface
Returns:
Interface
Since :
3.0
Eldbus_Service_Interface* eldbus_service_interface_register2 ( Eldbus_Connection conn,
const char *  path,
const Eldbus_Service_Interface_Desc2 *  desc 
)

Register an interface in the given path and connection. This extended register function allows the registration of stateful methods, with void* data.

Deprecated:
Deprecated since 4.0.

Note: Use eldbus_service_interface_unregister() to unregister a interface.

Parameters:
connwhere the interface should listen
pathobject path
descdescription of interface
Since (EFL) :
1.11
Returns:
Interface
Since :
3.0
void eldbus_service_interface_unregister ( Eldbus_Service_Interface *  iface)

Unregister a interface. Note: This doesn't unregister the object path if interface count reaches 0. Use eldbus_service_object_unregister() to unregister the object.

Deprecated:
Deprecated since 4.0.
Since :
3.0
void* eldbus_service_object_data_del ( Eldbus_Service_Interface *  iface,
const char *  key 
)

Del data stored in object path.

Deprecated:
Deprecated since 4.0.
Parameters:
ifaceinterface that belongs to the object path where data are stored
keythat identify data
Returns:
pointer to data if found otherwise NULL
Since :
3.0
void* eldbus_service_object_data_get ( const Eldbus_Service_Interface *  iface,
const char *  key 
)

Get data stored in object path.

Deprecated:
Deprecated since 4.0.
Parameters:
ifaceinterface that belongs to the object path where data are stored
keythat identify data
Returns:
pointer to data if found otherwise NULL
Since :
3.0
void eldbus_service_object_data_set ( Eldbus_Service_Interface *  iface,
const char *  key,
const void *  data 
)

Store data at object path, this data can be obtained from all interfaces of the same object.

Deprecated:
Deprecated since 4.0.
Parameters:
ifaceinterface that belong to the object path where data will be stored
keyto identify data
data
Since :
3.0
Eina_Bool eldbus_service_object_manager_attach ( Eldbus_Service_Interface *  iface)
Deprecated:
Deprecated since 4.0. Attach ObjectManager interface.
Parameters:
ifaceObjectManager will be attach in object path of this interface.
Returns:
EINA_TRUE if success
Since :
3.0
Eina_Bool eldbus_service_object_manager_detach ( Eldbus_Service_Interface *  iface)
Deprecated:
Deprecated since 4.0. Detach ObjectManager interface.
Parameters:
ifaceObjectManager of object path of this interface will be detach.
Returns:
EINA_TRUE if success
Since :
3.0
const char* eldbus_service_object_path_get ( const Eldbus_Service_Interface *  iface)
Deprecated:
Deprecated since 4.0.
void eldbus_service_object_unregister ( Eldbus_Service_Interface *  iface)

Unregister all interfaces of the object path that this interface belongs and the object path.

Deprecated:
Deprecated since 4.0.
Since :
3.0
Eina_Bool eldbus_service_property_changed ( const Eldbus_Service_Interface *  iface,
const char *  name 
)

Add property to list of changed properties A DBus.PropertiesChanged signal will be sent in an idler with all properties that have changed.

Deprecated:
Deprecated since 4.0.
Parameters:
ifaceInterface containing the changed property
nameProperty name
Since :
3.0
Eina_Bool eldbus_service_property_invalidate_set ( const Eldbus_Service_Interface *  iface,
const char *  name,
Eina_Bool  is_invalidate 
)
Deprecated:
Deprecated since 4.0.
Eina_Bool eldbus_service_signal_emit ( const Eldbus_Service_Interface *  iface,
unsigned int  signal_id,
  ... 
)

Emit a signal handler of the interface with non-complex types. Each signal handler have a internal id, the first signal handler of interface is = 0 the second = 1 and go on.

Deprecated:
Deprecated since 4.0.
Parameters:
ifaceinterface of the signal
signal_idid of signal
...values that will be send on signal
Since :
3.0
Eldbus_Message* eldbus_service_signal_new ( const Eldbus_Service_Interface *  iface,
unsigned int  signal_id 
)

Create signal message. Each signal handler have a internal id, the first signal handler of interface is = 0 the second = 1 and go on. This function is used when the signal has complex types.

Deprecated:
Deprecated since 4.0.
Parameters:
ifaceinterface of the signal
signal_idid of signal
Since :
3.0
Eina_Bool eldbus_service_signal_send ( const Eldbus_Service_Interface *  iface,
Eldbus_Message signal_msg 
)

Send a signal message.

Deprecated:
Deprecated since 4.0.

On success this will call eldbus_message_unref() on the

Parameters:
signal_msg,whichis the intended behavior in 99% of the cases. Remember to increment the refcount if you want to keep it alive.
Since :
3.0