MCPcopy Create free account
hub / github.com/KikoPlayProject/KikoPlay / getDetail

Method getDetail

Extension/Script/resourcescript.cpp:57–75  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

55}
56
57ScriptState ResourceScript::getDetail(const ResourceItem &oldItem, ResourceItem &newItem, const QString &scene)
58{
59 if(!hasDetailFunc) return ScriptState(ScriptState::S_ERROR, "No getdetail Function");
60 MutexLocker locker(scriptLock);
61 if(!locker.tryLock()) return ScriptState(ScriptState::S_BUSY);
62 QString errInfo;
63 QVariantList rets = call(detailFunc, {oldItem.toMap(), scene}, 1, errInfo);
64 if(!errInfo.isEmpty()) return ScriptState(ScriptState::S_ERROR, errInfo);
65 if(rets[0].type() != QVariant::Map) return ScriptState(ScriptState::S_ERROR, "Wrong Return Value Type");
66 auto robj = rets[0].toMap();
67 newItem = {
68 robj.value("title").toString(),
69 robj.value("time").toString(),
70 robj.value("size").toString(),
71 robj.value("magnet").toString(),
72 robj.value("url").toString()
73 };
74 return ScriptState(ScriptState::S_NORM);
75}

Callers

nothing calls this directly

Calls 7

ScriptStateClass · 0.85
valueMethod · 0.80
tryLockMethod · 0.45
toMapMethod · 0.45
isEmptyMethod · 0.45
typeMethod · 0.45
toStringMethod · 0.45

Tested by

no test coverage detected