diff options
author | Carlos Garnacho <carlosg@gnome.org> | 2017-07-10 23:52:37 +0200 |
---|---|---|
committer | Carlos Garnacho <carlosg@gnome.org> | 2017-07-11 18:13:46 +0200 |
commit | 41649a26e1e8816f47a2e4832a62d39b58f775b2 (patch) | |
tree | 5cfa606cd83d39c3390575bb52ef94e9c49ced5b /src/libtracker-sparql/tracker-resource.c | |
parent | eb574ce679dc9a6bf14076173fa622c12a8f0596 (diff) | |
download | tracker-41649a26e1e8816f47a2e4832a62d39b58f775b2.tar.gz |
libtracker-sparql: Add tracker_resource_[add|set]_take_relation()
These are C helper functions, so users may create trees of TrackerResources
without having to manually unref all non-root ones.
Diffstat (limited to 'src/libtracker-sparql/tracker-resource.c')
-rw-r--r-- | src/libtracker-sparql/tracker-resource.c | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/src/libtracker-sparql/tracker-resource.c b/src/libtracker-sparql/tracker-resource.c index 2b405ce06..694f5ac87 100644 --- a/src/libtracker-sparql/tracker-resource.c +++ b/src/libtracker-sparql/tracker-resource.c @@ -404,6 +404,21 @@ SET_PROPERTY_FOR_GTYPE (tracker_resource_set_int64, gint64, G_TYPE_INT64, g_valu SET_PROPERTY_FOR_GTYPE (tracker_resource_set_relation, TrackerResource *, TRACKER_TYPE_RESOURCE, g_value_set_object, validate_pointer); /** + * tracker_resource_set_take_relation: (skip) + * @self: the #TrackerResource + * @property_uri: a string identifying the property to modify + * @resource: the property object + * + * Sets a single-valued resource object as a #TrackerResource. This + * function produces similar RDF to tracker_resource_set_uri(), + * although in this function the URI will depend on the identifier + * set on @resource. This function takes ownership of @resource. + * + * Since: 2.0 + */ +SET_PROPERTY_FOR_GTYPE (tracker_resource_set_take_relation, TrackerResource *, TRACKER_TYPE_RESOURCE, g_value_take_object, validate_pointer); + +/** * tracker_resource_set_string: * @self: the #TrackerResource * @property_uri: a string identifying the property to modify @@ -609,6 +624,22 @@ ADD_PROPERTY_FOR_GTYPE (tracker_resource_add_int64, gint64, G_TYPE_INT64, g_valu ADD_PROPERTY_FOR_GTYPE (tracker_resource_add_relation, TrackerResource *, TRACKER_TYPE_RESOURCE, g_value_set_object, validate_pointer); /** + * tracker_resource_add_take_relation: (skip) + * @self: the #TrackerResource + * @property_uri: a string identifying the property to modify + * @resource: the property object + * + * Adds a resource object to a multi-valued property. This + * function produces similar RDF to tracker_resource_add_uri(), + * although in this function the URI will depend on the identifier + * set on @resource. This function takes ownership of @resource. + * + * Since: 2.0 + */ +ADD_PROPERTY_FOR_GTYPE (tracker_resource_add_take_relation, TrackerResource *, TRACKER_TYPE_RESOURCE, g_value_take_object, validate_pointer); + + +/** * tracker_resource_add_string: * @self: the #TrackerResource * @property_uri: a string identifying the property to modify |