LibOss.Core (lib_oss v0.3.0)

View Source

LibOss核心模块(精简版)

负责:

  • Agent状态管理
  • 通用请求处理
  • 配置管理

业务逻辑已拆分到各个专门模块中。

Summary

Functions

检查Agent进程是否存在

执行HTTP请求调用

Returns a specification to start this module under a supervisor.

获取Agent中存储的配置

获取配置中的特定值

构建HTTP请求(已弃用,使用RequestBuilder.build_http_request代替)

启动Agent进程

停止Agent进程

更新Agent中的配置

验证配置是否有效

Types

err_t()

@type err_t() :: {:error, LibOss.Exception.t()}

Functions

alive?(name)

@spec alive?(module()) :: boolean()

检查Agent进程是否存在

参数

  • name: Agent进程名称

返回值

  • boolean()

call(name, req)

@spec call(module(), LibOss.Model.Request.t()) ::
  {:ok, LibOss.Model.Http.Response.t()} | err_t()
@spec call(LibOss.Model.Config.t(), LibOss.Model.Request.t()) ::
  {:ok, LibOss.Model.Http.Response.t()} | err_t()

执行HTTP请求调用

参数

  • name: Agent进程名称或配置信息
  • req: OSS请求结构

返回值

  • | {:error, Exception.t()}

child_spec(arg)

Returns a specification to start this module under a supervisor.

See Supervisor.

get(name)

@spec get(module()) :: LibOss.Model.Config.t()

获取Agent中存储的配置

参数

  • name: Agent进程名称

返回值

  • 配置信息

get_config_value(name, key, default \\ nil)

@spec get_config_value(module(), atom(), any()) :: any()

获取配置中的特定值

参数

  • name: Agent进程名称
  • key: 配置键
  • default: 默认值

返回值

  • 配置值或默认值

make_request(config, req)

This function is deprecated. Use LibOss.Core.RequestBuilder.build_http_request/2 instead.
@spec make_request(LibOss.Model.Config.t(), LibOss.Model.Request.t()) ::
  LibOss.Model.Http.Request.t()

构建HTTP请求(已弃用,使用RequestBuilder.build_http_request代替)

参数

  • config: 配置信息
  • req: OSS请求结构

返回值

  • HTTP请求结构

start_link(arg)

@spec start_link({module(), module(), LibOss.Model.Config.t()}) ::
  {:ok, pid()} | {:error, term()}

启动Agent进程

参数

  • {name, http, config}: 包含进程名称、HTTP客户端和配置的元组

返回值

  • | {:error, term()}

stop(name, reason \\ :normal)

@spec stop(module(), term()) :: :ok

停止Agent进程

参数

  • name: Agent进程名称
  • reason: 停止原因(可选)

返回值

  • :ok

update_config(name, update_fun)

@spec update_config(module(), (LibOss.Model.Config.t() -> LibOss.Model.Config.t())) ::
  :ok

更新Agent中的配置

参数

  • name: Agent进程名称
  • update_fun: 更新函数

返回值

  • :ok

validate_config(name)

@spec validate_config(module()) :: :ok | {:error, term()}

验证配置是否有效

参数

  • name: Agent进程名称

返回值

  • :ok | {:error, term()}