class Google::Apis::StoragetransferV1::ObjectConditions

Conditions that determine which objects will be transferred.

Attributes

exclude_prefixes[RW]

`excludePrefixes` must follow the requirements described for `includePrefixes`. The max size of `excludePrefixes` is 20. Corresponds to the JSON property `excludePrefixes` @return [Array<String>]

include_prefixes[RW]

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. * 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 by `includePrefixes`. The max size of `includePrefixes` is 20. Corresponds to the JSON property `includePrefixes` @return [Array<String>]

max_time_elapsed_since_last_modification[RW]

`maxTimeElapsedSinceLastModification` is the complement to ` minTimeElapsedSinceLastModification`. Corresponds to the JSON property `maxTimeElapsedSinceLastModification` @return [String]

min_time_elapsed_since_last_modification[RW]

If unspecified, `minTimeElapsedSinceLastModification` takes a zero value and ` maxTimeElapsedSinceLastModification` takes the maximum possible value of Duration. Objects that satisfy the object conditions must either have a ` lastModificationTime` greater or equal to `NOW` - ` maxTimeElapsedSinceLastModification` and less than `NOW` - ` minTimeElapsedSinceLastModification`, or not have a `lastModificationTime`. Corresponds to the JSON property `minTimeElapsedSinceLastModification` @return [String]

Public Class Methods

new(**args) click to toggle source
# File generated/google/apis/storagetransfer_v1/classes.rb, line 351
def initialize(**args)
   update!(**args)
end

Public Instance Methods

update!(**args) click to toggle source

Update properties of this object

# File generated/google/apis/storagetransfer_v1/classes.rb, line 356
def update!(**args)
  @min_time_elapsed_since_last_modification = args[:min_time_elapsed_since_last_modification] if args.key?(:min_time_elapsed_since_last_modification)
  @max_time_elapsed_since_last_modification = args[:max_time_elapsed_since_last_modification] if args.key?(:max_time_elapsed_since_last_modification)
  @include_prefixes = args[:include_prefixes] if args.key?(:include_prefixes)
  @exclude_prefixes = args[:exclude_prefixes] if args.key?(:exclude_prefixes)
end