arangodb erlang数据库驱动
選択できるのは25トピックまでです。 トピックは、先頭が英数字で、英数字とダッシュ('-')を使用した35文字以内のものにしてください。

90 行
3.5 KiB

-module(agTasks).
-include("eArango.hrl").
-compile(inline).
-compile({inline_size, 128}).
-compile([export_all, nowarn_export_all]).
% doc_address:https://www.arangodb.com/docs/stable/http/traversal.html
% HTTP任务接口
% 接下来,您将看到ArangoDB的任务HTTP接口。
% 还为每个API操作提供了一些示例。
%
% 提取所有任务或一项任务
% GET /_api/tasks/
% 获取服务器上的所有现有任务
% HTTP 200任务列表
% **:所有任务的列表
getTaskList(PoolNameOrSocket) ->
agVstCli:callAgency(PoolNameOrSocket, ?AgGet, <<"/_api/tasks/">>).
% 检索一个当前活动的服务器任务
% GET /_api/tasks/{id}
% 路径参数
% id(必填):要提取的任务的ID。
% 在ID指定的服务器上获取一个现有任务
% HTTP 200请求的任务
% **:相关功能
getTask(PoolNameOrSocket, TaskId) ->
Path = <<"/_api/tasks/", (agMiscUtils:toBinary(TaskId))/binary>>,
agVstCli:callAgency(PoolNameOrSocket, ?AgGet, Path).
% 创建一个新任务
% POST /_api/tasks
% 具有以下属性的JSON对象是必需的:
% name:任务名称
% command:要执行的JavaScript代码
% params:要传递给命令的参数
% period:执行之间的秒数
% offset:初始延迟的秒数
%
% 用生成的ID创建一个新任务
% HTTP 200任务已注册
% id:标识任务的字符串
% created:创建此任务的时间戳
% type:这是什么类型的任务[ periodic,timed]
% 定期重复执行的任务
% 定时是在特定时间执行一次的任务
% period:这个任务应该运行的每个period秒
% offset:距创建的时间戳的时间偏移(以秒为单位)
% command:此任务的javascript函数
% database:此任务所属的数据库
% code:状态码,在这种情况下为200。
% error:在这种情况下为false
% 400:如果帖子正文不正确,则返回HTTP 400。
newTask(PoolNameOrSocket, MapData) ->
agVstCli:callAgency(PoolNameOrSocket, ?AgPost, <<"/_api/tasks">>, ?AgDefQuery, ?AgDefHeader, eVPack:encodeBin(MapData)).
% 注册具有预定义ID的新任务;与负载均衡器不兼容
% PUT /_api/tasks/{id}
% 路径参数
% id(必填):要创建的任务的id
% 具有以下属性的JSON对象是必需的:
% name:任务名称
% command:要执行的JavaScript代码
% params:要传递给命令的参数
% period:执行之间的秒数
% offset:初始延迟的秒数
% 注册具有指定ID的新任务
% 返回码
% 400:如果任务ID已经存在或其余主体不正确,则返回HTTP 400。
newTask(PoolNameOrSocket, TaskId, MapData) ->
Path = <<"/_api/tasks/", (agMiscUtils:toBinary(TaskId))/binary>>,
agVstCli:callAgency(PoolNameOrSocket, ?AgPut, Path, ?AgDefQuery, ?AgDefHeader, eVPack:encodeBin(MapData)).
% 删除一个当前活动的服务器任务
% DELETE /_api/tasks/{id}
% 路径参数
% id(必填):要删除的任务的id。
% 删除服务器上ID标识的任务。
% HTTP 200如果删除了任务,则返回HTTP 200。
% code:状态码,在这种情况下为200。
% error:在这种情况下为false
% HTTP 404如果任务ID未知,则返回HTTP 404。
% code:状态码,在这种情况下为404。
% error:在这种情况下为true
% errorMessage:一条纯文本消息,指出出了什么问题。
delTask(PoolNameOrSocket, TaskId) ->
Path = <<"/_api/tasks/", (agMiscUtils:toBinary(TaskId))/binary>>,
agVstCli:callAgency(PoolNameOrSocket, ?AgDelete, Path).