Endpoint
Object Hierarchy:
Description:
[
CCode ( type_id =
"tracker_endpoint_get_type ()" ) ]
public abstract class Endpoint :
Object
`TrackerEndpoint` is a helper object to make RDF triple stores represented by a [class@SparqlConnection] publicly available to other
processes/hosts.
This is a base abstract object, see [class@EndpointDBus] to make RDF triple stores available to other processes in the same machine, and
[class@EndpointHttp] to make it available to other hosts in the network.
When the RDF triple store represented by a [class@SparqlConnection] is made public this way, other peers may connect to the database
using [ctor@SparqlConnection.bus_new] or [ctor@SparqlConnection.remote_new] to access this endpoint exclusively, or they may use the
`SERVICE <uri> { ... }` SPARQL syntax from their own [class@SparqlConnection]s to expand their data set.
By default, and as long as the underlying [class@SparqlConnection] allows SPARQL updates and RDF graph changes, endpoints will allow
updates and modifications to happen through them. Use [method@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 [method@Endpoint.set_allowed_graphs] and [method@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.
Content:
Properties:
- public string[] allowed_graphs { owned get; set; }
RDF graphs that are allowed to be accessed through queries to this
endpoint.
- public string[] allowed_services { owned get; set; }
External SPARQL endpoints that are allowed to be accessed through
queries to this endpint.
- public bool readonly { get; set; }
Whether the endpoint allows SPARQL updates or not.
- public Connection sparql_connection { get; construct; }
The [class@SparqlConnection] being proxied by this endpoint.
Creation methods:
Methods:
- public string[] get_allowed_graphs ()
Returns the list of RDF graphs that the endpoint allows access for.
- public string[] get_allowed_services ()
Returns the list of external SPARQL endpoints that are allowed to be
accessed through this endpoint.
- public bool get_readonly ()
Returns whether the endpoint is readonly, thus SPARQL update queries
are disallowed.
- public unowned Connection get_sparql_connection ()
Returns the [class@SparqlConnection] that this endpoint proxies to a
wider audience.
- public void set_allowed_graphs (string graphs)
Sets the list of RDF graphs that this endpoint will allow access for.
- public void set_allowed_services (string services)
Sets the list of external SPARQL endpoints that this endpoint will
allow access for.
- public void set_readonly (bool readonly)
Sets whether the endpoint will be readonly.
Inherited Members:
All known members inherited from class GLib.Object