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
Cloud Data Sources such as S3, Azure, and Cloud Storage. 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, the LastModified
field of S3 objects, and the Last-
Modified
header of Azure blobs.
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. -
#last_modified_before ⇒ String
If specified, only objects with a "last modification time" before this timestamp and objects that don't have a "last modification time" will be transferred.
-
#last_modified_since ⇒ String
If specified, only objects with a "last modification time" on or after this timestamp and objects that don't have a "last modification time" are transferred.
-
#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.
Constructor Details
#initialize(**args) ⇒ ObjectConditions
Returns a new instance of ObjectConditions.
545 546 547 |
# File 'generated/google/apis/storagetransfer_v1/classes.rb', line 545 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
486 487 488 |
# File 'generated/google/apis/storagetransfer_v1/classes.rb', line 486 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 from s3://my-aws-bucket/logs/y=2015/requests.gz
,
specify the include prefix as logs/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 by
include_prefixes
. The max size of include_prefixes
is 1000.
Corresponds to the JSON property includePrefixes
509 510 511 |
# File 'generated/google/apis/storagetransfer_v1/classes.rb', line 509 def include_prefixes @include_prefixes end |
#last_modified_before ⇒ String
If specified, only objects with a "last modification time" before this
timestamp and objects that don't have a "last modification time" will be
transferred.
Corresponds to the JSON property lastModifiedBefore
516 517 518 |
# File 'generated/google/apis/storagetransfer_v1/classes.rb', line 516 def last_modified_before @last_modified_before end |
#last_modified_since ⇒ String
If specified, only objects with a "last modification time" on or after this
timestamp and objects that don't have a "last modification time" are
transferred. The last_modified_since
and last_modified_before
fields can
be used together for chunked data processing. For example, consider a script
that processes each day's worth of data at a time. For that you'd set each of
the fields as follows: * last_modified_since
to the start of the day *
last_modified_before
to the end of the day
Corresponds to the JSON property lastModifiedSince
527 528 529 |
# File 'generated/google/apis/storagetransfer_v1/classes.rb', line 527 def last_modified_since @last_modified_since 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
535 536 537 |
# File 'generated/google/apis/storagetransfer_v1/classes.rb', line 535 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
543 544 545 |
# File 'generated/google/apis/storagetransfer_v1/classes.rb', line 543 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
550 551 552 553 554 555 556 557 |
# File 'generated/google/apis/storagetransfer_v1/classes.rb', line 550 def update!(**args) @exclude_prefixes = args[:exclude_prefixes] if args.key?(:exclude_prefixes) @include_prefixes = args[:include_prefixes] if args.key?(:include_prefixes) @last_modified_before = args[:last_modified_before] if args.key?(:last_modified_before) @last_modified_since = args[:last_modified_since] if args.key?(:last_modified_since) @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 |