Class: Google::Apis::StorageV1::Bucket

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
generated/google/apis/storage_v1/classes.rb,
generated/google/apis/storage_v1/representations.rb,
generated/google/apis/storage_v1/representations.rb

Overview

A bucket.

Defined Under Namespace

Classes: CorsConfiguration, Lifecycle, Logging, Owner, Versioning, Website

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from Core::JsonObjectSupport

#to_json

Methods included from Core::Hashable

process_value, #to_h

Constructor Details

#initialize(**args) ⇒ Bucket

Returns a new instance of Bucket.


135
136
137
# File 'generated/google/apis/storage_v1/classes.rb', line 135

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#aclArray<Google::Apis::StorageV1::BucketAccessControl>

Access controls on the bucket. Corresponds to the JSON property acl


32
33
34
# File 'generated/google/apis/storage_v1/classes.rb', line 32

def acl
  @acl
end

#cors_configurationsArray<Google::Apis::StorageV1::Bucket::CorsConfiguration>

The bucket's Cross-Origin Resource Sharing (CORS) configuration. Corresponds to the JSON property cors


37
38
39
# File 'generated/google/apis/storage_v1/classes.rb', line 37

def cors_configurations
  @cors_configurations
end

#default_object_aclArray<Google::Apis::StorageV1::ObjectAccessControl>

Default access controls to apply to new objects when no ACL is provided. Corresponds to the JSON property defaultObjectAcl


42
43
44
# File 'generated/google/apis/storage_v1/classes.rb', line 42

def default_object_acl
  @default_object_acl
end

#etagString

HTTP 1.1 Entity tag for the bucket. Corresponds to the JSON property etag

Returns:

  • (String)

47
48
49
# File 'generated/google/apis/storage_v1/classes.rb', line 47

def etag
  @etag
end

#idString

The ID of the bucket. Corresponds to the JSON property id

Returns:

  • (String)

52
53
54
# File 'generated/google/apis/storage_v1/classes.rb', line 52

def id
  @id
end

#kindString

The kind of item this is. For buckets, this is always storage#bucket. Corresponds to the JSON property kind

Returns:

  • (String)

57
58
59
# File 'generated/google/apis/storage_v1/classes.rb', line 57

def kind
  @kind
end

#lifecycleGoogle::Apis::StorageV1::Bucket::Lifecycle

The bucket's lifecycle configuration. See lifecycle management for more information. Corresponds to the JSON property lifecycle


63
64
65
# File 'generated/google/apis/storage_v1/classes.rb', line 63

def lifecycle
  @lifecycle
end

#locationString

The location of the bucket. Object data for objects in the bucket resides in physical storage within this region. Defaults to US. See the developer's guide for the authoritative list. Corresponds to the JSON property location

Returns:

  • (String)

70
71
72
# File 'generated/google/apis/storage_v1/classes.rb', line 70

def location
  @location
end

#loggingGoogle::Apis::StorageV1::Bucket::Logging

The bucket's logging configuration, which defines the destination bucket and optional name prefix for the current bucket's logs. Corresponds to the JSON property logging


76
77
78
# File 'generated/google/apis/storage_v1/classes.rb', line 76

def logging
  @logging
end

#metagenerationString

The metadata generation of this bucket. Corresponds to the JSON property metageneration

Returns:

  • (String)

81
82
83
# File 'generated/google/apis/storage_v1/classes.rb', line 81

def metageneration
  @metageneration
end

#nameString

The name of the bucket. Corresponds to the JSON property name

Returns:

  • (String)

86
87
88
# File 'generated/google/apis/storage_v1/classes.rb', line 86

def name
  @name
end

#ownerGoogle::Apis::StorageV1::Bucket::Owner

The owner of the bucket. This is always the project team's owner group. Corresponds to the JSON property owner


91
92
93
# File 'generated/google/apis/storage_v1/classes.rb', line 91

def owner
  @owner
end

#project_numberString

The project number of the project the bucket belongs to. Corresponds to the JSON property projectNumber

Returns:

  • (String)

96
97
98
# File 'generated/google/apis/storage_v1/classes.rb', line 96

def project_number
  @project_number
end

The URI of this bucket. Corresponds to the JSON property selfLink

Returns:

  • (String)

101
102
103
# File 'generated/google/apis/storage_v1/classes.rb', line 101

def self_link
  @self_link
end

#storage_classString

The bucket's default storage class, used whenever no storageClass is specified for a newly-created object. This defines how objects in the bucket are stored and determines the SLA and the cost of storage. Values include MULTI_REGIONAL, REGIONAL, STANDARD, NEARLINE, COLDLINE, and DURABLE_REDUCED_AVAILABILITY. If this value is not specified when the bucket is created, it will default to STANDARD. For more information, see storage classes. Corresponds to the JSON property storageClass

Returns:

  • (String)

111
112
113
# File 'generated/google/apis/storage_v1/classes.rb', line 111

def storage_class
  @storage_class
end

#time_createdDateTime

The creation time of the bucket in RFC 3339 format. Corresponds to the JSON property timeCreated

Returns:

  • (DateTime)

116
117
118
# File 'generated/google/apis/storage_v1/classes.rb', line 116

def time_created
  @time_created
end

#updatedDateTime

The modification time of the bucket in RFC 3339 format. Corresponds to the JSON property updated

Returns:

  • (DateTime)

121
122
123
# File 'generated/google/apis/storage_v1/classes.rb', line 121

def updated
  @updated
end

#versioningGoogle::Apis::StorageV1::Bucket::Versioning

The bucket's versioning configuration. Corresponds to the JSON property versioning


126
127
128
# File 'generated/google/apis/storage_v1/classes.rb', line 126

def versioning
  @versioning
end

#websiteGoogle::Apis::StorageV1::Bucket::Website

The bucket's website configuration, controlling how the service behaves when accessing bucket contents as a web site. See the Static Website Examples for more information. Corresponds to the JSON property website


133
134
135
# File 'generated/google/apis/storage_v1/classes.rb', line 133

def website
  @website
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object


140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
# File 'generated/google/apis/storage_v1/classes.rb', line 140

def update!(**args)
  @acl = args[:acl] if args.key?(:acl)
  @cors_configurations = args[:cors_configurations] if args.key?(:cors_configurations)
  @default_object_acl = args[:default_object_acl] if args.key?(:default_object_acl)
  @etag = args[:etag] if args.key?(:etag)
  @id = args[:id] if args.key?(:id)
  @kind = args[:kind] if args.key?(:kind)
  @lifecycle = args[:lifecycle] if args.key?(:lifecycle)
  @location = args[:location] if args.key?(:location)
  @logging = args[:logging] if args.key?(:logging)
  @metageneration = args[:metageneration] if args.key?(:metageneration)
  @name = args[:name] if args.key?(:name)
  @owner = args[:owner] if args.key?(:owner)
  @project_number = args[:project_number] if args.key?(:project_number)
  @self_link = args[:self_link] if args.key?(:self_link)
  @storage_class = args[:storage_class] if args.key?(:storage_class)
  @time_created = args[:time_created] if args.key?(:time_created)
  @updated = args[:updated] if args.key?(:updated)
  @versioning = args[:versioning] if args.key?(:versioning)
  @website = args[:website] if args.key?(:website)
end