diff options
| author | Tatsuhiro Tsujikawa <tatsuhiro.t@gmail.com> | 2013-05-01 21:28:04 +0900 |
|---|---|---|
| committer | Tatsuhiro Tsujikawa <tatsuhiro.t@gmail.com> | 2013-05-01 21:28:04 +0900 |
| commit | 24a6896bf44dcda62c9bbf0b41eb61b178ba6954 (patch) | |
| tree | 22a7cebb815ccaa3bb6e27834d20681cc462835c /src/aria2api.cc | |
| parent | a456d83de00340f6777defa369ddc261fc5a308b (diff) | |
Add sessionConfigSetKeepRunning and shutdown API function
Setting sessionConfigSetKeepRunning to true makes aria2 core keep
running even if there is no download to perform, just like --enable-rpc
option.
Diffstat (limited to 'src/aria2api.cc')
| -rw-r--r-- | src/aria2api.cc | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/src/aria2api.cc b/src/aria2api.cc index 9f46e957..72352266 100644 --- a/src/aria2api.cc +++ b/src/aria2api.cc @@ -106,6 +106,13 @@ int sessionFinal(Session* session) return rv; } +int sessionConfigSetKeepRunning(Session* session, bool flag) +{ + session->context->reqinfo->getDownloadEngine()->getRequestGroupMan() + ->setKeepRunning(flag); + return 0; +} + int run(Session* session, RUN_MODE mode) { const SharedHandle<DownloadEngine>& e = @@ -113,6 +120,18 @@ int run(Session* session, RUN_MODE mode) return e->run(mode == RUN_ONCE); } +int shutdown(Session* session, bool force) +{ + const SharedHandle<DownloadEngine>& e = + session->context->reqinfo->getDownloadEngine(); + if(force) { + e->requestForceHalt(); + } else { + e->requestHalt(); + } + return 0; +} + std::string gidToHex(const A2Gid& gid) { return GroupId::toHex(gid); |
