Class: Google::Apis::StoragetransferV1::ObjectConditions
- Inherits:
-
Object
- Object
- Google::Apis::StoragetransferV1::ObjectConditions
- Includes:
- Core::Hashable, Core::JsonObjectSupport
- Defined in:
- generated/google/apis/storagetransfer_v1/classes.rb,
generated/google/apis/storagetransfer_v1/representations.rb,
generated/google/apis/storagetransfer_v1/representations.rb
Overview
Conditions that determine which objects will be transferred. Applies only to S3 and GCS objects.
Instance Attribute Summary collapse
-
#exclude_prefixes ⇒ Array<String>
excludePrefixes
must follow the requirements described forincludePrefixes
. -
#include_prefixes ⇒ Array<String>
If
includePrefixes
is specified, objects that satisfy the object conditions must have names that start with one of theincludePrefixes
and that do not start with any of theexcludePrefixes
. -
#max_time_elapsed_since_last_modification ⇒ String
If specified, only objects with a
lastModificationTime
on or afterNOW
-maxTimeElapsedSinceLastModification
and objects that don't have alastModificationTime
are transferred. -
#min_time_elapsed_since_last_modification ⇒ String
If specified, only objects with a
lastModificationTime
beforeNOW
-minTimeElapsedSinceLastModification
and objects that don't have alastModificationTime
are transferred.
Instance Method Summary collapse
-
#initialize(**args) ⇒ ObjectConditions
constructor
A new instance of ObjectConditions.
-
#update!(**args) ⇒ Object
Update properties of this object.
Methods included from Core::JsonObjectSupport
Methods included from Core::Hashable
Constructor Details
#initialize(**args) ⇒ ObjectConditions
Returns a new instance of ObjectConditions
420 421 422 |
# File 'generated/google/apis/storagetransfer_v1/classes.rb', line 420 def initialize(**args) update!(**args) end |
Instance Attribute Details
#exclude_prefixes ⇒ Array<String>
excludePrefixes
must follow the requirements described for
includePrefixes
.
The max size of excludePrefixes
is 1000.
Corresponds to the JSON property excludePrefixes
366 367 368 |
# File 'generated/google/apis/storagetransfer_v1/classes.rb', line 366 def exclude_prefixes @exclude_prefixes end |
#include_prefixes ⇒ Array<String>
If includePrefixes
is specified, objects that satisfy the object
conditions must have names that start with one of the includePrefixes
and that do not start with any of the excludePrefixes
. If
includePrefixes
is not specified, all objects except those that have
names starting with one of the excludePrefixes
must satisfy the object
conditions.
Requirements:
- Each include-prefix and exclude-prefix can contain any sequence of Unicode characters, of max length 1024 bytes when UTF8-encoded, and must not contain Carriage Return or Line Feed characters. Wildcard matching and regular expression matching are not supported.
- Each include-prefix and exclude-prefix must omit the leading slash.
For example, to include the
requests.gz
object in a transfer froms3://my-aws-bucket/logs/y=2015/requests.gz
, specify the include prefix aslogs/y=2015/requests.gz
. - None of the include-prefix or the exclude-prefix values can be empty, if specified.
- Each include-prefix must include a distinct portion of the object namespace, i.e., no include-prefix may be a prefix of another include-prefix.
- Each exclude-prefix must exclude a distinct portion of the object namespace, i.e., no exclude-prefix may be a prefix of another exclude-prefix.
- If
includePrefixes
is specified, then each exclude-prefix must start with the value of a path explicitly included byincludePrefixes
. The max size ofincludePrefixes
is 1000. Corresponds to the JSON propertyincludePrefixes
396 397 398 |
# File 'generated/google/apis/storagetransfer_v1/classes.rb', line 396 def include_prefixes @include_prefixes end |
#max_time_elapsed_since_last_modification ⇒ String
If specified, only objects with a lastModificationTime
on or after
NOW
- maxTimeElapsedSinceLastModification
and objects that don't have
a lastModificationTime
are transferred.
Note that NOW
refers to the creation time of the transfer job, and
lastModificationTime
refers to the time of the last change to the
object's content or metadata. Specifically, this would be the updated
property of GCS objects and the LastModified
field of S3 objects.
Corresponds to the JSON property maxTimeElapsedSinceLastModification
407 408 409 |
# File 'generated/google/apis/storagetransfer_v1/classes.rb', line 407 def max_time_elapsed_since_last_modification @max_time_elapsed_since_last_modification end |
#min_time_elapsed_since_last_modification ⇒ String
If specified, only objects with a lastModificationTime
before
NOW
- minTimeElapsedSinceLastModification
and objects that don't have a
lastModificationTime
are transferred.
Note that NOW
refers to the creation time of the transfer job, and
lastModificationTime
refers to the time of the last change to the
object's content or metadata. Specifically, this would be the updated
property of GCS objects and the LastModified
field of S3 objects.
Corresponds to the JSON property minTimeElapsedSinceLastModification
418 419 420 |
# File 'generated/google/apis/storagetransfer_v1/classes.rb', line 418 def min_time_elapsed_since_last_modification @min_time_elapsed_since_last_modification end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
425 426 427 428 429 430 |
# File 'generated/google/apis/storagetransfer_v1/classes.rb', line 425 def update!(**args) @exclude_prefixes = args[:exclude_prefixes] if args.key?(:exclude_prefixes) @include_prefixes = args[:include_prefixes] if args.key?(:include_prefixes) @max_time_elapsed_since_last_modification = args[:max_time_elapsed_since_last_modification] if args.key?(:max_time_elapsed_since_last_modification) @min_time_elapsed_since_last_modification = args[:min_time_elapsed_since_last_modification] if args.key?(:min_time_elapsed_since_last_modification) end |