static void
pdf_load_job_from_uri (PdfLoadJob *job)
{
  GFile *file;
  const gchar *gdata_prefix = "google:drive:";
  const gchar *zpj_prefix = "windows-live:skydrive:";

  if (g_str_has_prefix (job->uri, gdata_prefix)) {
    job->resource_id = g_strdup (job->uri + strlen (gdata_prefix));
    pdf_load_job_from_gdata_cache (job);
    return;
  }

  if (g_str_has_prefix (job->uri, zpj_prefix)) {
    job->resource_id = g_strdup (job->uri + strlen (zpj_prefix));
    pdf_load_job_from_zpj_cache (job);
    return;
  }

  file = g_file_new_for_uri (job->uri);
  if (!g_file_is_native (file))
    pdf_load_job_from_remote_file (job);
  else
    pdf_load_job_from_regular_file (job);

  g_object_unref (file);
}
static void
pdf_load_job_start (PdfLoadJob *job)
{
  if (job->gdata_entry != NULL)
    pdf_load_job_from_google_documents (job);
  else if (job->zpj_entry != NULL)
    pdf_load_job_from_skydrive (job);
  else
    pdf_load_job_from_regular_file (job);
}