|
Packit |
4b6dd7 |
/* -*- Mode: C; indent-tabs-mode: t; c-basic-offset: 8; tab-width: 8 -*- */
|
|
Packit |
4b6dd7 |
/*
|
|
Packit |
4b6dd7 |
* GData Client
|
|
Packit |
4b6dd7 |
* Copyright (C) 2014 Carlos Garnacho <carlosg@gnome.org>
|
|
Packit |
4b6dd7 |
*
|
|
Packit |
4b6dd7 |
* GData Client is free software; you can redistribute it and/or
|
|
Packit |
4b6dd7 |
* modify it under the terms of the GNU Lesser General Public
|
|
Packit |
4b6dd7 |
* License as published by the Free Software Foundation; either
|
|
Packit |
4b6dd7 |
* version 2.1 of the License, or (at your option) any later version.
|
|
Packit |
4b6dd7 |
*
|
|
Packit |
4b6dd7 |
* GData Client is distributed in the hope that it will be useful,
|
|
Packit |
4b6dd7 |
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
Packit |
4b6dd7 |
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
Packit |
4b6dd7 |
* Lesser General Public License for more details.
|
|
Packit |
4b6dd7 |
*
|
|
Packit |
4b6dd7 |
* You should have received a copy of the GNU Lesser General Public
|
|
Packit |
4b6dd7 |
* License along with GData Client. If not, see <http://www.gnu.org/licenses/>.
|
|
Packit |
4b6dd7 |
*/
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
/**
|
|
Packit |
4b6dd7 |
* SECTION:gdata-freebase-search-result
|
|
Packit |
4b6dd7 |
* @short_description: GData Freebase search result object
|
|
Packit |
4b6dd7 |
* @stability: Stable
|
|
Packit |
4b6dd7 |
* @include: gdata/services/freebase/gdata-freebase-result.h
|
|
Packit |
4b6dd7 |
*
|
|
Packit |
4b6dd7 |
* #GDataFreebaseSearchResult is a subclass of #GDataEntry to represent the result of a Freebase search query.
|
|
Packit |
4b6dd7 |
*
|
|
Packit |
4b6dd7 |
* For more details of Google Freebase API, see the <ulink type="http" url="https://developers.google.com/freebase/v1/">
|
|
Packit |
4b6dd7 |
* online documentation</ulink>.
|
|
Packit |
4b6dd7 |
*
|
|
Packit |
4b6dd7 |
* Since: 0.15.1
|
|
Packit |
4b6dd7 |
* Deprecated: 0.17.7: Google Freebase has been permanently shut down.
|
|
Packit |
4b6dd7 |
*/
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
#include <config.h>
|
|
Packit |
4b6dd7 |
#include <glib.h>
|
|
Packit |
4b6dd7 |
#include <glib/gi18n-lib.h>
|
|
Packit |
4b6dd7 |
#include <string.h>
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
#include "gdata-freebase-search-result.h"
|
|
Packit |
4b6dd7 |
#include "gdata-private.h"
|
|
Packit |
4b6dd7 |
#include "gdata-types.h"
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
G_GNUC_BEGIN_IGNORE_DEPRECATIONS
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
#define URLBASE "https://www.googleapis.com/freebase/v1"
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
struct _GDataFreebaseSearchResultItem {
|
|
Packit |
4b6dd7 |
gchar *mid;
|
|
Packit |
4b6dd7 |
gchar *id;
|
|
Packit |
4b6dd7 |
gchar *name;
|
|
Packit |
4b6dd7 |
gchar *lang;
|
|
Packit |
4b6dd7 |
gchar *notable_id;
|
|
Packit |
4b6dd7 |
gchar *notable_name;
|
|
Packit |
4b6dd7 |
gdouble score;
|
|
Packit |
4b6dd7 |
};
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
struct _GDataFreebaseSearchResultPrivate {
|
|
Packit |
4b6dd7 |
GPtrArray *items; /* contains owned GDataFreebaseSearchResultItem structs */
|
|
Packit |
4b6dd7 |
guint total_hits;
|
|
Packit |
4b6dd7 |
};
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
static void gdata_freebase_search_result_finalize (GObject *self);
|
|
Packit |
4b6dd7 |
static gboolean parse_json (GDataParsable *parsable, JsonReader *reader, gpointer user_data, GError **error);
|
|
Packit |
4b6dd7 |
static GDataFreebaseSearchResultItem * item_copy (const GDataFreebaseSearchResultItem *item);
|
|
Packit |
4b6dd7 |
static void item_free (GDataFreebaseSearchResultItem *item);
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
G_DEFINE_BOXED_TYPE (GDataFreebaseSearchResultItem, gdata_freebase_search_result_item, item_copy, item_free)
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
G_DEFINE_TYPE (GDataFreebaseSearchResult, gdata_freebase_search_result, GDATA_TYPE_FREEBASE_RESULT)
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
static void
|
|
Packit |
4b6dd7 |
gdata_freebase_search_result_class_init (GDataFreebaseSearchResultClass *klass)
|
|
Packit |
4b6dd7 |
{
|
|
Packit |
4b6dd7 |
GDataParsableClass *parsable_class = GDATA_PARSABLE_CLASS (klass);
|
|
Packit |
4b6dd7 |
GObjectClass *gobject_class = G_OBJECT_CLASS (klass);
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
g_type_class_add_private (klass, sizeof (GDataFreebaseSearchResultPrivate));
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
gobject_class->finalize = gdata_freebase_search_result_finalize;
|
|
Packit |
4b6dd7 |
parsable_class->parse_json = parse_json;
|
|
Packit |
4b6dd7 |
}
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
static GDataFreebaseSearchResultItem *
|
|
Packit |
4b6dd7 |
item_new (void)
|
|
Packit |
4b6dd7 |
{
|
|
Packit |
4b6dd7 |
return g_slice_new0 (GDataFreebaseSearchResultItem);
|
|
Packit |
4b6dd7 |
}
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
static void
|
|
Packit |
4b6dd7 |
item_free (GDataFreebaseSearchResultItem *item)
|
|
Packit |
4b6dd7 |
{
|
|
Packit |
4b6dd7 |
g_free (item->mid);
|
|
Packit |
4b6dd7 |
g_free (item->id);
|
|
Packit |
4b6dd7 |
g_free (item->name);
|
|
Packit |
4b6dd7 |
g_free (item->lang);
|
|
Packit |
4b6dd7 |
g_free (item->notable_id);
|
|
Packit |
4b6dd7 |
g_free (item->notable_name);
|
|
Packit |
4b6dd7 |
g_slice_free (GDataFreebaseSearchResultItem, item);
|
|
Packit |
4b6dd7 |
}
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
static GDataFreebaseSearchResultItem *
|
|
Packit |
4b6dd7 |
item_copy (const GDataFreebaseSearchResultItem *item)
|
|
Packit |
4b6dd7 |
{
|
|
Packit |
4b6dd7 |
GDataFreebaseSearchResultItem *copy;
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
copy = item_new ();
|
|
Packit |
4b6dd7 |
copy->mid = g_strdup (item->mid);
|
|
Packit |
4b6dd7 |
copy->id = g_strdup (item->id);
|
|
Packit |
4b6dd7 |
copy->name = g_strdup (item->name);
|
|
Packit |
4b6dd7 |
copy->lang = g_strdup (item->lang);
|
|
Packit |
4b6dd7 |
copy->notable_id = g_strdup (item->notable_id);
|
|
Packit |
4b6dd7 |
copy->notable_name = g_strdup (item->notable_name);
|
|
Packit |
4b6dd7 |
copy->score = item->score;
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
return copy;
|
|
Packit |
4b6dd7 |
}
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
static void
|
|
Packit |
4b6dd7 |
gdata_freebase_search_result_init (GDataFreebaseSearchResult *self)
|
|
Packit |
4b6dd7 |
{
|
|
Packit |
4b6dd7 |
self->priv = G_TYPE_INSTANCE_GET_PRIVATE (self, GDATA_TYPE_FREEBASE_SEARCH_RESULT, GDataFreebaseSearchResultPrivate);
|
|
Packit |
4b6dd7 |
self->priv->items = g_ptr_array_new_with_free_func ((GDestroyNotify) item_free);
|
|
Packit |
4b6dd7 |
}
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
static void
|
|
Packit |
4b6dd7 |
gdata_freebase_search_result_finalize (GObject *self)
|
|
Packit |
4b6dd7 |
{
|
|
Packit |
4b6dd7 |
GDataFreebaseSearchResultPrivate *priv = GDATA_FREEBASE_SEARCH_RESULT (self)->priv;
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
g_ptr_array_unref (priv->items);
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
G_OBJECT_CLASS (gdata_freebase_search_result_parent_class)->finalize (self);
|
|
Packit |
4b6dd7 |
}
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
static gboolean
|
|
Packit |
4b6dd7 |
parse_json (GDataParsable *parsable, JsonReader *reader, gpointer user_data, GError **error)
|
|
Packit |
4b6dd7 |
{
|
|
Packit |
4b6dd7 |
GDataFreebaseSearchResultPrivate *priv = GDATA_FREEBASE_SEARCH_RESULT (parsable)->priv;
|
|
Packit |
4b6dd7 |
const GError *inner_error = NULL;
|
|
Packit |
4b6dd7 |
const gchar *member_name;
|
|
Packit |
4b6dd7 |
gint count, i;
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
GDATA_PARSABLE_CLASS (gdata_freebase_search_result_parent_class)->parse_json (parsable, reader, user_data, error);
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
#define ITEM_SET_STRING(id,field,mandatory) \
|
|
Packit |
4b6dd7 |
json_reader_read_member (reader, #id); \
|
|
Packit |
4b6dd7 |
item->field = g_strdup (json_reader_get_string_value (reader)); \
|
|
Packit |
4b6dd7 |
if (mandatory) { \
|
|
Packit |
4b6dd7 |
inner_error = json_reader_get_error (reader); \
|
|
Packit |
4b6dd7 |
if (inner_error != NULL) goto item_error; \
|
|
Packit |
4b6dd7 |
} \
|
|
Packit |
4b6dd7 |
json_reader_end_member (reader);
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
#define ITEM_SET_DOUBLE(id,field) \
|
|
Packit |
4b6dd7 |
json_reader_read_member (reader, #id); \
|
|
Packit |
4b6dd7 |
item->field = json_reader_get_double_value (reader); \
|
|
Packit |
4b6dd7 |
inner_error = json_reader_get_error (reader); \
|
|
Packit |
4b6dd7 |
if (inner_error != NULL) goto item_error; \
|
|
Packit |
4b6dd7 |
json_reader_end_member (reader);
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
member_name = json_reader_get_member_name (reader);
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
if (member_name == NULL)
|
|
Packit |
4b6dd7 |
return FALSE;
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
if (strcmp (member_name, "hits") == 0) {
|
|
Packit |
4b6dd7 |
priv->total_hits = json_reader_get_int_value (reader);
|
|
Packit |
4b6dd7 |
return TRUE;
|
|
Packit |
4b6dd7 |
} else if (strcmp (member_name, "result") != 0) {
|
|
Packit |
4b6dd7 |
/* Avoid anything else besides hits/result */
|
|
Packit |
4b6dd7 |
return TRUE;
|
|
Packit |
4b6dd7 |
}
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
if (!json_reader_is_array (reader))
|
|
Packit |
4b6dd7 |
return FALSE;
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
count = json_reader_count_elements (reader);
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
for (i = 0; i < count; i++) {
|
|
Packit |
4b6dd7 |
GDataFreebaseSearchResultItem *item;
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
item = item_new ();
|
|
Packit |
4b6dd7 |
json_reader_read_element (reader, i);
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
ITEM_SET_STRING (mid, mid, TRUE);
|
|
Packit |
4b6dd7 |
ITEM_SET_STRING (id, id, FALSE);
|
|
Packit |
4b6dd7 |
ITEM_SET_STRING (name, name, TRUE);
|
|
Packit |
4b6dd7 |
ITEM_SET_STRING (lang, lang, FALSE);
|
|
Packit |
4b6dd7 |
ITEM_SET_DOUBLE (score, score);
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
/* Read "notable" */
|
|
Packit |
4b6dd7 |
json_reader_read_member (reader, "notable");
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
if (json_reader_get_error (reader) == NULL) {
|
|
Packit |
4b6dd7 |
ITEM_SET_STRING (id, notable_id, TRUE);
|
|
Packit |
4b6dd7 |
ITEM_SET_STRING (name, notable_name, TRUE);
|
|
Packit |
4b6dd7 |
}
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
json_reader_end_member (reader);
|
|
Packit |
4b6dd7 |
json_reader_end_element (reader);
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
g_ptr_array_add (priv->items, item);
|
|
Packit |
4b6dd7 |
continue;
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
item_error:
|
|
Packit |
4b6dd7 |
item_free (item);
|
|
Packit |
4b6dd7 |
gdata_parser_error_required_json_content_missing (reader, error);
|
|
Packit |
4b6dd7 |
return FALSE;
|
|
Packit |
4b6dd7 |
}
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
#undef ITEM_SET_DOUBLE
|
|
Packit |
4b6dd7 |
#undef ITEM_SET_STRING
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
return TRUE;
|
|
Packit |
4b6dd7 |
}
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
/**
|
|
Packit |
4b6dd7 |
* gdata_freebase_search_result_new:
|
|
Packit |
4b6dd7 |
*
|
|
Packit |
4b6dd7 |
* Creates a new #GDataFreebaseSearchResult with the given ID and default properties.
|
|
Packit |
4b6dd7 |
*
|
|
Packit |
4b6dd7 |
* Return value: (transfer full): a new #GDataFreebaseSearchResult; unref with g_object_unref()
|
|
Packit |
4b6dd7 |
*
|
|
Packit |
4b6dd7 |
* Since: 0.15.1
|
|
Packit |
4b6dd7 |
* Deprecated: 0.17.7: Google Freebase has been permanently shut down.
|
|
Packit |
4b6dd7 |
*/
|
|
Packit |
4b6dd7 |
GDataFreebaseSearchResult *
|
|
Packit |
4b6dd7 |
gdata_freebase_search_result_new (void)
|
|
Packit |
4b6dd7 |
{
|
|
Packit |
4b6dd7 |
return g_object_new (GDATA_TYPE_FREEBASE_SEARCH_RESULT, NULL);
|
|
Packit |
4b6dd7 |
}
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
/**
|
|
Packit |
4b6dd7 |
* gdata_freebase_search_result_get_num_items:
|
|
Packit |
4b6dd7 |
* @self: a #GDataFreebaseSearchResult
|
|
Packit |
4b6dd7 |
*
|
|
Packit |
4b6dd7 |
* Returns the number of items contained in this result.
|
|
Packit |
4b6dd7 |
*
|
|
Packit |
4b6dd7 |
* Returns: The number of items
|
|
Packit |
4b6dd7 |
*
|
|
Packit |
4b6dd7 |
* Since: 0.15.1
|
|
Packit |
4b6dd7 |
* Deprecated: 0.17.7: Google Freebase has been permanently shut down.
|
|
Packit |
4b6dd7 |
*/
|
|
Packit |
4b6dd7 |
guint
|
|
Packit |
4b6dd7 |
gdata_freebase_search_result_get_num_items (GDataFreebaseSearchResult *self)
|
|
Packit |
4b6dd7 |
{
|
|
Packit |
4b6dd7 |
g_return_val_if_fail (GDATA_IS_FREEBASE_SEARCH_RESULT (self), 0);
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
return self->priv->items->len;
|
|
Packit |
4b6dd7 |
}
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
/**
|
|
Packit |
4b6dd7 |
* gdata_freebase_search_result_get_total_hits:
|
|
Packit |
4b6dd7 |
* @self: a #GDataFreebaseSearchResult
|
|
Packit |
4b6dd7 |
*
|
|
Packit |
4b6dd7 |
* Returns the total number of hits found for the search query.
|
|
Packit |
4b6dd7 |
*
|
|
Packit |
4b6dd7 |
* Returns: the total number of hits.
|
|
Packit |
4b6dd7 |
*
|
|
Packit |
4b6dd7 |
* Since: 0.15.1
|
|
Packit |
4b6dd7 |
* Deprecated: 0.17.7: Google Freebase has been permanently shut down.
|
|
Packit |
4b6dd7 |
*/
|
|
Packit |
4b6dd7 |
guint
|
|
Packit |
4b6dd7 |
gdata_freebase_search_result_get_total_hits (GDataFreebaseSearchResult *self)
|
|
Packit |
4b6dd7 |
{
|
|
Packit |
4b6dd7 |
g_return_val_if_fail (GDATA_IS_FREEBASE_SEARCH_RESULT (self), 0);
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
return self->priv->total_hits;
|
|
Packit |
4b6dd7 |
}
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
/**
|
|
Packit |
4b6dd7 |
* gdata_freebase_search_result_get_item:
|
|
Packit |
4b6dd7 |
* @self: a #GDataFreebaseSearchResult
|
|
Packit |
4b6dd7 |
* @i: number of item to retrieve
|
|
Packit |
4b6dd7 |
*
|
|
Packit |
4b6dd7 |
* Gets an item from the search result.
|
|
Packit |
4b6dd7 |
*
|
|
Packit |
4b6dd7 |
* Returns: (transfer none) (allow-none): a search result item, or %NULL on invalid item.
|
|
Packit |
4b6dd7 |
*
|
|
Packit |
4b6dd7 |
* Since: 0.15.1
|
|
Packit |
4b6dd7 |
* Deprecated: 0.17.7: Google Freebase has been permanently shut down.
|
|
Packit |
4b6dd7 |
*/
|
|
Packit |
4b6dd7 |
const GDataFreebaseSearchResultItem *
|
|
Packit |
4b6dd7 |
gdata_freebase_search_result_get_item (GDataFreebaseSearchResult *self, guint i)
|
|
Packit |
4b6dd7 |
{
|
|
Packit |
4b6dd7 |
GDataFreebaseSearchResultPrivate *priv;
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
g_return_val_if_fail (GDATA_IS_FREEBASE_SEARCH_RESULT (self), NULL);
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
priv = self->priv;
|
|
Packit |
4b6dd7 |
g_return_val_if_fail (i < priv->items->len, NULL);
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
return g_ptr_array_index (priv->items, i);
|
|
Packit |
4b6dd7 |
}
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
/**
|
|
Packit |
4b6dd7 |
* gdata_freebase_search_result_item_get_mid:
|
|
Packit |
4b6dd7 |
* @item: a #GDataFreebaseSearchResultItem
|
|
Packit |
4b6dd7 |
*
|
|
Packit |
4b6dd7 |
* Returns the machine-encoded ID (MID) of the search result item. Elements may
|
|
Packit |
4b6dd7 |
* have a single MID, as opposed to the potentially multiple Freebase IDs that
|
|
Packit |
4b6dd7 |
* may point to it. MIDs are usable interchangeably with Freebase IDs.
|
|
Packit |
4b6dd7 |
*
|
|
Packit |
4b6dd7 |
* Returns: (transfer none): The result item MID.
|
|
Packit |
4b6dd7 |
*
|
|
Packit |
4b6dd7 |
* Since: 0.15.1
|
|
Packit |
4b6dd7 |
* Deprecated: 0.17.7: Google Freebase has been permanently shut down.
|
|
Packit |
4b6dd7 |
*/
|
|
Packit |
4b6dd7 |
const gchar *
|
|
Packit |
4b6dd7 |
gdata_freebase_search_result_item_get_mid (const GDataFreebaseSearchResultItem *item)
|
|
Packit |
4b6dd7 |
{
|
|
Packit |
4b6dd7 |
g_return_val_if_fail (item != NULL, NULL);
|
|
Packit |
4b6dd7 |
return item->mid;
|
|
Packit |
4b6dd7 |
}
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
/**
|
|
Packit |
4b6dd7 |
* gdata_freebase_search_result_item_get_id:
|
|
Packit |
4b6dd7 |
* @item: a #GDataFreebaseSearchResultItem
|
|
Packit |
4b6dd7 |
*
|
|
Packit |
4b6dd7 |
* Returns the Freebase ID of the search result item.
|
|
Packit |
4b6dd7 |
*
|
|
Packit |
4b6dd7 |
* Returns: (transfer none): The search result item Freebase ID.
|
|
Packit |
4b6dd7 |
*
|
|
Packit |
4b6dd7 |
* Since: 0.15.1
|
|
Packit |
4b6dd7 |
* Deprecated: 0.17.7: Google Freebase has been permanently shut down.
|
|
Packit |
4b6dd7 |
*/
|
|
Packit |
4b6dd7 |
const gchar *
|
|
Packit |
4b6dd7 |
gdata_freebase_search_result_item_get_id (const GDataFreebaseSearchResultItem *item)
|
|
Packit |
4b6dd7 |
{
|
|
Packit |
4b6dd7 |
g_return_val_if_fail (item != NULL, NULL);
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
if (item->id != NULL)
|
|
Packit |
4b6dd7 |
return item->id;
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
return item->mid;
|
|
Packit |
4b6dd7 |
}
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
/**
|
|
Packit |
4b6dd7 |
* gdata_freebase_search_result_item_get_name:
|
|
Packit |
4b6dd7 |
* @item: a #GDataFreebaseSearchResultItem
|
|
Packit |
4b6dd7 |
*
|
|
Packit |
4b6dd7 |
* Returns the human readable name of the search result item.
|
|
Packit |
4b6dd7 |
*
|
|
Packit |
4b6dd7 |
* Returns: (transfer none): The human readable name of the item.
|
|
Packit |
4b6dd7 |
*
|
|
Packit |
4b6dd7 |
* Since: 0.15.1
|
|
Packit |
4b6dd7 |
* Deprecated: 0.17.7: Google Freebase has been permanently shut down.
|
|
Packit |
4b6dd7 |
*/
|
|
Packit |
4b6dd7 |
const gchar *
|
|
Packit |
4b6dd7 |
gdata_freebase_search_result_item_get_name (const GDataFreebaseSearchResultItem *item)
|
|
Packit |
4b6dd7 |
{
|
|
Packit |
4b6dd7 |
g_return_val_if_fail (item != NULL, NULL);
|
|
Packit |
4b6dd7 |
return item->name;
|
|
Packit |
4b6dd7 |
}
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
/**
|
|
Packit |
4b6dd7 |
* gdata_freebase_search_result_item_get_language:
|
|
Packit |
4b6dd7 |
* @item: a #GDataFreebaseSearchResultItem
|
|
Packit |
4b6dd7 |
*
|
|
Packit |
4b6dd7 |
* Gets the language of this search result item, in ISO-639-1 format.
|
|
Packit |
4b6dd7 |
*
|
|
Packit |
4b6dd7 |
* Returns: (transfer none): The language of the search result item.
|
|
Packit |
4b6dd7 |
*
|
|
Packit |
4b6dd7 |
* Since: 0.15.1
|
|
Packit |
4b6dd7 |
* Deprecated: 0.17.7: Google Freebase has been permanently shut down.
|
|
Packit |
4b6dd7 |
*/
|
|
Packit |
4b6dd7 |
const gchar *
|
|
Packit |
4b6dd7 |
gdata_freebase_search_result_item_get_language (const GDataFreebaseSearchResultItem *item)
|
|
Packit |
4b6dd7 |
{
|
|
Packit |
4b6dd7 |
g_return_val_if_fail (item != NULL, NULL);
|
|
Packit |
4b6dd7 |
return item->lang;
|
|
Packit |
4b6dd7 |
}
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
/**
|
|
Packit |
4b6dd7 |
* gdata_freebase_search_result_item_get_notable_id:
|
|
Packit |
4b6dd7 |
* @item: a #GDataFreebaseSearchResultItem
|
|
Packit |
4b6dd7 |
*
|
|
Packit |
4b6dd7 |
* If this search result item is notable in an specific topic, this function
|
|
Packit |
4b6dd7 |
* returns the Freebase ID of this topic.
|
|
Packit |
4b6dd7 |
*
|
|
Packit |
4b6dd7 |
* Returns: (transfer none) (allow-none): The topic the result item is most notable of, or %NULL.
|
|
Packit |
4b6dd7 |
*
|
|
Packit |
4b6dd7 |
* Since: 0.15.1
|
|
Packit |
4b6dd7 |
* Deprecated: 0.17.7: Google Freebase has been permanently shut down.
|
|
Packit |
4b6dd7 |
*/
|
|
Packit |
4b6dd7 |
const gchar *
|
|
Packit |
4b6dd7 |
gdata_freebase_search_result_item_get_notable_id (const GDataFreebaseSearchResultItem *item)
|
|
Packit |
4b6dd7 |
{
|
|
Packit |
4b6dd7 |
g_return_val_if_fail (item != NULL, NULL);
|
|
Packit |
4b6dd7 |
return item->notable_id;
|
|
Packit |
4b6dd7 |
}
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
/**
|
|
Packit |
4b6dd7 |
* gdata_freebase_search_result_item_get_notable_name:
|
|
Packit |
4b6dd7 |
* @item: a #GDataFreebaseSearchResultItem
|
|
Packit |
4b6dd7 |
*
|
|
Packit |
4b6dd7 |
* If this search result item is notable in an specific topic, this function
|
|
Packit |
4b6dd7 |
* returns the human readable name of this topic.
|
|
Packit |
4b6dd7 |
*
|
|
Packit |
4b6dd7 |
* Returns: (transfer none) (allow-none): The human readable topic name, or %NULL
|
|
Packit |
4b6dd7 |
*
|
|
Packit |
4b6dd7 |
* Since: 0.15.1
|
|
Packit |
4b6dd7 |
* Deprecated: 0.17.7: Google Freebase has been permanently shut down.
|
|
Packit |
4b6dd7 |
*/
|
|
Packit |
4b6dd7 |
const gchar *
|
|
Packit |
4b6dd7 |
gdata_freebase_search_result_item_get_notable_name (const GDataFreebaseSearchResultItem *item)
|
|
Packit |
4b6dd7 |
{
|
|
Packit |
4b6dd7 |
g_return_val_if_fail (item != NULL, NULL);
|
|
Packit |
4b6dd7 |
return item->notable_name;
|
|
Packit |
4b6dd7 |
}
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
/**
|
|
Packit |
4b6dd7 |
* gdata_freebase_search_result_item_get_score:
|
|
Packit |
4b6dd7 |
* @item: a #GDataFreebaseSearchResultItem
|
|
Packit |
4b6dd7 |
*
|
|
Packit |
4b6dd7 |
* Returns the score of this search result item. The higher, the more relevant this
|
|
Packit |
4b6dd7 |
* item seems, given the search terms.
|
|
Packit |
4b6dd7 |
*
|
|
Packit |
4b6dd7 |
* Returns: the result item score.
|
|
Packit |
4b6dd7 |
*
|
|
Packit |
4b6dd7 |
* Since: 0.15.1
|
|
Packit |
4b6dd7 |
* Deprecated: 0.17.7: Google Freebase has been permanently shut down.
|
|
Packit |
4b6dd7 |
*/
|
|
Packit |
4b6dd7 |
gdouble
|
|
Packit |
4b6dd7 |
gdata_freebase_search_result_item_get_score (const GDataFreebaseSearchResultItem *item)
|
|
Packit |
4b6dd7 |
{
|
|
Packit |
4b6dd7 |
g_return_val_if_fail (item != NULL, 0.0);
|
|
Packit |
4b6dd7 |
return item->score;
|
|
Packit |
4b6dd7 |
}
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
G_GNUC_END_IGNORE_DEPRECATIONS
|