View Source GoogleApi.Storage.V1.Model.BucketRetentionPolicy (google_api_storage v0.45.0)

The bucket's retention policy. The retention policy enforces a minimum retention time for all objects contained in the bucket, based on their creation time. Any attempt to overwrite or delete objects younger than the retention period will result in a PERMISSION_DENIED error. An unlocked retention policy can be modified or removed from the bucket via a storage.buckets.update operation. A locked retention policy cannot be removed or shortened in duration for the lifetime of the bucket. Attempting to remove or decrease period of a locked retention policy will result in a PERMISSION_DENIED error.

Attributes

  • effectiveTime (type: DateTime.t, default: nil) - Server-determined value that indicates the time from which policy was enforced and effective. This value is in RFC 3339 format.
  • isLocked (type: boolean(), default: nil) - Once locked, an object retention policy cannot be modified.
  • retentionPeriod (type: String.t, default: nil) - The duration in seconds that objects need to be retained. Retention duration must be greater than zero and less than 100 years. Note that enforcement of retention periods less than a day is not guaranteed. Such periods should only be used for testing purposes.

Summary

Functions

Unwrap a decoded JSON object into its complex fields.

Types

@type t() :: %GoogleApi.Storage.V1.Model.BucketRetentionPolicy{
  effectiveTime: DateTime.t() | nil,
  isLocked: boolean() | nil,
  retentionPeriod: String.t() | nil
}

Functions

@spec decode(struct(), keyword()) :: struct()

Unwrap a decoded JSON object into its complex fields.