
Data Structures | |
struct | _E_Connman_Element_Call_Data |
struct | _E_Connman_Element_Dict_Entry |
struct | _E_Connman_Element_Listener |
struct | _E_Connman_Element_Pending |
struct | _E_Connman_Element_Property |
struct | e_connman_elements_for_each_data |
struct | e_connman_elements_get_all_str_data |
Typedefs | |
typedef struct _E_Connman_Element_Call_Data | E_Connman_Element_Call_Data |
typedef struct _E_Connman_Element_Dict_Entry | E_Connman_Element_Dict_Entry |
typedef struct _E_Connman_Element_Listener | E_Connman_Element_Listener |
typedef struct _E_Connman_Element_Pending | E_Connman_Element_Pending |
typedef struct _E_Connman_Element_Property | E_Connman_Element_Property |
Functions | |
unsigned char * | e_connman_element_bytes_array_get_stringshared (const E_Connman_Element *element, const char *property, unsigned int *count) |
Eina_Bool | e_connman_element_call_full (E_Connman_Element *element, const char *method_name, E_DBus_Method_Return_Cb cb, Eina_Inlist **pending, E_DBus_Method_Return_Cb user_cb, const void *user_data) |
Eina_Bool | e_connman_element_call_with_path (E_Connman_Element *element, const char *method_name, const char *string, E_DBus_Method_Return_Cb cb, Eina_Inlist **pending, E_DBus_Method_Return_Cb user_cb, const void *user_data) |
Eina_Bool | e_connman_element_call_with_string (E_Connman_Element *element, const char *method_name, const char *string, E_DBus_Method_Return_Cb cb, Eina_Inlist **pending, E_DBus_Method_Return_Cb user_cb, const void *user_data) |
E_Connman_Element * | e_connman_element_get (const char *path) |
Eina_Bool | e_connman_element_is_manager (const E_Connman_Element *element) |
Eina_Bool | e_connman_element_is_profile (const E_Connman_Element *element) |
Eina_Bool | e_connman_element_is_service (const E_Connman_Element *element) |
Eina_Bool | e_connman_element_is_technology (const E_Connman_Element *element) |
void | e_connman_element_list_properties (const E_Connman_Element *element, Eina_Bool(*cb)(void *data, const E_Connman_Element *element, const char *name, int type, const void *value), const void *data) |
void | e_connman_element_listener_add (E_Connman_Element *element, void(*cb)(void *data, const E_Connman_Element *element), const void *data, void(*free_data)(void *data)) |
void | e_connman_element_listener_del (E_Connman_Element *element, void(*cb)(void *data, const E_Connman_Element *element), const void *data) |
Eina_Bool | e_connman_element_message_send (E_Connman_Element *element, const char *method_name, E_DBus_Method_Return_Cb cb, DBusMessage *msg, Eina_Inlist **pending, E_DBus_Method_Return_Cb user_cb, const void *user_data) |
Eina_Bool | e_connman_element_objects_array_get_stringshared (const E_Connman_Element *element, const char *property, unsigned int *count, E_Connman_Element ***p_elements) |
void | e_connman_element_print (FILE *fp, const E_Connman_Element *element) |
void | e_connman_element_properties_list (const E_Connman_Element *element, Eina_Bool(*cb)(void *data, const E_Connman_Element *element, const char *name, int type, const void *value), const void *data) |
Eina_Bool | e_connman_element_properties_sync (E_Connman_Element *element) |
Eina_Bool | e_connman_element_properties_sync_full (E_Connman_Element *element, E_DBus_Method_Return_Cb cb, const void *data) |
Eina_Bool | e_connman_element_property_array_set_full (E_Connman_Element *element, const char *prop, int type, unsigned int count, const void *const *values, E_DBus_Method_Return_Cb cb, const void *data) |
Eina_Bool | e_connman_element_property_dict_get_stringshared (const E_Connman_Element *element, const char *dict_name, const char *key, int *type, void *value) |
Eina_Bool | e_connman_element_property_dict_set_full (E_Connman_Element *element, const char *prop, const char *key, int type, const void *value, E_DBus_Method_Return_Cb cb, const void *data) |
Eina_Bool | e_connman_element_property_dict_strings_array_get_stringshared (const E_Connman_Element *element, const char *dict_name, const char *key, unsigned int *count, const char ***strings) |
Eina_Bool | e_connman_element_property_get (const E_Connman_Element *element, const char *name, int *type, void *value) |
Eina_Bool | e_connman_element_property_get_stringshared (const E_Connman_Element *element, const char *name, int *type, void *value) |
Eina_Bool | e_connman_element_property_set (E_Connman_Element *element, const char *prop, int type, const void *value) |
Eina_Bool | e_connman_element_property_set_full (E_Connman_Element *element, const char *prop, int type, const void *value, E_DBus_Method_Return_Cb cb, const void *data) |
Eina_Bool | e_connman_element_property_type_get (const E_Connman_Element *element, const char *name, int *type) |
Eina_Bool | e_connman_element_property_type_get_stringshared (const E_Connman_Element *element, const char *name, int *type) |
int | e_connman_element_ref (E_Connman_Element *element) |
E_Connman_Element * | e_connman_element_register (const char *path, const char *interface) |
Eina_Bool | e_connman_element_strings_array_get_stringshared (const E_Connman_Element *element, const char *property, unsigned int *count, const char ***strings) |
Eina_Bool | e_connman_element_sync_properties_full (E_Connman_Element *element, E_DBus_Method_Return_Cb cb, const void *data) |
int | e_connman_element_unref (E_Connman_Element *element) |
void | e_connman_element_unregister (E_Connman_Element *element) |
void | e_connman_elements_for_each (Eina_Hash_Foreach cb, const void *user_data) |
Eina_Bool | e_connman_elements_get_all (unsigned int *count, E_Connman_Element ***p_elements) |
Eina_Bool | e_connman_elements_get_all_type (const char *type, unsigned int *count, E_Connman_Element ***p_elements) |
void | e_connman_elements_init (void) |
void | e_connman_elements_shutdown (void) |
void | e_connman_manager_clear_elements (void) |
Typedef Documentation
typedef struct _E_Connman_Element_Call_Data E_Connman_Element_Call_Data |
typedef struct _E_Connman_Element_Dict_Entry E_Connman_Element_Dict_Entry |
typedef struct _E_Connman_Element_Listener E_Connman_Element_Listener |
typedef struct _E_Connman_Element_Pending E_Connman_Element_Pending |
typedef struct _E_Connman_Element_Property E_Connman_Element_Property |
Function Documentation
unsigned char* e_connman_element_bytes_array_get_stringshared | ( | const E_Connman_Element * | element, |
const char * | property, | ||
unsigned int * | count | ||
) |
References _E_Connman_Array::array, e_connman_element_property_get_stringshared(), and ERR.
Eina_Bool e_connman_element_call_full | ( | E_Connman_Element * | element, |
const char * | method_name, | ||
E_DBus_Method_Return_Cb | cb, | ||
Eina_Inlist ** | pending, | ||
E_DBus_Method_Return_Cb | user_cb, | ||
const void * | user_data | ||
) |
Eina_Bool e_connman_element_call_with_path | ( | E_Connman_Element * | element, |
const char * | method_name, | ||
const char * | string, | ||
E_DBus_Method_Return_Cb | cb, | ||
Eina_Inlist ** | pending, | ||
E_DBus_Method_Return_Cb | user_cb, | ||
const void * | user_data | ||
) |
References e_connman_element_message_send(), e_connman_system_bus_name_get(), _E_Connman_Element::interface, and _E_Connman_Element::path.
Referenced by e_connman_manager_agent_register(), e_connman_manager_agent_unregister(), e_connman_manager_profile_remove(), e_connman_service_move_after(), and e_connman_service_move_before().
Eina_Bool e_connman_element_call_with_string | ( | E_Connman_Element * | element, |
const char * | method_name, | ||
const char * | string, | ||
E_DBus_Method_Return_Cb | cb, | ||
Eina_Inlist ** | pending, | ||
E_DBus_Method_Return_Cb | user_cb, | ||
const void * | user_data | ||
) |
References e_connman_element_message_send(), e_connman_system_bus_name_get(), _E_Connman_Element::interface, and _E_Connman_Element::path.
Referenced by e_connman_manager_request_scan(), e_connman_manager_technology_disable(), e_connman_manager_technology_enable(), and e_connman_service_clear_property().
void e_connman_element_list_properties | ( | const E_Connman_Element * | element, |
Eina_Bool(*)(void *data, const E_Connman_Element *element, const char *name, int type, const void *value) | cb, | ||
const void * | data | ||
) |
References e_connman_element_properties_list().
void e_connman_element_listener_add | ( | E_Connman_Element * | element, |
void(*)(void *data, const E_Connman_Element *element) | cb, | ||
const void * | data, | ||
void(*)(void *data) | free_data | ||
) |
void e_connman_element_listener_del | ( | E_Connman_Element * | element, |
void(*)(void *data, const E_Connman_Element *element) | cb, | ||
const void * | data | ||
) |
Eina_Bool e_connman_element_message_send | ( | E_Connman_Element * | element, |
const char * | method_name, | ||
E_DBus_Method_Return_Cb | cb, | ||
DBusMessage * | msg, | ||
Eina_Inlist ** | pending, | ||
E_DBus_Method_Return_Cb | user_cb, | ||
const void * | user_data | ||
) |
Send message with callbacks set to work with connman elements.
If this call fails (returns EINA_FALSE
), pending callbacks will not be called, not even with error messages.
- Returns
EINA_TRUE
on success,EINA_FALSE
on failure.
References _E_Connman_Element_Call_Data::cb, _E_Connman_Element_Pending::data, e_connman_conn, e_connman_system_bus_name_get(), e_dbus_message_send(), _E_Connman_Element_Call_Data::element, ERR, _E_Connman_Element::interface, _E_Connman_Element_Call_Data::p_list, _E_Connman_Element::path, _E_Connman_Element_Pending::pending, _E_Connman_Element_Call_Data::pending, _E_Connman_Element_Pending::user_cb, and _E_Connman_Element_Pending::user_data.
Referenced by e_connman_element_call_full(), e_connman_element_call_with_path(), e_connman_element_call_with_string(), e_connman_element_property_array_set_full(), e_connman_element_property_dict_set_full(), e_connman_element_property_set_full(), and e_connman_service_ipv4_configure_manual().
Eina_Bool e_connman_element_objects_array_get_stringshared | ( | const E_Connman_Element * | element, |
const char * | property, | ||
unsigned int * | count, | ||
E_Connman_Element *** | p_elements | ||
) |
void e_connman_element_print | ( | FILE * | fp, |
const E_Connman_Element * | element | ||
) |
Print element to file descriptor.
References _E_Connman_Element_Property::array, _E_Connman_Element_Property::boolean, _E_Connman_Element_Property::byte, _E_Connman_Element::interface, _E_Connman_Element_Property::name, _E_Connman_Element_Property::path, _E_Connman_Element::path, _E_Connman_Element::props, _E_Connman_Element_Property::str, _E_Connman_Element_Property::type, _E_Connman_Element_Property::u16, _E_Connman_Element_Property::u32, and _E_Connman_Element_Property::value.
void e_connman_element_properties_list | ( | const E_Connman_Element * | element, |
Eina_Bool(*)(void *data, const E_Connman_Element *element, const char *name, int type, const void *value) | cb, | ||
const void * | data | ||
) |
References _E_Connman_Element_Property::boolean, ERR, _E_Connman_Element_Property::name, _E_Connman_Element_Property::path, _E_Connman_Element::props, _E_Connman_Element_Property::str, _E_Connman_Element_Property::type, _E_Connman_Element_Property::u16, _E_Connman_Element_Property::u32, and _E_Connman_Element_Property::value.
Referenced by e_connman_element_list_properties().
Eina_Bool e_connman_element_property_array_set_full | ( | E_Connman_Element * | element, |
const char * | prop, | ||
int | type, | ||
unsigned int | count, | ||
const void *const * | values, | ||
E_DBus_Method_Return_Cb | cb, | ||
const void * | data | ||
) |
Call method SetProperty(prop, value) at the given element on server, when value is an array.
This is a server call, not local, so it may fail and in that case no property is updated locally. If the value was set the event E_CONNMAN_EVENT_ELEMENT_UPDATED will be added to main loop.
- Parameters
-
element to call method on server. prop property name. type DBus type to use for value. value pointer to value, just like regular DBus, see dbus_message_iter_append_basic(). cb function to call when server replies or some error happens. data data to give to cb when it is called.
- Returns
EINA_TRUE
on success,EINA_FALSE
otherwise.
References _E_Connman_Element::_pending, e_connman_element_message_send(), e_connman_system_bus_name_get(), ERR, _E_Connman_Element::interface, _E_Connman_Element::path, and _E_Connman_Element::property_set.
Eina_Bool e_connman_element_property_dict_get_stringshared | ( | const E_Connman_Element * | element, |
const char * | dict_name, | ||
const char * | key, | ||
int * | type, | ||
void * | value | ||
) |
Get dict value given its key inside a dict property.
This will look into properties for one of type dict that contains the given key, to find the property. If no property is found then EINA_FALSE
is returned.
If EINA_FALSE
is returned, then this call failed and parameter-returned values shall be considered invalid.
- Parameters
-
element which element to get the property dict_name property name, must be previously stringshared key key inside dict, must be previously stringshared type if provided it will contain the value type. value where to store the property value, must be a pointer to the exact type, (Eina_Bool *) for booleans, (char **) for strings, and so on.
- Returns
EINA_TRUE
on success,EINA_FALSE
otherwise.
References _E_Connman_Element_Property::array, _E_Connman_Element_Dict_Entry::array, _E_Connman_Element_Dict_Entry::boolean, _E_Connman_Element_Dict_Entry::byte, DBG, ERR, _E_Connman_Element_Property::name, _E_Connman_Element::path, _E_Connman_Element_Dict_Entry::path, _E_Connman_Element::props, _E_Connman_Element_Dict_Entry::str, _E_Connman_Array::type, _E_Connman_Element_Property::type, _E_Connman_Element_Dict_Entry::type, _E_Connman_Element_Dict_Entry::u16, _E_Connman_Element_Dict_Entry::u32, _E_Connman_Element_Property::value, _E_Connman_Element_Dict_Entry::value, and WRN.
Referenced by e_connman_element_property_dict_strings_array_get_stringshared().
Eina_Bool e_connman_element_property_dict_set_full | ( | E_Connman_Element * | element, |
const char * | prop, | ||
const char * | key, | ||
int | type, | ||
const void * | value, | ||
E_DBus_Method_Return_Cb | cb, | ||
const void * | data | ||
) |
Call method SetProperty(prop, {key: value}) at the given element on server.
This is a server call, not local, so it may fail and in that case no property is updated locally. If the value was set the event E_CONNMAN_EVENT_ELEMENT_UPDATED will be added to main loop.
- Parameters
-
element to call method on server. prop property name. key dict key name. type DBus type to use for value. value pointer to value, just like regular DBus, see dbus_message_iter_append_basic(). cb function to call when server replies or some error happens. data data to give to cb when it is called.
- Returns
EINA_TRUE
on success,EINA_FALSE
otherwise.
References _E_Connman_Element::_pending, e_connman_element_message_send(), e_connman_system_bus_name_get(), ERR, _E_Connman_Element::interface, _E_Connman_Element::path, and _E_Connman_Element::property_set.
Eina_Bool e_connman_element_property_dict_strings_array_get_stringshared | ( | const E_Connman_Element * | element, |
const char * | dict_name, | ||
const char * | key, | ||
unsigned int * | count, | ||
const char *** | strings | ||
) |
Eina_Bool e_connman_element_property_get | ( | const E_Connman_Element * | element, |
const char * | name, | ||
int * | type, | ||
void * | value | ||
) |
Get property value given its name.
This will look into properties, to find the property. If no property is found then EINA_FALSE
is returned.
If EINA_FALSE
is returned, then this call failed and parameter-returned values shall be considered invalid.
- Parameters
-
element which element to get the property name property name type if provided it will contain the value type. value where to store the property value, must be a pointer to the exact type, (Eina_Bool *) for booleans, (char **) for strings, and so on.
- Returns
EINA_TRUE
on success,EINA_FALSE
otherwise.
References e_connman_element_property_get_stringshared().
Eina_Bool e_connman_element_property_get_stringshared | ( | const E_Connman_Element * | element, |
const char * | name, | ||
int * | type, | ||
void * | value | ||
) |
Get property value given its name.
This will look into properties, to find the property. If no property is found then EINA_FALSE
is returned.
If EINA_FALSE
is returned, then this call failed and parameter-returned values shall be considered invalid.
- Parameters
-
element which element to get the property name property name, must be previously stringshared type if provided it will contain the value type. value where to store the property value, must be a pointer to the exact type, (Eina_Bool *) for booleans, (char **) for strings, and so on.
- Returns
EINA_TRUE
on success,EINA_FALSE
otherwise.
References _E_Connman_Element_Property::array, _E_Connman_Element_Property::boolean, _E_Connman_Element_Property::byte, ERR, _E_Connman_Element_Property::name, _E_Connman_Element_Property::path, _E_Connman_Element::path, _E_Connman_Element::props, _E_Connman_Element_Property::str, _E_Connman_Element_Property::type, _E_Connman_Element_Property::u16, _E_Connman_Element_Property::u32, _E_Connman_Element_Property::value, and WRN.
Referenced by e_connman_element_bytes_array_get_stringshared(), e_connman_element_objects_array_get_stringshared(), e_connman_element_property_get(), and e_connman_element_strings_array_get_stringshared().
Eina_Bool e_connman_element_property_set | ( | E_Connman_Element * | element, |
const char * | prop, | ||
int | type, | ||
const void * | value | ||
) |
Call method SetProperty(prop, value) at the given element on server.
This is the simple version and there is no check of server reply for errors.
- Parameters
-
element to call method on server. prop property name. type DBus type to use for value. value pointer to value, just like regular DBus, see dbus_message_iter_append_basic().
- Returns
EINA_TRUE
on success,EINA_FALSE
otherwise.
References e_connman_element_property_set_full().
Eina_Bool e_connman_element_property_set_full | ( | E_Connman_Element * | element, |
const char * | prop, | ||
int | type, | ||
const void * | value, | ||
E_DBus_Method_Return_Cb | cb, | ||
const void * | data | ||
) |
Call method SetProperty(prop, value) at the given element on server.
This is a server call, not local, so it may fail and in that case no property is updated locally. If the value was set the event E_CONNMAN_EVENT_ELEMENT_UPDATED will be added to main loop.
- Parameters
-
element to call method on server. prop property name. type DBus type to use for value. value pointer to value, just like regular DBus, see dbus_message_iter_append_basic(). cb function to call when server replies or some error happens. data data to give to cb when it is called.
- Returns
EINA_TRUE
on success,EINA_FALSE
otherwise.
References _E_Connman_Element::_pending, e_connman_element_message_send(), e_connman_system_bus_name_get(), ERR, _E_Connman_Element::interface, _E_Connman_Element::path, and _E_Connman_Element::property_set.
Referenced by e_connman_element_property_set().
Eina_Bool e_connman_element_property_type_get | ( | const E_Connman_Element * | element, |
const char * | name, | ||
int * | type | ||
) |
Get property type.
If EINA_FALSE
is returned, then this call failed and parameter-returned values shall be considered invalid.
- Parameters
-
element which element to get the property name property name type will contain the value type.
- Returns
EINA_TRUE
on success,EINA_FALSE
otherwise.
References e_connman_element_property_type_get_stringshared().
Eina_Bool e_connman_element_property_type_get_stringshared | ( | const E_Connman_Element * | element, |
const char * | name, | ||
int * | type | ||
) |
Get property type.
If EINA_FALSE
is returned, then this call failed and parameter-returned values shall be considered invalid.
- Parameters
-
element which element to get the property name property name, must be previously stringshared type will contain the value type.
- Returns
EINA_TRUE
on success,EINA_FALSE
otherwise.
References _E_Connman_Element_Property::name, _E_Connman_Element::path, _E_Connman_Element::props, _E_Connman_Element_Property::type, and WRN.
Referenced by e_connman_element_property_type_get().
E_Connman_Element* e_connman_element_register | ( | const char * | path, |
const char * | interface | ||
) |
Register the given path, possible creating and element and return it.
This will check if path is already registered, in that case the exiting element is returned. If it was not registered yet, a new element is created, registered and returned.
This call will not add extra references to the object.
- Parameters
-
path the path to register the element
- Returns
- the registered object, no references are added.
References e_connman_conn, E_CONNMAN_EVENT_ELEMENT_ADD, e_connman_system_bus_name_get(), e_dbus_signal_handler_add(), e_connman_elements_get_all_str_data::elements, ERR, _E_Connman_Element::interface, _E_Connman_Element::path, and _E_Connman_Element::signal_handler.
Referenced by e_connman_manager_sync_elements().
Eina_Bool e_connman_element_strings_array_get_stringshared | ( | const E_Connman_Element * | element, |
const char * | property, | ||
unsigned int * | count, | ||
const char *** | strings | ||
) |
References _E_Connman_Array::array, e_connman_element_property_get_stringshared(), ERR, and _E_Connman_Array::type.
Referenced by e_connman_manager_technologies_available_get(), e_connman_manager_technologies_connected_get(), e_connman_manager_technologies_enabled_get(), e_connman_service_domains_configuration_get(), e_connman_service_domains_get(), e_connman_service_nameservers_configuration_get(), e_connman_service_nameservers_get(), and e_connman_service_security_get().
Eina_Bool e_connman_element_sync_properties_full | ( | E_Connman_Element * | element, |
E_DBus_Method_Return_Cb | cb, | ||
const void * | data | ||
) |
References e_connman_element_properties_sync_full().
void e_connman_element_unregister | ( | E_Connman_Element * | element | ) |
Forget about the given element.
This will remove the element from the pool of known objects, then add an E_CONNMAN_EVENT_ELEMENT_DEL and after that will unreference it, possible freeing it.
- Parameters
-
element element to forget about. Its reference will be removed.
References e_connman_elements_get_all_str_data::elements, and _E_Connman_Element::path.
void e_connman_elements_for_each | ( | Eina_Hash_Foreach | cb, |
const void * | user_data | ||
) |
Call the given function for each existing element.
- Parameters
-
cb function to call for each element. It will get as parameters, in order: the element pointer and the given user_data. user_data data to give to cb for each element.
References e_connman_elements_for_each_data::cb, e_connman_elements_for_each_data::data, and ERR.
Eina_Bool e_connman_elements_get_all | ( | unsigned int * | count, |
E_Connman_Element *** | p_elements | ||
) |
Get all known elements.
No reference is added to these elements, since there are no threads in the system, you are free to add references yourself right after the return of this call without race condition, elements by the system (ie: elementRemoved signal)could only be touched on the next main loop iteration.
- Parameters
-
count return the number of elements in array. p_elements array with all elements, these are not referenced and in no particular order, just set if return is EINA_TRUE
.
- Returns
EINA_TRUE
on success,EINA_FALSE
otherwise.
Eina_Bool e_connman_elements_get_all_type | ( | const char * | type, |
unsigned int * | count, | ||
E_Connman_Element *** | p_elements | ||
) |
Get all known elements of type.
No reference is added to these elements, since there are no threads in the system, you are free to add references yourself right after the return of this call without race condition, elements by the system (ie: ElementRemoved signal) could only be touched on the next main loop iteration.
- Parameters
-
type type to filter, or NULL to get all. count return the number of elements in array. p_elements array with all elements, these are not referenced and in no particular order, just set if return is EINA_TRUE
.
- Returns
EINA_TRUE
on success,EINA_FALSE
otherwise.
- See also
- e_connman_elements_get_all()
References e_connman_elements_get_all_str_data::count, e_connman_elements_get_all_str_data::elements, and e_connman_elements_get_all_str_data::str.
void e_connman_elements_init | ( | void | ) |
Creates elements hash.
This has no init counter since its already guarded by other code.
References e_connman_elements_get_all_str_data::elements.
Referenced by e_connman_manager_clear_elements(), and e_connman_system_init().
void e_connman_elements_shutdown | ( | void | ) |
References e_connman_elements_get_all_str_data::elements.
Referenced by e_connman_manager_clear_elements(), and e_connman_system_shutdown().
void e_connman_manager_clear_elements | ( | void | ) |
Remove all known elements.
This will remove all known elements but will NOT add any E_CONNMAN_EVENT_ELEMENT_DEL to main loop.
This is just useful to make sure next e_connman_manager_sync_elements() will not leave any stale elements. This is unlikely to happen, as E_Connman is supposed to catch all required events to avoid stale elements.
References e_connman_elements_init(), and e_connman_elements_shutdown().