Description [src]

abstract class Tracker.Endpoint : GObject.Object
  /* No available fields */

TrackerEndpoint is a helper object to make RDF triple stores represented by a TrackerSparqlConnection publicly available to other processes/hosts.

This is a base abstract object, see TrackerEndpointDBus to make RDF triple stores available to other processes in the same machine, and TrackerEndpointHttp to make it available to other hosts in the network.

When the RDF triple store represented by a TrackerSparqlConnection is made public this way, other peers may connect to the database using tracker_sparql_connection_bus_new() or tracker_sparql_connection_remote_new() to access this endpoint exclusively, or they may use the SERVICE <uri> { ... } SPARQL syntax from their own TrackerSparqlConnections to expand their data set.

By default, and as long as the underlying TrackerSparqlConnection allows SPARQL updates and RDF graph changes, endpoints will allow updates and modifications to happen through them. Use tracker_endpoint_set_readonly() to change this behavior.

By default, endpoints allow access to every RDF graph in the triple store and further external SPARQL endpoints to the queries performed on it. Use tracker_endpoint_set_allowed_graphs() and tracker_endpoint_set_allowed_services() to change this behavior. Users do not typically need to do this for D-Bus endpoints, as these do already have a layer of protection with the Tracker portal. This is the mechanism used by the portal itself. This access control API may not interoperate with other SPARQL endpoint implementations than Tracker.


Instance methods


Returns the list of RDF graphs that the endpoint allows access for.

since: 3.7


Returns the list of external SPARQL endpoints that are allowed to be accessed through this endpoint.

since: 3.7


Returns whether the endpoint is readonly, thus SPARQL update queries are disallowed.

since: 3.7


Returns the TrackerSparqlConnection that this endpoint proxies to a wider audience.


Sets the list of RDF graphs that this endpoint will allow access for. Any explicit (e.g. GRAPH keyword) or implicit (e.g. through the default anonymous graph) access to RDF graphs unespecified in this list in SPARQL queries will be seen as if those graphs did not exist, or (equivalently) had an empty set. Changes to these graphs through SPARQL updates will also be disallowed.

since: 3.7


Sets the list of external SPARQL endpoints that this endpoint will allow access for. Access through the SERVICE SPARQL syntax will fail for services not specified in this list.

since: 3.7


Sets whether the endpoint will be readonly. Readonly endpoints will not allow SPARQL update queries. The underlying TrackerSparqlConnection may be readonly of its own, this method does not change its behavior in any way.

since: 3.7

Methods inherited from GObject (43)

Please see GObject for a full list of methods.



RDF graphs that are allowed to be accessed through queries to this endpoint. See tracker_endpoint_set_allowed_graphs().

since: 3.7


External SPARQL endpoints that are allowed to be accessed through queries to this endpint. See tracker_endpoint_set_allowed_services().

since: 3.7


Whether the endpoint allows SPARQL updates or not. See tracker_endpoint_set_readonly().

since: 3.7


The TrackerSparqlConnection being proxied by this endpoint.


Signals inherited from GObject (1)

The notify signal is emitted on an object when one of its properties has its value set through g_object_set_property(), g_object_set(), et al.

Class structure

struct TrackerEndpointClass {
  /* no available fields */

No description available.