google-apis-datapipelines_v1 0.10.0 → 0.11.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -22,6 +22,203 @@ module Google
22
22
  module Apis
23
23
  module DatapipelinesV1
24
24
 
25
+ # Represents an array of values. The elements can be of any type.
26
+ class GoogleCloudDatapipelinesV1ArrayValue
27
+ include Google::Apis::Core::Hashable
28
+
29
+ # The elements of the array.
30
+ # Corresponds to the JSON property `elements`
31
+ # @return [Array<Google::Apis::DatapipelinesV1::GoogleCloudDatapipelinesV1FieldValue>]
32
+ attr_accessor :elements
33
+
34
+ def initialize(**args)
35
+ update!(**args)
36
+ end
37
+
38
+ # Update properties of this object
39
+ def update!(**args)
40
+ @elements = args[:elements] if args.key?(:elements)
41
+ end
42
+ end
43
+
44
+ # Represents a non-dividable value.
45
+ class GoogleCloudDatapipelinesV1AtomicValue
46
+ include Google::Apis::Core::Hashable
47
+
48
+ # A boolean value.
49
+ # Corresponds to the JSON property `booleanValue`
50
+ # @return [Boolean]
51
+ attr_accessor :boolean_value
52
+ alias_method :boolean_value?, :boolean_value
53
+
54
+ # An 8-bit signed value.
55
+ # Corresponds to the JSON property `byteValue`
56
+ # @return [Fixnum]
57
+ attr_accessor :byte_value
58
+
59
+ # An array of raw bytes.
60
+ # Corresponds to the JSON property `bytesValue`
61
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
62
+ # @return [String]
63
+ attr_accessor :bytes_value
64
+
65
+ # Represents civil time (or occasionally physical time). This type can represent
66
+ # a civil time in one of a few possible ways: * When utc_offset is set and
67
+ # time_zone is unset: a civil time on a calendar day with a particular offset
68
+ # from UTC. * When time_zone is set and utc_offset is unset: a civil time on a
69
+ # calendar day in a particular time zone. * When neither time_zone nor
70
+ # utc_offset is set: a civil time on a calendar day in local time. The date is
71
+ # relative to the Proleptic Gregorian Calendar. If year, month, or day are 0,
72
+ # the DateTime is considered not to have a specific year, month, or day
73
+ # respectively. This type may also be used to represent a physical time if all
74
+ # the date and time fields are set and either case of the `time_offset` oneof is
75
+ # set. Consider using `Timestamp` message for physical time instead. If your use
76
+ # case also would like to store the user's timezone, that can be done in another
77
+ # field. This type is more flexible than some applications may want. Make sure
78
+ # to document and validate your application's limitations.
79
+ # Corresponds to the JSON property `datetimeValue`
80
+ # @return [Google::Apis::DatapipelinesV1::GoogleTypeDateTime]
81
+ attr_accessor :datetime_value
82
+
83
+ # A representation of a decimal value, such as 2.5. Clients may convert values
84
+ # into language-native decimal formats, such as Java's BigDecimal or Python's
85
+ # decimal.Decimal. [BigDecimal]: https://docs.oracle.com/en/java/javase/11/docs/
86
+ # api/java.base/java/math/BigDecimal.html [decimal.Decimal]: https://docs.python.
87
+ # org/3/library/decimal.html
88
+ # Corresponds to the JSON property `decimalValue`
89
+ # @return [Google::Apis::DatapipelinesV1::GoogleTypeDecimal]
90
+ attr_accessor :decimal_value
91
+
92
+ # A 64-bit floating point value.
93
+ # Corresponds to the JSON property `doubleValue`
94
+ # @return [Float]
95
+ attr_accessor :double_value
96
+
97
+ # A 32-bit floating point value.
98
+ # Corresponds to the JSON property `floatValue`
99
+ # @return [Float]
100
+ attr_accessor :float_value
101
+
102
+ # A 16-bit signed value.
103
+ # Corresponds to the JSON property `int16Value`
104
+ # @return [Fixnum]
105
+ attr_accessor :int16_value
106
+
107
+ # A 32-bit signed value.
108
+ # Corresponds to the JSON property `int32Value`
109
+ # @return [Fixnum]
110
+ attr_accessor :int32_value
111
+
112
+ # A 64-bit signed value.
113
+ # Corresponds to the JSON property `int64Value`
114
+ # @return [Fixnum]
115
+ attr_accessor :int64_value
116
+
117
+ # A string value.
118
+ # Corresponds to the JSON property `stringValue`
119
+ # @return [String]
120
+ attr_accessor :string_value
121
+
122
+ def initialize(**args)
123
+ update!(**args)
124
+ end
125
+
126
+ # Update properties of this object
127
+ def update!(**args)
128
+ @boolean_value = args[:boolean_value] if args.key?(:boolean_value)
129
+ @byte_value = args[:byte_value] if args.key?(:byte_value)
130
+ @bytes_value = args[:bytes_value] if args.key?(:bytes_value)
131
+ @datetime_value = args[:datetime_value] if args.key?(:datetime_value)
132
+ @decimal_value = args[:decimal_value] if args.key?(:decimal_value)
133
+ @double_value = args[:double_value] if args.key?(:double_value)
134
+ @float_value = args[:float_value] if args.key?(:float_value)
135
+ @int16_value = args[:int16_value] if args.key?(:int16_value)
136
+ @int32_value = args[:int32_value] if args.key?(:int32_value)
137
+ @int64_value = args[:int64_value] if args.key?(:int64_value)
138
+ @string_value = args[:string_value] if args.key?(:string_value)
139
+ end
140
+ end
141
+
142
+ # Response message for BatchGetTransformDescriptions
143
+ class GoogleCloudDatapipelinesV1BatchGetTransformDescriptionsResponse
144
+ include Google::Apis::Core::Hashable
145
+
146
+ # List of requested transform descriptions.
147
+ # Corresponds to the JSON property `transformDescriptions`
148
+ # @return [Array<Google::Apis::DatapipelinesV1::GoogleCloudDatapipelinesV1TransformDescription>]
149
+ attr_accessor :transform_descriptions
150
+
151
+ def initialize(**args)
152
+ update!(**args)
153
+ end
154
+
155
+ # Update properties of this object
156
+ def update!(**args)
157
+ @transform_descriptions = args[:transform_descriptions] if args.key?(:transform_descriptions)
158
+ end
159
+ end
160
+
161
+ # Request message for ComputeSchema
162
+ class GoogleCloudDatapipelinesV1ComputeSchemaRequest
163
+ include Google::Apis::Core::Hashable
164
+
165
+ # A fully configured transform that can be validated.
166
+ # Corresponds to the JSON property `config`
167
+ # @return [Google::Apis::DatapipelinesV1::GoogleCloudDatapipelinesV1ConfiguredTransform]
168
+ attr_accessor :config
169
+
170
+ # Optional. In relation to the full pipeline graph, the schemas of the
171
+ # transforms that are used as inputs to the one for `config`. If `config`
172
+ # represents a transform for reading from some resource, then this should be
173
+ # empty. For all other transforms, at least one value must be provided.
174
+ # Corresponds to the JSON property `inputSchemas`
175
+ # @return [Array<Google::Apis::DatapipelinesV1::GoogleCloudDatapipelinesV1Schema>]
176
+ attr_accessor :input_schemas
177
+
178
+ # The raw schema and its type.
179
+ # Corresponds to the JSON property `rawSchema`
180
+ # @return [Google::Apis::DatapipelinesV1::GoogleCloudDatapipelinesV1RawSchemaInfo]
181
+ attr_accessor :raw_schema
182
+
183
+ def initialize(**args)
184
+ update!(**args)
185
+ end
186
+
187
+ # Update properties of this object
188
+ def update!(**args)
189
+ @config = args[:config] if args.key?(:config)
190
+ @input_schemas = args[:input_schemas] if args.key?(:input_schemas)
191
+ @raw_schema = args[:raw_schema] if args.key?(:raw_schema)
192
+ end
193
+ end
194
+
195
+ # A fully configured transform that can be validated.
196
+ class GoogleCloudDatapipelinesV1ConfiguredTransform
197
+ include Google::Apis::Core::Hashable
198
+
199
+ # Represents an Apache Beam row, though the `Any` nature of values is replaced
200
+ # with more concrete representations of valid values.
201
+ # Corresponds to the JSON property `config`
202
+ # @return [Google::Apis::DatapipelinesV1::GoogleCloudDatapipelinesV1Row]
203
+ attr_accessor :config
204
+
205
+ # Unique resource name of the transform. This should be the same as the
206
+ # equivalent `TransformDescription` value.
207
+ # Corresponds to the JSON property `uniformResourceName`
208
+ # @return [String]
209
+ attr_accessor :uniform_resource_name
210
+
211
+ def initialize(**args)
212
+ update!(**args)
213
+ end
214
+
215
+ # Update properties of this object
216
+ def update!(**args)
217
+ @config = args[:config] if args.key?(:config)
218
+ @uniform_resource_name = args[:uniform_resource_name] if args.key?(:uniform_resource_name)
219
+ end
220
+ end
221
+
25
222
  # Pipeline job details specific to the Dataflow API. This is encapsulated here
26
223
  # to allow for more executors to store their specific details separately.
27
224
  class GoogleCloudDatapipelinesV1DataflowJobDetails
@@ -57,6 +254,180 @@ module Google
57
254
  end
58
255
  end
59
256
 
257
+ # Represents a selected value from an EnumerationType.
258
+ class GoogleCloudDatapipelinesV1EnumerationValue
259
+ include Google::Apis::Core::Hashable
260
+
261
+ # Name of the enum option.
262
+ # Corresponds to the JSON property `name`
263
+ # @return [String]
264
+ attr_accessor :name
265
+
266
+ def initialize(**args)
267
+ update!(**args)
268
+ end
269
+
270
+ # Update properties of this object
271
+ def update!(**args)
272
+ @name = args[:name] if args.key?(:name)
273
+ end
274
+ end
275
+
276
+ # Info for a single field in the schema.
277
+ class GoogleCloudDatapipelinesV1Field
278
+ include Google::Apis::Core::Hashable
279
+
280
+ # Name of the field.
281
+ # Corresponds to the JSON property `name`
282
+ # @return [String]
283
+ attr_accessor :name
284
+
285
+ # Type info about a field.
286
+ # Corresponds to the JSON property `type`
287
+ # @return [Google::Apis::DatapipelinesV1::GoogleCloudDatapipelinesV1FieldType]
288
+ attr_accessor :type
289
+
290
+ def initialize(**args)
291
+ update!(**args)
292
+ end
293
+
294
+ # Update properties of this object
295
+ def update!(**args)
296
+ @name = args[:name] if args.key?(:name)
297
+ @type = args[:type] if args.key?(:type)
298
+ end
299
+ end
300
+
301
+ # Type info about a field.
302
+ class GoogleCloudDatapipelinesV1FieldType
303
+ include Google::Apis::Core::Hashable
304
+
305
+ # Type info about a field.
306
+ # Corresponds to the JSON property `collectionElementType`
307
+ # @return [Google::Apis::DatapipelinesV1::GoogleCloudDatapipelinesV1FieldType]
308
+ attr_accessor :collection_element_type
309
+
310
+ # Represents the input for creating a specified logical type.
311
+ # Corresponds to the JSON property `logicalType`
312
+ # @return [Google::Apis::DatapipelinesV1::GoogleCloudDatapipelinesV1LogicalType]
313
+ attr_accessor :logical_type
314
+
315
+ # Represents a map in a schema.
316
+ # Corresponds to the JSON property `mapType`
317
+ # @return [Google::Apis::DatapipelinesV1::GoogleCloudDatapipelinesV1MapType]
318
+ attr_accessor :map_type
319
+
320
+ # Whether or not this field is nullable.
321
+ # Corresponds to the JSON property `nullable`
322
+ # @return [Boolean]
323
+ attr_accessor :nullable
324
+ alias_method :nullable?, :nullable
325
+
326
+ # Represents a simplified Apache Beam schema.
327
+ # Corresponds to the JSON property `rowSchema`
328
+ # @return [Google::Apis::DatapipelinesV1::GoogleCloudDatapipelinesV1Schema]
329
+ attr_accessor :row_schema
330
+
331
+ # Specific type of the field. For non-atomic types, the corresponding type info
332
+ # for that non-atomic must be set.
333
+ # Corresponds to the JSON property `type`
334
+ # @return [String]
335
+ attr_accessor :type
336
+
337
+ def initialize(**args)
338
+ update!(**args)
339
+ end
340
+
341
+ # Update properties of this object
342
+ def update!(**args)
343
+ @collection_element_type = args[:collection_element_type] if args.key?(:collection_element_type)
344
+ @logical_type = args[:logical_type] if args.key?(:logical_type)
345
+ @map_type = args[:map_type] if args.key?(:map_type)
346
+ @nullable = args[:nullable] if args.key?(:nullable)
347
+ @row_schema = args[:row_schema] if args.key?(:row_schema)
348
+ @type = args[:type] if args.key?(:type)
349
+ end
350
+ end
351
+
352
+ # A single value in a row. The value set must correspond to the correct type
353
+ # from the row's schema.
354
+ class GoogleCloudDatapipelinesV1FieldValue
355
+ include Google::Apis::Core::Hashable
356
+
357
+ # Represents an array of values. The elements can be of any type.
358
+ # Corresponds to the JSON property `arrayValue`
359
+ # @return [Google::Apis::DatapipelinesV1::GoogleCloudDatapipelinesV1ArrayValue]
360
+ attr_accessor :array_value
361
+
362
+ # Represents a non-dividable value.
363
+ # Corresponds to the JSON property `atomicValue`
364
+ # @return [Google::Apis::DatapipelinesV1::GoogleCloudDatapipelinesV1AtomicValue]
365
+ attr_accessor :atomic_value
366
+
367
+ # Represents a selected value from an EnumerationType.
368
+ # Corresponds to the JSON property `enumValue`
369
+ # @return [Google::Apis::DatapipelinesV1::GoogleCloudDatapipelinesV1EnumerationValue]
370
+ attr_accessor :enum_value
371
+
372
+ # Represents a collection of bytes whose size is the same as the associated
373
+ # FixedBytes size value.
374
+ # Corresponds to the JSON property `fixedBytesValue`
375
+ # @return [Google::Apis::DatapipelinesV1::GoogleCloudDatapipelinesV1FixedBytesValue]
376
+ attr_accessor :fixed_bytes_value
377
+
378
+ # Represents an iterable of values. The elements can be of any type.
379
+ # Corresponds to the JSON property `iterableValue`
380
+ # @return [Google::Apis::DatapipelinesV1::GoogleCloudDatapipelinesV1IterableValue]
381
+ attr_accessor :iterable_value
382
+
383
+ # Represents a key/value pairing.
384
+ # Corresponds to the JSON property `mapValue`
385
+ # @return [Google::Apis::DatapipelinesV1::GoogleCloudDatapipelinesV1MapValue]
386
+ attr_accessor :map_value
387
+
388
+ # Represents an Apache Beam row, though the `Any` nature of values is replaced
389
+ # with more concrete representations of valid values.
390
+ # Corresponds to the JSON property `rowValue`
391
+ # @return [Google::Apis::DatapipelinesV1::GoogleCloudDatapipelinesV1Row]
392
+ attr_accessor :row_value
393
+
394
+ def initialize(**args)
395
+ update!(**args)
396
+ end
397
+
398
+ # Update properties of this object
399
+ def update!(**args)
400
+ @array_value = args[:array_value] if args.key?(:array_value)
401
+ @atomic_value = args[:atomic_value] if args.key?(:atomic_value)
402
+ @enum_value = args[:enum_value] if args.key?(:enum_value)
403
+ @fixed_bytes_value = args[:fixed_bytes_value] if args.key?(:fixed_bytes_value)
404
+ @iterable_value = args[:iterable_value] if args.key?(:iterable_value)
405
+ @map_value = args[:map_value] if args.key?(:map_value)
406
+ @row_value = args[:row_value] if args.key?(:row_value)
407
+ end
408
+ end
409
+
410
+ # Represents a collection of bytes whose size is the same as the associated
411
+ # FixedBytes size value.
412
+ class GoogleCloudDatapipelinesV1FixedBytesValue
413
+ include Google::Apis::Core::Hashable
414
+
415
+ # The raw bytes. It must be exactly the size specified in the schema.
416
+ # Corresponds to the JSON property `value`
417
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
418
+ # @return [String]
419
+ attr_accessor :value
420
+
421
+ def initialize(**args)
422
+ update!(**args)
423
+ end
424
+
425
+ # Update properties of this object
426
+ def update!(**args)
427
+ @value = args[:value] if args.key?(:value)
428
+ end
429
+ end
430
+
60
431
  # The environment values to be set at runtime for a Flex Template.
61
432
  class GoogleCloudDatapipelinesV1FlexTemplateRuntimeEnvironment
62
433
  include Google::Apis::Core::Hashable
@@ -192,6 +563,25 @@ module Google
192
563
  end
193
564
  end
194
565
 
566
+ # Represents an iterable of values. The elements can be of any type.
567
+ class GoogleCloudDatapipelinesV1IterableValue
568
+ include Google::Apis::Core::Hashable
569
+
570
+ # The elements of the iterable.
571
+ # Corresponds to the JSON property `elements`
572
+ # @return [Array<Google::Apis::DatapipelinesV1::GoogleCloudDatapipelinesV1FieldValue>]
573
+ attr_accessor :elements
574
+
575
+ def initialize(**args)
576
+ update!(**args)
577
+ end
578
+
579
+ # Update properties of this object
580
+ def update!(**args)
581
+ @elements = args[:elements] if args.key?(:elements)
582
+ end
583
+ end
584
+
195
585
  # Definition of the job information maintained by the pipeline. Fields in this
196
586
  # entity are retrieved from the executor API (e.g. Dataflow API).
197
587
  class GoogleCloudDatapipelinesV1Job
@@ -501,6 +891,140 @@ module Google
501
891
  end
502
892
  end
503
893
 
894
+ # Represents the input for creating a specified logical type.
895
+ class GoogleCloudDatapipelinesV1LogicalType
896
+ include Google::Apis::Core::Hashable
897
+
898
+ # Represents the Beam EnumerationType logical type.
899
+ # Corresponds to the JSON property `enumerationType`
900
+ # @return [Google::Apis::DatapipelinesV1::GoogleCloudDatapipelinesV1LogicalTypeEnumerationType]
901
+ attr_accessor :enumeration_type
902
+
903
+ # Represents the Beam FixedBytes logical type.
904
+ # Corresponds to the JSON property `fixedBytes`
905
+ # @return [Google::Apis::DatapipelinesV1::GoogleCloudDatapipelinesV1LogicalTypeFixedBytes]
906
+ attr_accessor :fixed_bytes
907
+
908
+ def initialize(**args)
909
+ update!(**args)
910
+ end
911
+
912
+ # Update properties of this object
913
+ def update!(**args)
914
+ @enumeration_type = args[:enumeration_type] if args.key?(:enumeration_type)
915
+ @fixed_bytes = args[:fixed_bytes] if args.key?(:fixed_bytes)
916
+ end
917
+ end
918
+
919
+ # Represents the Beam EnumerationType logical type.
920
+ class GoogleCloudDatapipelinesV1LogicalTypeEnumerationType
921
+ include Google::Apis::Core::Hashable
922
+
923
+ # Names of the values. The numeric value is the same as the index.
924
+ # Corresponds to the JSON property `values`
925
+ # @return [Array<String>]
926
+ attr_accessor :values
927
+
928
+ def initialize(**args)
929
+ update!(**args)
930
+ end
931
+
932
+ # Update properties of this object
933
+ def update!(**args)
934
+ @values = args[:values] if args.key?(:values)
935
+ end
936
+ end
937
+
938
+ # Represents the Beam FixedBytes logical type.
939
+ class GoogleCloudDatapipelinesV1LogicalTypeFixedBytes
940
+ include Google::Apis::Core::Hashable
941
+
942
+ # Number of bytes to allocate.
943
+ # Corresponds to the JSON property `sizeBytes`
944
+ # @return [Fixnum]
945
+ attr_accessor :size_bytes
946
+
947
+ def initialize(**args)
948
+ update!(**args)
949
+ end
950
+
951
+ # Update properties of this object
952
+ def update!(**args)
953
+ @size_bytes = args[:size_bytes] if args.key?(:size_bytes)
954
+ end
955
+ end
956
+
957
+ # Represents a map in a schema.
958
+ class GoogleCloudDatapipelinesV1MapType
959
+ include Google::Apis::Core::Hashable
960
+
961
+ # Type info about a field.
962
+ # Corresponds to the JSON property `mapKeyType`
963
+ # @return [Google::Apis::DatapipelinesV1::GoogleCloudDatapipelinesV1FieldType]
964
+ attr_accessor :map_key_type
965
+
966
+ # Type info about a field.
967
+ # Corresponds to the JSON property `mapValueType`
968
+ # @return [Google::Apis::DatapipelinesV1::GoogleCloudDatapipelinesV1FieldType]
969
+ attr_accessor :map_value_type
970
+
971
+ def initialize(**args)
972
+ update!(**args)
973
+ end
974
+
975
+ # Update properties of this object
976
+ def update!(**args)
977
+ @map_key_type = args[:map_key_type] if args.key?(:map_key_type)
978
+ @map_value_type = args[:map_value_type] if args.key?(:map_value_type)
979
+ end
980
+ end
981
+
982
+ # Represents a key/value pairing.
983
+ class GoogleCloudDatapipelinesV1MapValue
984
+ include Google::Apis::Core::Hashable
985
+
986
+ # The entries in the map.
987
+ # Corresponds to the JSON property `entries`
988
+ # @return [Array<Google::Apis::DatapipelinesV1::GoogleCloudDatapipelinesV1MapValueEntry>]
989
+ attr_accessor :entries
990
+
991
+ def initialize(**args)
992
+ update!(**args)
993
+ end
994
+
995
+ # Update properties of this object
996
+ def update!(**args)
997
+ @entries = args[:entries] if args.key?(:entries)
998
+ end
999
+ end
1000
+
1001
+ # A single entry in the map. Each entry must have a unique key.
1002
+ class GoogleCloudDatapipelinesV1MapValueEntry
1003
+ include Google::Apis::Core::Hashable
1004
+
1005
+ # A single value in a row. The value set must correspond to the correct type
1006
+ # from the row's schema.
1007
+ # Corresponds to the JSON property `key`
1008
+ # @return [Google::Apis::DatapipelinesV1::GoogleCloudDatapipelinesV1FieldValue]
1009
+ attr_accessor :key
1010
+
1011
+ # A single value in a row. The value set must correspond to the correct type
1012
+ # from the row's schema.
1013
+ # Corresponds to the JSON property `value`
1014
+ # @return [Google::Apis::DatapipelinesV1::GoogleCloudDatapipelinesV1FieldValue]
1015
+ attr_accessor :value
1016
+
1017
+ def initialize(**args)
1018
+ update!(**args)
1019
+ end
1020
+
1021
+ # Update properties of this object
1022
+ def update!(**args)
1023
+ @key = args[:key] if args.key?(:key)
1024
+ @value = args[:value] if args.key?(:value)
1025
+ end
1026
+ end
1027
+
504
1028
  # The main pipeline entity and all the necessary metadata for launching and
505
1029
  # managing linked jobs.
506
1030
  class GoogleCloudDatapipelinesV1Pipeline
@@ -600,6 +1124,58 @@ module Google
600
1124
  end
601
1125
  end
602
1126
 
1127
+ # The raw schema and its type.
1128
+ class GoogleCloudDatapipelinesV1RawSchemaInfo
1129
+ include Google::Apis::Core::Hashable
1130
+
1131
+ # The schema.
1132
+ # Corresponds to the JSON property `rawSchema`
1133
+ # @return [String]
1134
+ attr_accessor :raw_schema
1135
+
1136
+ # The type of the schema.
1137
+ # Corresponds to the JSON property `type`
1138
+ # @return [String]
1139
+ attr_accessor :type
1140
+
1141
+ def initialize(**args)
1142
+ update!(**args)
1143
+ end
1144
+
1145
+ # Update properties of this object
1146
+ def update!(**args)
1147
+ @raw_schema = args[:raw_schema] if args.key?(:raw_schema)
1148
+ @type = args[:type] if args.key?(:type)
1149
+ end
1150
+ end
1151
+
1152
+ # Represents an Apache Beam row, though the `Any` nature of values is replaced
1153
+ # with more concrete representations of valid values.
1154
+ class GoogleCloudDatapipelinesV1Row
1155
+ include Google::Apis::Core::Hashable
1156
+
1157
+ # Holds a schema or a reference to a schema in some repository.
1158
+ # Corresponds to the JSON property `schema`
1159
+ # @return [Google::Apis::DatapipelinesV1::GoogleCloudDatapipelinesV1SchemaSource]
1160
+ attr_accessor :schema
1161
+
1162
+ # Required. The values of this Row. A fully built row is required to hold to the
1163
+ # schema specified by `schema`.
1164
+ # Corresponds to the JSON property `values`
1165
+ # @return [Array<Google::Apis::DatapipelinesV1::GoogleCloudDatapipelinesV1FieldValue>]
1166
+ attr_accessor :values
1167
+
1168
+ def initialize(**args)
1169
+ update!(**args)
1170
+ end
1171
+
1172
+ # Update properties of this object
1173
+ def update!(**args)
1174
+ @schema = args[:schema] if args.key?(:schema)
1175
+ @values = args[:values] if args.key?(:values)
1176
+ end
1177
+ end
1178
+
603
1179
  # Request message for RunPipeline
604
1180
  class GoogleCloudDatapipelinesV1RunPipelineRequest
605
1181
  include Google::Apis::Core::Hashable
@@ -802,6 +1378,57 @@ module Google
802
1378
  end
803
1379
  end
804
1380
 
1381
+ # Represents a simplified Apache Beam schema.
1382
+ class GoogleCloudDatapipelinesV1Schema
1383
+ include Google::Apis::Core::Hashable
1384
+
1385
+ # Fields in the schema. Every field within a schema must have a unique name.
1386
+ # Corresponds to the JSON property `fields`
1387
+ # @return [Array<Google::Apis::DatapipelinesV1::GoogleCloudDatapipelinesV1Field>]
1388
+ attr_accessor :fields
1389
+
1390
+ # An identifier of the schema for looking it up in a repository. This only needs
1391
+ # to be set if the schema is stored in a repository.
1392
+ # Corresponds to the JSON property `referenceId`
1393
+ # @return [String]
1394
+ attr_accessor :reference_id
1395
+
1396
+ def initialize(**args)
1397
+ update!(**args)
1398
+ end
1399
+
1400
+ # Update properties of this object
1401
+ def update!(**args)
1402
+ @fields = args[:fields] if args.key?(:fields)
1403
+ @reference_id = args[:reference_id] if args.key?(:reference_id)
1404
+ end
1405
+ end
1406
+
1407
+ # Holds a schema or a reference to a schema in some repository.
1408
+ class GoogleCloudDatapipelinesV1SchemaSource
1409
+ include Google::Apis::Core::Hashable
1410
+
1411
+ # Represents a simplified Apache Beam schema.
1412
+ # Corresponds to the JSON property `localSchema`
1413
+ # @return [Google::Apis::DatapipelinesV1::GoogleCloudDatapipelinesV1Schema]
1414
+ attr_accessor :local_schema
1415
+
1416
+ # The `reference_id` value of a schema in a repository.
1417
+ # Corresponds to the JSON property `referenceId`
1418
+ # @return [String]
1419
+ attr_accessor :reference_id
1420
+
1421
+ def initialize(**args)
1422
+ update!(**args)
1423
+ end
1424
+
1425
+ # Update properties of this object
1426
+ def update!(**args)
1427
+ @local_schema = args[:local_schema] if args.key?(:local_schema)
1428
+ @reference_id = args[:reference_id] if args.key?(:reference_id)
1429
+ end
1430
+ end
1431
+
805
1432
  # The version of the SDK used to run the job.
806
1433
  class GoogleCloudDatapipelinesV1SdkVersion
807
1434
  include Google::Apis::Core::Hashable
@@ -846,6 +1473,40 @@ module Google
846
1473
  end
847
1474
  end
848
1475
 
1476
+ # Description of a schema-aware transform, which provides info on how it can be
1477
+ # configured.
1478
+ class GoogleCloudDatapipelinesV1TransformDescription
1479
+ include Google::Apis::Core::Hashable
1480
+
1481
+ # Output only. The full name of this resource formatted as: projects/`project`/
1482
+ # locations/`location`/transformDescriptions/`transform_description` `
1483
+ # transform_description` is the same as the `uniform_resource_name` field.
1484
+ # Corresponds to the JSON property `name`
1485
+ # @return [String]
1486
+ attr_accessor :name
1487
+
1488
+ # Represents a simplified Apache Beam schema.
1489
+ # Corresponds to the JSON property `options`
1490
+ # @return [Google::Apis::DatapipelinesV1::GoogleCloudDatapipelinesV1Schema]
1491
+ attr_accessor :options
1492
+
1493
+ # Unique resource name of the transform.
1494
+ # Corresponds to the JSON property `uniformResourceName`
1495
+ # @return [String]
1496
+ attr_accessor :uniform_resource_name
1497
+
1498
+ def initialize(**args)
1499
+ update!(**args)
1500
+ end
1501
+
1502
+ # Update properties of this object
1503
+ def update!(**args)
1504
+ @name = args[:name] if args.key?(:name)
1505
+ @options = args[:options] if args.key?(:options)
1506
+ @uniform_resource_name = args[:uniform_resource_name] if args.key?(:uniform_resource_name)
1507
+ end
1508
+ end
1509
+
849
1510
  # Workload details for creating the pipeline jobs.
850
1511
  class GoogleCloudDatapipelinesV1Workload
851
1512
  include Google::Apis::Core::Hashable
@@ -925,6 +1586,178 @@ module Google
925
1586
  @message = args[:message] if args.key?(:message)
926
1587
  end
927
1588
  end
1589
+
1590
+ # Represents civil time (or occasionally physical time). This type can represent
1591
+ # a civil time in one of a few possible ways: * When utc_offset is set and
1592
+ # time_zone is unset: a civil time on a calendar day with a particular offset
1593
+ # from UTC. * When time_zone is set and utc_offset is unset: a civil time on a
1594
+ # calendar day in a particular time zone. * When neither time_zone nor
1595
+ # utc_offset is set: a civil time on a calendar day in local time. The date is
1596
+ # relative to the Proleptic Gregorian Calendar. If year, month, or day are 0,
1597
+ # the DateTime is considered not to have a specific year, month, or day
1598
+ # respectively. This type may also be used to represent a physical time if all
1599
+ # the date and time fields are set and either case of the `time_offset` oneof is
1600
+ # set. Consider using `Timestamp` message for physical time instead. If your use
1601
+ # case also would like to store the user's timezone, that can be done in another
1602
+ # field. This type is more flexible than some applications may want. Make sure
1603
+ # to document and validate your application's limitations.
1604
+ class GoogleTypeDateTime
1605
+ include Google::Apis::Core::Hashable
1606
+
1607
+ # Optional. Day of month. Must be from 1 to 31 and valid for the year and month,
1608
+ # or 0 if specifying a datetime without a day.
1609
+ # Corresponds to the JSON property `day`
1610
+ # @return [Fixnum]
1611
+ attr_accessor :day
1612
+
1613
+ # Optional. Hours of day in 24 hour format. Should be from 0 to 23, defaults to
1614
+ # 0 (midnight). An API may choose to allow the value "24:00:00" for scenarios
1615
+ # like business closing time.
1616
+ # Corresponds to the JSON property `hours`
1617
+ # @return [Fixnum]
1618
+ attr_accessor :hours
1619
+
1620
+ # Optional. Minutes of hour of day. Must be from 0 to 59, defaults to 0.
1621
+ # Corresponds to the JSON property `minutes`
1622
+ # @return [Fixnum]
1623
+ attr_accessor :minutes
1624
+
1625
+ # Optional. Month of year. Must be from 1 to 12, or 0 if specifying a datetime
1626
+ # without a month.
1627
+ # Corresponds to the JSON property `month`
1628
+ # @return [Fixnum]
1629
+ attr_accessor :month
1630
+
1631
+ # Optional. Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999,
1632
+ # defaults to 0.
1633
+ # Corresponds to the JSON property `nanos`
1634
+ # @return [Fixnum]
1635
+ attr_accessor :nanos
1636
+
1637
+ # Optional. Seconds of minutes of the time. Must normally be from 0 to 59,
1638
+ # defaults to 0. An API may allow the value 60 if it allows leap-seconds.
1639
+ # Corresponds to the JSON property `seconds`
1640
+ # @return [Fixnum]
1641
+ attr_accessor :seconds
1642
+
1643
+ # Represents a time zone from the [IANA Time Zone Database](https://www.iana.org/
1644
+ # time-zones).
1645
+ # Corresponds to the JSON property `timeZone`
1646
+ # @return [Google::Apis::DatapipelinesV1::GoogleTypeTimeZone]
1647
+ attr_accessor :time_zone
1648
+
1649
+ # UTC offset. Must be whole seconds, between -18 hours and +18 hours. For
1650
+ # example, a UTC offset of -4:00 would be represented as ` seconds: -14400 `.
1651
+ # Corresponds to the JSON property `utcOffset`
1652
+ # @return [String]
1653
+ attr_accessor :utc_offset
1654
+
1655
+ # Optional. Year of date. Must be from 1 to 9999, or 0 if specifying a datetime
1656
+ # without a year.
1657
+ # Corresponds to the JSON property `year`
1658
+ # @return [Fixnum]
1659
+ attr_accessor :year
1660
+
1661
+ def initialize(**args)
1662
+ update!(**args)
1663
+ end
1664
+
1665
+ # Update properties of this object
1666
+ def update!(**args)
1667
+ @day = args[:day] if args.key?(:day)
1668
+ @hours = args[:hours] if args.key?(:hours)
1669
+ @minutes = args[:minutes] if args.key?(:minutes)
1670
+ @month = args[:month] if args.key?(:month)
1671
+ @nanos = args[:nanos] if args.key?(:nanos)
1672
+ @seconds = args[:seconds] if args.key?(:seconds)
1673
+ @time_zone = args[:time_zone] if args.key?(:time_zone)
1674
+ @utc_offset = args[:utc_offset] if args.key?(:utc_offset)
1675
+ @year = args[:year] if args.key?(:year)
1676
+ end
1677
+ end
1678
+
1679
+ # A representation of a decimal value, such as 2.5. Clients may convert values
1680
+ # into language-native decimal formats, such as Java's BigDecimal or Python's
1681
+ # decimal.Decimal. [BigDecimal]: https://docs.oracle.com/en/java/javase/11/docs/
1682
+ # api/java.base/java/math/BigDecimal.html [decimal.Decimal]: https://docs.python.
1683
+ # org/3/library/decimal.html
1684
+ class GoogleTypeDecimal
1685
+ include Google::Apis::Core::Hashable
1686
+
1687
+ # The decimal value, as a string. The string representation consists of an
1688
+ # optional sign, `+` (`U+002B`) or `-` (`U+002D`), followed by a sequence of
1689
+ # zero or more decimal digits ("the integer"), optionally followed by a fraction,
1690
+ # optionally followed by an exponent. An empty string **should** be interpreted
1691
+ # as `0`. The fraction consists of a decimal point followed by zero or more
1692
+ # decimal digits. The string must contain at least one digit in either the
1693
+ # integer or the fraction. The number formed by the sign, the integer and the
1694
+ # fraction is referred to as the significand. The exponent consists of the
1695
+ # character `e` (`U+0065`) or `E` (`U+0045`) followed by one or more decimal
1696
+ # digits. Services **should** normalize decimal values before storing them by: -
1697
+ # Removing an explicitly-provided `+` sign (`+2.5` -> `2.5`). - Replacing a zero-
1698
+ # length integer value with `0` (`.5` -> `0.5`). - Coercing the exponent
1699
+ # character to upper-case, with explicit sign (`2.5e8` -> `2.5E+8`). - Removing
1700
+ # an explicitly-provided zero exponent (`2.5E0` -> `2.5`). Services **may**
1701
+ # perform additional normalization based on its own needs and the internal
1702
+ # decimal implementation selected, such as shifting the decimal point and
1703
+ # exponent value together (example: `2.5E-1` <-> `0.25`). Additionally, services
1704
+ # **may** preserve trailing zeroes in the fraction to indicate increased
1705
+ # precision, but are not required to do so. Note that only the `.` character is
1706
+ # supported to divide the integer and the fraction; `,` **should not** be
1707
+ # supported regardless of locale. Additionally, thousand separators **should not*
1708
+ # * be supported. If a service does support them, values **must** be normalized.
1709
+ # The ENBF grammar is: DecimalString = '' | [Sign] Significand [Exponent]; Sign =
1710
+ # '+' | '-'; Significand = Digits '.' | [Digits] '.' Digits; Exponent = ('e' | '
1711
+ # E') [Sign] Digits; Digits = ` '0' | '1' | '2' | '3' | '4' | '5' | '6' | '7' | '
1712
+ # 8' | '9' `; Services **should** clearly document the range of supported values,
1713
+ # the maximum supported precision (total number of digits), and, if applicable,
1714
+ # the scale (number of digits after the decimal point), as well as how it
1715
+ # behaves when receiving out-of-bounds values. Services **may** choose to accept
1716
+ # values passed as input even when the value has a higher precision or scale
1717
+ # than the service supports, and **should** round the value to fit the supported
1718
+ # scale. Alternatively, the service **may** error with `400 Bad Request` (`
1719
+ # INVALID_ARGUMENT` in gRPC) if precision would be lost. Services **should**
1720
+ # error with `400 Bad Request` (`INVALID_ARGUMENT` in gRPC) if the service
1721
+ # receives a value outside of the supported range.
1722
+ # Corresponds to the JSON property `value`
1723
+ # @return [String]
1724
+ attr_accessor :value
1725
+
1726
+ def initialize(**args)
1727
+ update!(**args)
1728
+ end
1729
+
1730
+ # Update properties of this object
1731
+ def update!(**args)
1732
+ @value = args[:value] if args.key?(:value)
1733
+ end
1734
+ end
1735
+
1736
+ # Represents a time zone from the [IANA Time Zone Database](https://www.iana.org/
1737
+ # time-zones).
1738
+ class GoogleTypeTimeZone
1739
+ include Google::Apis::Core::Hashable
1740
+
1741
+ # IANA Time Zone Database time zone, e.g. "America/New_York".
1742
+ # Corresponds to the JSON property `id`
1743
+ # @return [String]
1744
+ attr_accessor :id
1745
+
1746
+ # Optional. IANA Time Zone Database version number, e.g. "2019a".
1747
+ # Corresponds to the JSON property `version`
1748
+ # @return [String]
1749
+ attr_accessor :version
1750
+
1751
+ def initialize(**args)
1752
+ update!(**args)
1753
+ end
1754
+
1755
+ # Update properties of this object
1756
+ def update!(**args)
1757
+ @id = args[:id] if args.key?(:id)
1758
+ @version = args[:version] if args.key?(:version)
1759
+ end
1760
+ end
928
1761
  end
929
1762
  end
930
1763
  end