File: endpoint-example.c

package info (click to toggle)
tinysparql 3.10.1-4
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 24,468 kB
  • sloc: ansic: 118,310; python: 6,139; javascript: 719; sh: 121; perl: 106; xml: 67; makefile: 31; sql: 1
file content (37 lines) | stat: -rw-r--r-- 1,118 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
#include <tinysparql.h>

int main (int argc, const char **argv)
{
  g_autoptr (GError) error = NULL;
  g_autoptr (TrackerSparqlConnection) connection = NULL;
  g_autoptr (GFile) ontology = NULL;
  g_autoptr (GMainLoop) main_loop = NULL;

  /* Create a SPARQL store */
  ontology = tracker_sparql_get_ontology_nepomuk ();
  connection = tracker_sparql_connection_new (TRACKER_SPARQL_CONNECTION_FLAGS_NONE,
					      NULL, /* Database location, NULL creates it in-memory */
					      ontology, /* Ontology location */
					      NULL,
					      &error);
  if (connection) {
    g_printerr ("Couldn't create a Tracker store: %s",
                error->message);
    return 1;
  }

  /* Make the connection available via D-Bus, other applications would be
   * able to make connections to this application's bus name
   */
  endpoint = tracker_endpoint_dbus_new (connection, NULL, NULL, NULL, &error);
  if (!endpoint) {
    g_printerr ("Couldn't create D-Bus endpoint: %s",
                error->message);
    return 1;
  }

  main_loop = g_main_loop_new (NULL, FALSE);
  g_main_loop_run (main_loop);

  return 0;
}