LibOss.Core.Symlink (lib_oss v0.3.0)
View Source符号链接模块
负责:
- put_symlink: 创建符号链接
 - get_symlink: 获取符号链接目标
 
Summary
Types
@type err_t() :: {:error, LibOss.Exception.t()}
Functions
@spec get_symlink(module(), LibOss.Typespecs.bucket(), LibOss.Typespecs.object()) :: {:ok, binary()} | err_t()
获取符号链接目标
参数
- name: Agent进程名称
 - bucket: 存储桶名称
 - object: 符号链接对象名称
 
返回值
| {:error, Exception.t()}
返回符号链接指向的目标对象名称
示例
iex> LibOss.Core.Symlink.get_symlink(MyOss, "my-bucket", "link-object")
{:ok, "target-object"}相关文档
@spec get_symlink_meta(module(), LibOss.Typespecs.bucket(), LibOss.Typespecs.object()) :: {:ok, map()} | err_t()
获取符号链接的元数据(包括目标对象)
参数
- name: Agent进程名称
 - bucket: 存储桶名称
 - object: 符号链接对象名称
 
返回值
| {:error, Exception.t()}
返回的map包含:
- target: 目标对象名称
 - headers: 其他响应头信息
 
示例
iex> LibOss.Core.Symlink.get_symlink_meta(MyOss, "my-bucket", "link-object")
{:ok, %{
  target: "target-object",
  headers: %{"content-type" => "application/octet-stream", ...}
}}
  @spec put_symlink( module(), LibOss.Typespecs.bucket(), LibOss.Typespecs.object(), binary(), LibOss.Typespecs.headers() ) :: :ok | err_t()
创建符号链接
参数
- name: Agent进程名称
 - bucket: 存储桶名称
 - object: 符号链接对象名称
 - target_object: 目标对象名称
 - headers: 可选的HTTP请求头
 
返回值
:ok | {:error, Exception.t()}
示例
iex> LibOss.Core.Symlink.put_symlink(MyOss, "my-bucket", "link-object", "target-object")
:ok相关文档
@spec put_symlink_with_metadata( module(), LibOss.Typespecs.bucket(), LibOss.Typespecs.object(), binary(), map() ) :: :ok | err_t()
创建符号链接并设置自定义元数据
参数
- name: Agent进程名称
 - bucket: 存储桶名称
 - object: 符号链接对象名称
 - target_object: 目标对象名称
 - metadata: 自定义元数据map
 
返回值
:ok | {:error, Exception.t()}
示例
iex> LibOss.Core.Symlink.put_symlink_with_metadata(MyOss, "my-bucket", "link-object", "target-object", %{"description" => "My symlink"})
:ok
  @spec symlink?(module(), LibOss.Typespecs.bucket(), LibOss.Typespecs.object()) :: boolean()
检查对象是否为符号链接
参数
- name: Agent进程名称
 - bucket: 存储桶名称
 - object: 对象名称
 
返回值
- boolean()
 
示例
iex> LibOss.Core.Symlink.symlink?(MyOss, "my-bucket", "link-object")
true
iex> LibOss.Core.Symlink.symlink?(MyOss, "my-bucket", "normal-object")
false