openstack.object_store.v1.container

容器类

Container 类继承自 Resource

class openstack.object_store.v1.container.Container(metadata=None, **attrs)

处理并保存创建阶段已知的元数据

base_path = '/'

此资源的 URI 的基本部分。

pagination_key = 'X-Account-Container-Count'

用于分页链接的键

allow_create = True

允许对此资源进行创建操作。

allow_fetch = True

允许对此资源进行获取操作。

allow_commit = True

允许对此资源进行更新操作。

allow_delete = True

允许对此资源进行删除操作。

allow_list = True

允许对此资源进行列表操作。

allow_head = True

允许对此资源进行 head 操作。

name

容器的名称。

count

容器中的对象数量。

bytes

存储在对象存储中的容器的总字节数。

object_count

对象的数量。

bytes_used

总共使用的字节数。

timestamp

事务的时间戳。

is_newest

如果设置为 True,对象存储将查询所有副本以返回最新的副本。 如果您省略此标头,对象存储在找到一个有效副本后会更快地响应。 由于将此标头设置为 True 对后端来说成本更高,因此只有在绝对需要时才使用它。 *类型: bool*

read_ACL

授予读取权限的 ACL。 如果未设置,则此操作不会返回此标头。

write_ACL

授予写入权限的 ACL。 如果未设置,则此操作不会返回此标头。

sync_to

容器同步的目标地址。 如果未设置,则此操作不会返回此标头。

sync_key

容器同步的密钥。 如果未设置,则此操作不会返回此标头。

versions_location

在此容器上启用版本控制。 该值为另一个容器的名称。 在包含在标头中之前,必须对名称进行 UTF-8 编码,然后进行 URL 编码。 要禁用版本控制,请将标头设置为空字符串。

history_location

在容器上启用版本控制。

content_type

名称列表的 MIME 类型。

is_content_type_detected

如果设置为 true,对象存储将根据文件扩展名猜测内容类型,并忽略存在时发送在 Content-Type 标头中的值。 *类型: bool*

storage_policy

容器使用的存储策略。 无法更改现有容器的策略

if_none_match

与 Expect: 100-Continue 结合使用,指定“If-None-Match: *”标头,以查询服务器是否在发送任何数据之前已经拥有该对象的副本。

meta_temp_url_key

临时 URL 的密钥值。 如果未设置,则此操作不会返回此标头。

meta_temp_url_key_2

临时 URL 的第二个密钥值。 如果未设置,则此操作不会返回此标头。

classmethod new(**kwargs)

创建此资源的实例。

在创建实例时,将 _synchronized 参数设置为 ResourceFalse,以指示资源尚不存在于服务器端。 这会将 **kwargs 中传递的所有属性标记为资源的“脏”属性,从而在后续调用(如 update())中跟踪它们。

参数:

kwargs (dict) – 每个命名参数都将作为结果 Resource 对象的属性设置。

create(session, prepend_key=True, base_path=None, **kwargs)

基于此实例创建远程资源。

参数:
  • session (Adapter) – 用于发出此请求的会话。

  • prepend_key – 一个布尔值,指示是否应在资源创建请求中将 resource_key 附加到请求体之前。默认为 True。

返回值:

Resource 实例。

引发:

MethodNotSupported 如果 Resource.allow_create 未设置为 True

set_temp_url_key(proxy, key, secondary=False)

设置容器的临时 URL 密钥。

参数:
  • proxy (Proxy) – 用于发出此请求的代理。

  • container – 该值可以是容器的名称或 Container 实例。

  • key – 密钥的文本。

  • secondary (bool) – 是否应设置第二个密钥。(默认为 False)