MCPcopy Create free account
hub / github.com/VirtualHotBar/NetMount / rclone_api_exec_async

Function rclone_api_exec_async

src/utils/rclone/request.ts:353–369  ·  view source on GitHub ↗

* 执行异步任务并等待完成(封装了启动和等待过程) * @param path API 路径 * @param bodyData 请求体数据 * @param pollInterval 轮询间隔(毫秒),默认使用 ASYNC_TASK_DEFAULTS.pollInterval * @param timeout 超时时间(毫秒),默认使用 ASYNC_TASK_DEFAULTS.timeout * @param signal 用于取消任务的 AbortSignal * @returns 任务是否成功完成

(
  path: string,
  bodyData: object = {},
  pollInterval: number = ASYNC_TASK_DEFAULTS.pollInterval,
  timeout: number = ASYNC_TASK_DEFAULTS.timeout,
  signal?: AbortSignal
)

Source from the content-addressed store, hash-verified

351 * @returns 任务是否成功完成
352 */
353async function rclone_api_exec_async(
354 path: string,
355 bodyData: object = {},
356 pollInterval: number = ASYNC_TASK_DEFAULTS.pollInterval,
357 timeout: number = ASYNC_TASK_DEFAULTS.timeout,
358 signal?: AbortSignal
359): Promise<boolean> {
360 const jobid = await rclone_api_post_async(path, bodyData, true)
361
362 if (jobid === undefined) {
363 console.error(`Failed to start async job for ${path}`)
364 return false
365 }
366
367 console.log(`Started async job ${jobid} for ${path}`)
368 return await rclone_api_wait_for_job(jobid, pollInterval, timeout, signal)
369}
370
371export {
372 rclone_api_post,

Callers 3

copyDirFunction · 0.90
moveDirFunction · 0.90
syncFunction · 0.90

Calls 2

rclone_api_post_asyncFunction · 0.85
rclone_api_wait_for_jobFunction · 0.85

Tested by

no test coverage detected