Class: Google::Apis::StoragebatchoperationsV1::ProjectSource

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/storagebatchoperations_v1/classes.rb,
lib/google/apis/storagebatchoperations_v1/representations.rb,
lib/google/apis/storagebatchoperations_v1/representations.rb

Overview

Describes the project source where the objects satisfying the filters will be transformed.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ ProjectSource

Returns a new instance of ProjectSource.



1182
1183
1184
# File 'lib/google/apis/storagebatchoperations_v1/classes.rb', line 1182

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#bucket_filtersGoogle::Apis::StoragebatchoperationsV1::Expr

Represents a textual expression in the Common Expression Language (CEL) syntax. CEL is a C-like expression language. The syntax and semantics of CEL are documented at https://github.com/google/cel-spec. Example (Comparison): title: "Summary size limit" description: "Determines if a summary is less than 100 chars" expression: "document.summary.size() < 100" Example (Equality): title: " Requestor is owner" description: "Determines if requestor is the document owner" expression: "document.owner == request.auth.claims.email" Example ( Logic): title: "Public documents" description: "Determine whether the document should be publicly visible" expression: "document.type != 'private' && document.type != 'internal'" Example (Data Manipulation): title: "Notification string" description: "Create a notification string with a timestamp." expression: "'New message received at ' + string(document.create_time)" The exact variables and functions that may be referenced within an expression are determined by the service that evaluates it. See the service documentation for additional information. Corresponds to the JSON property bucketFilters



1126
1127
1128
# File 'lib/google/apis/storagebatchoperations_v1/classes.rb', line 1126

def bucket_filters
  @bucket_filters
end

#dry_run_job_idString

Optional. The unique identifier of a dry run job to use as the baseline for the current job. Specifying this ID ensures the job is executed against the same set of objects validated during the dry run. The value corresponds to the job_id segment of the resource name: projects/project_id/locations/ location/jobs/job_id`. Corresponds to the JSON propertydryRunJobId`

Returns:

  • (String)


1135
1136
1137
# File 'lib/google/apis/storagebatchoperations_v1/classes.rb', line 1135

def dry_run_job_id
  @dry_run_job_id
end

#insights_dataset_configString

Required. The resource identifier of the Storage Insights dataset configuration. Storage batch operations uses the latest snapshot from this dataset as the source to list and filter target objects. Format: projects/ project_id/locations/location/datasetConfigs/dataset_config`. Corresponds to the JSON propertyinsightsDatasetConfig`

Returns:

  • (String)


1143
1144
1145
# File 'lib/google/apis/storagebatchoperations_v1/classes.rb', line 1143

def insights_dataset_config
  @insights_dataset_config
end

#object_filtersGoogle::Apis::StoragebatchoperationsV1::Expr

Represents a textual expression in the Common Expression Language (CEL) syntax. CEL is a C-like expression language. The syntax and semantics of CEL are documented at https://github.com/google/cel-spec. Example (Comparison): title: "Summary size limit" description: "Determines if a summary is less than 100 chars" expression: "document.summary.size() < 100" Example (Equality): title: " Requestor is owner" description: "Determines if requestor is the document owner" expression: "document.owner == request.auth.claims.email" Example ( Logic): title: "Public documents" description: "Determine whether the document should be publicly visible" expression: "document.type != 'private' && document.type != 'internal'" Example (Data Manipulation): title: "Notification string" description: "Create a notification string with a timestamp." expression: "'New message received at ' + string(document.create_time)" The exact variables and functions that may be referenced within an expression are determined by the service that evaluates it. See the service documentation for additional information. Corresponds to the JSON property objectFilters



1162
1163
1164
# File 'lib/google/apis/storagebatchoperations_v1/classes.rb', line 1162

def object_filters
  @object_filters
end

#projectString

Required. Project name of the objects to be transformed. e.g. projects/my- project or projects/123456. Corresponds to the JSON property project

Returns:

  • (String)


1168
1169
1170
# File 'lib/google/apis/storagebatchoperations_v1/classes.rb', line 1168

def project
  @project
end

#snapshot_timeString

Output only. The snapshot time used by the job to read the Storage Insights dataset for bucket and object discovery. This field is populated by the service and reflects the exact timestamp of the dataset snapshot used. Corresponds to the JSON property snapshotTime

Returns:

  • (String)


1175
1176
1177
# File 'lib/google/apis/storagebatchoperations_v1/classes.rb', line 1175

def snapshot_time
  @snapshot_time
end

#target_locationsGoogle::Apis::StoragebatchoperationsV1::TargetLocations

Describes the Cloud Storage locations to include in a ProjectSource job. Corresponds to the JSON property targetLocations



1180
1181
1182
# File 'lib/google/apis/storagebatchoperations_v1/classes.rb', line 1180

def target_locations
  @target_locations
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1187
1188
1189
1190
1191
1192
1193
1194
1195
# File 'lib/google/apis/storagebatchoperations_v1/classes.rb', line 1187

def update!(**args)
  @bucket_filters = args[:bucket_filters] if args.key?(:bucket_filters)
  @dry_run_job_id = args[:dry_run_job_id] if args.key?(:dry_run_job_id)
  @insights_dataset_config = args[:insights_dataset_config] if args.key?(:insights_dataset_config)
  @object_filters = args[:object_filters] if args.key?(:object_filters)
  @project = args[:project] if args.key?(:project)
  @snapshot_time = args[:snapshot_time] if args.key?(:snapshot_time)
  @target_locations = args[:target_locations] if args.key?(:target_locations)
end