|
@@ -107,6 +107,11 @@ int run(Session* session, RUN_MODE mode)
|
|
|
return e->run(mode == RUN_ONCE);
|
|
|
}
|
|
|
|
|
|
+std::string gidToString(const A2Gid& gid)
|
|
|
+{
|
|
|
+ return GroupId::toHex(gid);
|
|
|
+}
|
|
|
+
|
|
|
namespace {
|
|
|
template<typename InputIterator, typename Pred>
|
|
|
void apiGatherOption
|
|
@@ -182,6 +187,19 @@ int addUri(Session* session,
|
|
|
return 0;
|
|
|
}
|
|
|
|
|
|
+std::vector<A2Gid> getActiveDownload(Session* session)
|
|
|
+{
|
|
|
+ const SharedHandle<DownloadEngine>& e =
|
|
|
+ session->context->reqinfo->getDownloadEngine();
|
|
|
+ const RequestGroupList& groups = e->getRequestGroupMan()->getRequestGroups();
|
|
|
+ std::vector<A2Gid> res;
|
|
|
+ for(RequestGroupList::const_iterator i = groups.begin(),
|
|
|
+ eoi = groups.end(); i != eoi; ++i) {
|
|
|
+ res.push_back((*i)->getGID());
|
|
|
+ }
|
|
|
+ return res;
|
|
|
+}
|
|
|
+
|
|
|
namespace {
|
|
|
struct RequestGroupDH : public DownloadHandle {
|
|
|
RequestGroupDH(const SharedHandle<RequestGroup>& group)
|