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 Cloud Storage objects.
The "last modification time" refers to the time of the
last change to the object's content or metadata — specifically, this is
the updated
property of Cloud Storage objects and the LastModified
field of S3 objects.
Instance Attribute Summary collapse
-
#exclude_prefixes ⇒ Array<String>
exclude_prefixes
must follow the requirements described for include_prefixes. -
#include_prefixes ⇒ Array<String>
If
include_prefixes
is specified, objects that satisfy the object conditions must have names that start with one of theinclude_prefixes
and that do not start with any of the exclude_prefixes. -
#max_time_elapsed_since_last_modification ⇒ String
If specified, only objects with a "last modification time" on or after
NOW
-max_time_elapsed_since_last_modification
and objects that don't have a "last modification time" are transferred. -
#min_time_elapsed_since_last_modification ⇒ String
If specified, only objects with a "last modification time" before
NOW
-min_time_elapsed_since_last_modification
and objects that don't have a "last modification time" 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.
417 418 419 |
# File 'generated/google/apis/storagetransfer_v1/classes.rb', line 417 def initialize(**args) update!(**args) end |
Instance Attribute Details
#exclude_prefixes ⇒ Array<String>
exclude_prefixes
must follow the requirements described for
include_prefixes.
The max size of exclude_prefixes
is 1000.
Corresponds to the JSON property excludePrefixes
365 366 367 |
# File 'generated/google/apis/storagetransfer_v1/classes.rb', line 365 def exclude_prefixes @exclude_prefixes end |
#include_prefixes ⇒ Array<String>
If include_prefixes
is specified, objects that satisfy the object
conditions must have names that start with one of the include_prefixes
and that do not start with any of the exclude_prefixes. If
include_prefixes
is not specified, all objects except those that have
names starting with one of the exclude_prefixes
must satisfy the object
conditions.
Requirements:
- Each include-prefix and exclude-prefix can contain any sequence of Unicode characters, to a max length of 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. No include-prefix may be a prefix of another include-prefix.
- Each exclude-prefix must exclude a distinct portion of the object namespace. No exclude-prefix may be a prefix of another exclude-prefix.
- If
include_prefixes
is specified, then each exclude-prefix must start with the value of a path explicitly included byinclude_prefixes
. The max size ofinclude_prefixes
is 1000. Corresponds to the JSON propertyincludePrefixes
395 396 397 |
# File 'generated/google/apis/storagetransfer_v1/classes.rb', line 395 def include_prefixes @include_prefixes end |
#max_time_elapsed_since_last_modification ⇒ String
If specified, only objects with a "last modification time" on or after
NOW
- max_time_elapsed_since_last_modification
and objects that don't
have a "last modification time" are transferred.
For each TransferOperation started by this TransferJob,
NOW
refers to the start_time of the
TransferOperation
.
Corresponds to the JSON property maxTimeElapsedSinceLastModification
405 406 407 |
# File 'generated/google/apis/storagetransfer_v1/classes.rb', line 405 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 "last modification time" before
NOW
- min_time_elapsed_since_last_modification
and objects that don't
have a "last modification time" are transferred.
For each TransferOperation started by this TransferJob, NOW
refers to the start_time of the
TransferOperation
.
Corresponds to the JSON property minTimeElapsedSinceLastModification
415 416 417 |
# File 'generated/google/apis/storagetransfer_v1/classes.rb', line 415 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
422 423 424 425 426 427 |
# File 'generated/google/apis/storagetransfer_v1/classes.rb', line 422 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 |