Reference documentation and code samples for the Google Cloud Storage Transfer V1 Client class ObjectConditions.
Conditions that determine which objects are 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.
Transfers with a PosixFilesystem source or destination don't support
ObjectConditions
.
Generated from protobuf message google.storagetransfer.v1.ObjectConditions
Namespace
Google \ Cloud \ StorageTransfer \ V1Methods
__construct
Constructor.
Parameters | |
---|---|
Name | Description |
data |
array
Optional. Data for populating the Message object. |
↳ min_time_elapsed_since_last_modification |
Google\Protobuf\Duration
Ensures that objects are not transferred until a specific minimum time has elapsed after the "last modification time". When a TransferOperation begins, objects with a "last modification time" are transferred only if the elapsed time between the start_time of the |
↳ max_time_elapsed_since_last_modification |
Google\Protobuf\Duration
Ensures that objects are not transferred if a specific maximum time has elapsed since the "last modification time". When a TransferOperation begins, objects with a "last modification time" are transferred only if the elapsed time between the start_time of the |
↳ include_prefixes |
array
If you specify |
↳ exclude_prefixes |
array
If you specify |
↳ last_modified_since |
Google\Protobuf\Timestamp
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_before |
Google\Protobuf\Timestamp
If specified, only objects with a "last modification time" before this timestamp and objects that don't have a "last modification time" are transferred. |
getMinTimeElapsedSinceLastModification
Ensures that objects are not transferred until a specific minimum time
has elapsed after the "last modification time". When a
TransferOperation begins, objects with a "last modification time" are
transferred only if the elapsed time between the
start_time of the TransferOperation
and the "last modification time" of the object is equal to or
greater than the value of min_time_elapsed_since_last_modification`.
Objects that do not have a "last modification time" are also transferred.
Returns | |
---|---|
Type | Description |
Google\Protobuf\Duration|null |
hasMinTimeElapsedSinceLastModification
clearMinTimeElapsedSinceLastModification
setMinTimeElapsedSinceLastModification
Ensures that objects are not transferred until a specific minimum time
has elapsed after the "last modification time". When a
TransferOperation begins, objects with a "last modification time" are
transferred only if the elapsed time between the
start_time of the TransferOperation
and the "last modification time" of the object is equal to or
greater than the value of min_time_elapsed_since_last_modification`.
Objects that do not have a "last modification time" are also transferred.
Parameter | |
---|---|
Name | Description |
var |
Google\Protobuf\Duration
|
Returns | |
---|---|
Type | Description |
$this |
getMaxTimeElapsedSinceLastModification
Ensures that objects are not transferred if a specific maximum time has elapsed since the "last modification time".
When a TransferOperation begins, objects with a
"last modification time" are transferred only if the elapsed time
between the start_time of the
TransferOperation
and the "last modification time" of the object
is less than the value of max_time_elapsed_since_last_modification`.
Objects that do not have a "last modification time" are also transferred.
Returns | |
---|---|
Type | Description |
Google\Protobuf\Duration|null |
hasMaxTimeElapsedSinceLastModification
clearMaxTimeElapsedSinceLastModification
setMaxTimeElapsedSinceLastModification
Ensures that objects are not transferred if a specific maximum time has elapsed since the "last modification time".
When a TransferOperation begins, objects with a
"last modification time" are transferred only if the elapsed time
between the start_time of the
TransferOperation
and the "last modification time" of the object
is less than the value of max_time_elapsed_since_last_modification`.
Objects that do not have a "last modification time" are also transferred.
Parameter | |
---|---|
Name | Description |
var |
Google\Protobuf\Duration
|
Returns | |
---|---|
Type | Description |
$this |
getIncludePrefixes
If you specify include_prefixes
, Storage Transfer Service uses the items
in the include_prefixes
array to determine which objects to include in a
transfer. Objects must start with one of the matching include_prefixes
for inclusion in the transfer. If exclude_prefixes is specified,
objects must not start with any of the exclude_prefixes
specified for
inclusion in the transfer.
The following are requirements of include_prefixes
:
- Each include-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 must omit the leading slash. For example, to
include the object
s3://my-aws-bucket/logs/y=2015/requests.gz
, specify the include-prefix aslogs/y=2015/requests.gz
. - None of the include-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.
The max size of
include_prefixes
is 1000. For more information, see Filtering objects from transfers.
Returns | |
---|---|
Type | Description |
Google\Protobuf\Internal\RepeatedField |
setIncludePrefixes
If you specify include_prefixes
, Storage Transfer Service uses the items
in the include_prefixes
array to determine which objects to include in a
transfer. Objects must start with one of the matching include_prefixes
for inclusion in the transfer. If exclude_prefixes is specified,
objects must not start with any of the exclude_prefixes
specified for
inclusion in the transfer.
The following are requirements of include_prefixes
:
- Each include-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 must omit the leading slash. For example, to
include the object
s3://my-aws-bucket/logs/y=2015/requests.gz
, specify the include-prefix aslogs/y=2015/requests.gz
. - None of the include-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.
The max size of
include_prefixes
is 1000. For more information, see Filtering objects from transfers.
Parameter | |
---|---|
Name | Description |
var |
string[]
|
Returns | |
---|---|
Type | Description |
$this |
getExcludePrefixes
If you specify exclude_prefixes
, Storage Transfer Service uses the items
in the exclude_prefixes
array to determine which objects to exclude from
a transfer. Objects must not start with one of the matching
exclude_prefixes
for inclusion in a transfer.
The following are requirements of exclude_prefixes
:
- Each 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 exclude-prefix must omit the leading slash. For example, to
exclude the object
s3://my-aws-bucket/logs/y=2015/requests.gz
, specify the exclude-prefix aslogs/y=2015/requests.gz
. - None of the exclude-prefix values can be empty, if specified.
- 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 ofexclude_prefixes
is 1000. For more information, see Filtering objects from transfers.
Returns | |
---|---|
Type | Description |
Google\Protobuf\Internal\RepeatedField |
setExcludePrefixes
If you specify exclude_prefixes
, Storage Transfer Service uses the items
in the exclude_prefixes
array to determine which objects to exclude from
a transfer. Objects must not start with one of the matching
exclude_prefixes
for inclusion in a transfer.
The following are requirements of exclude_prefixes
:
- Each 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 exclude-prefix must omit the leading slash. For example, to
exclude the object
s3://my-aws-bucket/logs/y=2015/requests.gz
, specify the exclude-prefix aslogs/y=2015/requests.gz
. - None of the exclude-prefix values can be empty, if specified.
- 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 ofexclude_prefixes
is 1000. For more information, see Filtering objects from transfers.
Parameter | |
---|---|
Name | Description |
var |
string[]
|
Returns | |
---|---|
Type | Description |
$this |
getLastModifiedSince
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 daylast_modified_before
to the end of the day
Returns | |
---|---|
Type | Description |
Google\Protobuf\Timestamp|null |
hasLastModifiedSince
clearLastModifiedSince
setLastModifiedSince
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 daylast_modified_before
to the end of the day
Parameter | |
---|---|
Name | Description |
var |
Google\Protobuf\Timestamp
|
Returns | |
---|---|
Type | Description |
$this |
getLastModifiedBefore
If specified, only objects with a "last modification time" before this timestamp and objects that don't have a "last modification time" are transferred.
Returns | |
---|---|
Type | Description |
Google\Protobuf\Timestamp|null |
hasLastModifiedBefore
clearLastModifiedBefore
setLastModifiedBefore
If specified, only objects with a "last modification time" before this timestamp and objects that don't have a "last modification time" are transferred.
Parameter | |
---|---|
Name | Description |
var |
Google\Protobuf\Timestamp
|
Returns | |
---|---|
Type | Description |
$this |