[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: extragear/office/tellico/src/fetch
From: Robby Stephenson <robby () periapsis ! org>
Date: 2010-05-10 13:47:16
Message-ID: 20100510134716.40F97AC8B1 () svn ! kde ! org
[Download RAW message or body]
SVN commit 1125005 by rstephenson:
make sure to get cast when doing an actor search
M +11 -5 freebasefetcher.cpp
--- trunk/extragear/office/tellico/src/fetch/freebasefetcher.cpp #1125004:1125005
@@ -53,6 +53,7 @@
static const char* FREEBASE_QUERY_URL = \
"http://api.freebase.com/api/service/mqlread"; static const char* FREEBASE_IMAGE_URL \
= "http://www.freebase.com/api/trans/image_thumb"; static const char* \
FREEBASE_BLURB_URL = "http://www.freebase.com/api/trans/blurb"; + static const int \
FREEBASE_RETURNS_PER_REQUEST = 25;
QString value(const QVariantMap& map, const char* name) {
const QVariant v = map.value(QLatin1String(name));
@@ -177,6 +178,7 @@
// grab all properties at the entity level
query.insert(QLatin1String("*"), QVariantList());
+ query.insert(QLatin1String("limit"), FREEBASE_RETURNS_PER_REQUEST);
// grab id for every query, for image and article
QVariantMap id_query;
@@ -414,11 +416,15 @@
if(!castMap.isEmpty()) {
QVariantList actor = castMap.value(QLatin1String("actor")).toList();
QVariantList role = \
castMap.value(QLatin1String("character")).toList();
- if(!actor.isEmpty() && !role.isEmpty()) {
- castList.append(actor.at(0).toString() + \
FieldFormat::columnDelimiterString() + role.at(0).toString()); + \
if(!actor.isEmpty()) { + QString performance = actor.at(0).toString();
+ if(!role.isEmpty()) {
+ performance += FieldFormat::columnDelimiterString() + \
role.at(0).toString(); }
+ castList.append(performance);
}
}
+ }
entry->setField(QLatin1String("cast"), \
castList.join(FieldFormat::rowDelimiterString())); }
break;
@@ -715,11 +721,11 @@
QVariantMap composerQuery = query;
composerQuery.insert(QLatin1String("music~="), QLatin1Char('*') + \
request().value + QLatin1Char('*'));
- QVariantMap castSubquery = query.value(QLatin1String("starring")).toMap();
- castSubquery.remove(QLatin1String("optional"));
+ QVariantMap castSubquery;
castSubquery.insert(QLatin1String("actor~="), QLatin1Char('*') + \
request().value + QLatin1Char('*')); QVariantMap castQuery = query;
- castQuery.insert(QLatin1String("starring"), QVariantList() << castSubquery);
+ // have to give it a dummy namespace so we get back all the actors
+ castQuery.insert(QLatin1String("b:starring"), QVariantList() << \
castSubquery);
queries << directorQuery << castQuery << producerQuery << writerQuery << \
composerQuery; }
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic