static void write_pdf_data (PDFData data, TrackerSparqlBuilder *metadata, GPtrArray *keywords) { if (!tracker_is_empty_string (data.title)) { tracker_sparql_builder_predicate (metadata, "nie:title"); tracker_sparql_builder_object_unvalidated (metadata, data.title); } if (!tracker_is_empty_string (data.subject)) { tracker_sparql_builder_predicate (metadata, "nie:subject"); tracker_sparql_builder_object_unvalidated (metadata, data.subject); } if (!tracker_is_empty_string (data.author)) { tracker_sparql_builder_predicate (metadata, "nco:creator"); tracker_sparql_builder_object_blank_open (metadata); tracker_sparql_builder_predicate (metadata, "a"); tracker_sparql_builder_object (metadata, "nco:Contact"); tracker_sparql_builder_predicate (metadata, "nco:fullname"); tracker_sparql_builder_object_unvalidated (metadata, data.author); tracker_sparql_builder_object_blank_close (metadata); } if (!tracker_is_empty_string (data.date)) { tracker_sparql_builder_predicate (metadata, "nie:contentCreated"); tracker_sparql_builder_object_unvalidated (metadata, data.date); } if (!tracker_is_empty_string (data.keywords)) { tracker_keywords_parse (keywords, data.keywords); } }
static void write_pdf_data (PDFData data, TrackerResource *metadata, GPtrArray *keywords) { if (!tracker_is_empty_string (data.title)) { tracker_resource_set_string (metadata, "nie:title", data.title); } if (!tracker_is_empty_string (data.subject)) { tracker_resource_set_string (metadata, "nie:subject", data.subject); } if (!tracker_is_empty_string (data.author)) { TrackerResource *author = tracker_extract_new_contact (data.author); tracker_resource_set_relation (metadata, "nco:creator", author); g_object_unref (author); } if (!tracker_is_empty_string (data.date)) { tracker_resource_set_string (metadata, "nie:contentCreated", data.date); } if (!tracker_is_empty_string (data.keywords)) { tracker_keywords_parse (keywords, data.keywords); } }
static void read_toc (PopplerIndexIter *index, GString **toc) { if (!index) { return; } if (!*toc) { *toc = g_string_new (""); } do { PopplerAction *action; PopplerIndexIter *iter; action = poppler_index_iter_get_action (index); if (!action) { continue; } switch (action->type) { case POPPLER_ACTION_GOTO_DEST: { PopplerActionGotoDest *ag = (PopplerActionGotoDest *)action; PopplerDest *agd = ag->dest; if (!tracker_is_empty_string (ag->title)) { g_string_append_printf (*toc, "%s ", ag->title); } if (!tracker_is_empty_string (agd->named_dest)) { g_string_append_printf (*toc, "%s ", agd->named_dest); } break; } case POPPLER_ACTION_LAUNCH: { PopplerActionLaunch *al = (PopplerActionLaunch *)action; if (!tracker_is_empty_string (al->title)) { g_string_append_printf (*toc, "%s ", al->title); } if (!tracker_is_empty_string (al->file_name)) { g_string_append_printf (*toc, "%s ", al->file_name); } if (!tracker_is_empty_string (al->params)) { g_string_append_printf (*toc, "%s ", al->params); } break; } case POPPLER_ACTION_URI: { PopplerActionUri *au = (PopplerActionUri *)action; if (!tracker_is_empty_string (au->uri)) { g_string_append_printf (*toc, "%s ", au->uri); } break; } case POPPLER_ACTION_NAMED: { PopplerActionNamed *an = (PopplerActionNamed *)action; if (!tracker_is_empty_string (an->title)) { g_string_append_printf (*toc, "%s, ", an->title); } if (!tracker_is_empty_string (an->named_dest)) { g_string_append_printf (*toc, "%s ", an->named_dest); } break; } case POPPLER_ACTION_MOVIE: { PopplerActionMovie *am = (PopplerActionMovie *)action; if (!tracker_is_empty_string (am->title)) { g_string_append_printf (*toc, "%s ", am->title); } break; } case POPPLER_ACTION_NONE: case POPPLER_ACTION_UNKNOWN: case POPPLER_ACTION_GOTO_REMOTE: case POPPLER_ACTION_RENDITION: case POPPLER_ACTION_OCG_STATE: case POPPLER_ACTION_JAVASCRIPT: /* Do nothing */ break; } poppler_action_free (action); iter = poppler_index_iter_get_child (index); read_toc (iter, toc); } while (poppler_index_iter_next (index)); poppler_index_iter_free (index); }