arangodb erlang数据库驱动
Вы не можете выбрать более 25 тем Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.

80 строки
3.4 KiB

-module(agAnalyzers).
-include("eArango.hrl").
-compile(inline).
-compile({inline_size, 128}).
-compile([export_all, nowarn_export_all]).
% doc_address:https://www.arangodb.com/docs/stable/http/analyzers.html
% 分析仪的HTTP接口
% 可通过/_api/analyzer端点访问用于管理ArangoSearch Analyzer的RESTful API 。
% 有关简介以及可用的类型,属性和功能,请参见分析器的描述。
% 根据提供的定义创建一个新的分析器
% POST /_api/analyzer
% 具有以下属性的JSON对象是必需的:
% name:分析器名称。
% type:分析器类型。
% properties:用于配置指定分析器类型的属性。
% features:在分析器生成的字段上设置的一组功能。默认值为空数组。
% 根据提供的配置创建一个新的分析器。
% 返回码
% 200:名称和定义匹配的分析器已存在。
% 201:成功创建了新的分析器定义。
% 400:缺少一个或多个必需参数,或者一个或多个参数无效。
% 403:用户无权使用此配置创建和分析器。
newAnalyzer(PoolNameOrSocket, MapData) ->
agVstCli:callAgency(PoolNameOrSocket, ?AgPost, <<"/_api/analyzer">>, ?AgDefQuery, ?AgDefHeader, eVPack:encodeBin(MapData)).
% 返回分析器定义
% GET /_api/analyzer/{analyzer-name}
% 路径参数
% Analyzer-name(必填):要检索的分析器的名称。
% 检索指定分析器名称的完整定义。结果对象包含以下属性:
% name:分析器名称
% type:分析仪类型
% properties:用于配置指定类型的属性
% features:在分析器生成的字段上设置的功能集
% 返回码
% 200:分析器定义已成功检索。
% 404:不存在这种分析器配置。
getAnalyzer(PoolNameOrSocket, AnalyzerName) ->
Path = <<"/_api/analyzer/", AnalyzerName/binary>>,
agVstCli:callAgency(PoolNameOrSocket, ?AgGet, Path).
% 返回可用的分析器定义列表
% GET /_api/analyzer
% 检索所有分析器定义的数组。结果数组包含具有以下属性的对象:
% name:分析器名称
% type:分析仪类型
% properties:用于配置指定类型的属性
% features:在分析器生成的字段上设置的功能集
% 返回码
% 200:分析器定义已成功检索。
analyzerList(PoolNameOrSocket) ->
agVstCli:callAgency(PoolNameOrSocket, ?AgGet, <<"/_api/analyzer">>).
% 删除分析仪配置
% DELETE /_api/analyzer/{analyzer-name}
% 路径参数
% Analyzer-name(必填):要删除的分析器的名称。
% 查询参数
% force (可选):即使正在使用分析仪配置,也应将其删除。默认值为false。
% 删除由analyzer-name标识的Analyzer配置。
% 如果成功删除了分析器定义,将返回具有以下属性的对象:
% 错误:假
% name:删除的分析器的名称
% 返回码
% 200:分析仪配置已成功删除。
% 400:未提供分析器名称,或其他请求参数无效。
% 403:用户无权删除此分析器配置。
% 404:不存在这种分析器配置。
% 409:指定的分析器配置仍在使用中,并且省略了强制或 指定了错误。。
delAnalyzer(PoolNameOrSocket, AnalyzerName) ->
Path = <<"/_api/analyzer/", AnalyzerName/binary>>,
agVstCli:callAgency(PoolNameOrSocket, ?AgDelete, Path).
delAnalyzer(PoolNameOrSocket, AnalyzerName, QueryPars) ->
Path = <<"/_api/analyzer/", AnalyzerName/binary>>,
agVstCli:callAgency(PoolNameOrSocket, ?AgDelete, Path, QueryPars).