diff options
| author | Tatsuhiro Tsujikawa <tatsuhiro.t@gmail.com> | 2013-05-01 16:58:34 +0900 |
|---|---|---|
| committer | Tatsuhiro Tsujikawa <tatsuhiro.t@gmail.com> | 2013-05-01 16:58:34 +0900 |
| commit | bbc8866cfb28c1ca867672f963b23803a65877f1 (patch) | |
| tree | 5b74bcec51f3e39a0ee1deda174b571702bb8848 /src/RpcMethodImpl.cc | |
| parent | 4c50544f1aff35ffbe467e6aaf74c9f57ec73a57 (diff) | |
Add removeDownload, pauseDownload and unpauseDownload API function
Diffstat (limited to 'src/RpcMethodImpl.cc')
| -rw-r--r-- | src/RpcMethodImpl.cc | 50 |
1 files changed, 24 insertions, 26 deletions
diff --git a/src/RpcMethodImpl.cc b/src/RpcMethodImpl.cc index 56b5bbcf..fa6d5a3b 100644 --- a/src/RpcMethodImpl.cc +++ b/src/RpcMethodImpl.cc @@ -422,32 +422,6 @@ SharedHandle<ValueBase> ForceRemoveRpcMethod::process } namespace { -bool pauseRequestGroup -(const SharedHandle<RequestGroup>& group, bool reserved, bool forcePause) -{ - if((reserved && !group->isPauseRequested()) || - (!reserved && - !group->isForceHaltRequested() && - ((forcePause && group->isHaltRequested() && group->isPauseRequested()) || - (!group->isHaltRequested() && !group->isPauseRequested())))) { - if(!reserved) { - // Call setHaltRequested before setPauseRequested because - // setHaltRequested calls setPauseRequested(false) internally. - if(forcePause) { - group->setForceHaltRequested(true, RequestGroup::NONE); - } else { - group->setHaltRequested(true, RequestGroup::NONE); - } - } - group->setPauseRequested(true); - return true; - } else { - return false; - } -} -} // namespace - -namespace { SharedHandle<ValueBase> pauseDownload (const RpcRequest& req, DownloadEngine* e, bool forcePause) { @@ -1546,4 +1520,28 @@ SharedHandle<ValueBase> NoSuchMethodRpcMethod::process } // namespace rpc +bool pauseRequestGroup +(const SharedHandle<RequestGroup>& group, bool reserved, bool forcePause) +{ + if((reserved && !group->isPauseRequested()) || + (!reserved && + !group->isForceHaltRequested() && + ((forcePause && group->isHaltRequested() && group->isPauseRequested()) || + (!group->isHaltRequested() && !group->isPauseRequested())))) { + if(!reserved) { + // Call setHaltRequested before setPauseRequested because + // setHaltRequested calls setPauseRequested(false) internally. + if(forcePause) { + group->setForceHaltRequested(true, RequestGroup::NONE); + } else { + group->setHaltRequested(true, RequestGroup::NONE); + } + } + group->setPauseRequested(true); + return true; + } else { + return false; + } +} + } // namespace aria2 |
