google-apis-dataplex_v1 0.50.0 → 0.52.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -333,6 +333,390 @@ module Google
333
333
  end
334
334
  end
335
335
 
336
+ # An aspect is a single piece of metadata describing an entry.
337
+ class GoogleCloudDataplexV1Aspect
338
+ include Google::Apis::Core::Hashable
339
+
340
+ # AspectSource contains source system related information for the aspect.
341
+ # Corresponds to the JSON property `aspectSource`
342
+ # @return [Google::Apis::DataplexV1::GoogleCloudDataplexV1AspectSource]
343
+ attr_accessor :aspect_source
344
+
345
+ # Output only. The resource name of the type used to create this Aspect.
346
+ # Corresponds to the JSON property `aspectType`
347
+ # @return [String]
348
+ attr_accessor :aspect_type
349
+
350
+ # Output only. The time when the Aspect was created.
351
+ # Corresponds to the JSON property `createTime`
352
+ # @return [String]
353
+ attr_accessor :create_time
354
+
355
+ # Required. The content of the aspect, according to its aspect type schema. This
356
+ # will replace content. The maximum size of the field is 120KB (encoded as UTF-8)
357
+ # .
358
+ # Corresponds to the JSON property `data`
359
+ # @return [Hash<String,Object>]
360
+ attr_accessor :data
361
+
362
+ # Output only. The path in the entry under which the aspect is attached.
363
+ # Corresponds to the JSON property `path`
364
+ # @return [String]
365
+ attr_accessor :path
366
+
367
+ # Output only. The time when the Aspect was last updated.
368
+ # Corresponds to the JSON property `updateTime`
369
+ # @return [String]
370
+ attr_accessor :update_time
371
+
372
+ def initialize(**args)
373
+ update!(**args)
374
+ end
375
+
376
+ # Update properties of this object
377
+ def update!(**args)
378
+ @aspect_source = args[:aspect_source] if args.key?(:aspect_source)
379
+ @aspect_type = args[:aspect_type] if args.key?(:aspect_type)
380
+ @create_time = args[:create_time] if args.key?(:create_time)
381
+ @data = args[:data] if args.key?(:data)
382
+ @path = args[:path] if args.key?(:path)
383
+ @update_time = args[:update_time] if args.key?(:update_time)
384
+ end
385
+ end
386
+
387
+ # AspectSource contains source system related information for the aspect.
388
+ class GoogleCloudDataplexV1AspectSource
389
+ include Google::Apis::Core::Hashable
390
+
391
+ # The create time of the aspect in the source system.
392
+ # Corresponds to the JSON property `createTime`
393
+ # @return [String]
394
+ attr_accessor :create_time
395
+
396
+ # The update time of the aspect in the source system.
397
+ # Corresponds to the JSON property `updateTime`
398
+ # @return [String]
399
+ attr_accessor :update_time
400
+
401
+ def initialize(**args)
402
+ update!(**args)
403
+ end
404
+
405
+ # Update properties of this object
406
+ def update!(**args)
407
+ @create_time = args[:create_time] if args.key?(:create_time)
408
+ @update_time = args[:update_time] if args.key?(:update_time)
409
+ end
410
+ end
411
+
412
+ # Aspect Type is a template for creating Aspects, and represents the JSON-schema
413
+ # for a given Entry, e.g., BigQuery Table Schema.
414
+ class GoogleCloudDataplexV1AspectType
415
+ include Google::Apis::Core::Hashable
416
+
417
+ # Autorization for an Aspect Type.
418
+ # Corresponds to the JSON property `authorization`
419
+ # @return [Google::Apis::DataplexV1::GoogleCloudDataplexV1AspectTypeAuthorization]
420
+ attr_accessor :authorization
421
+
422
+ # Output only. The time when the AspectType was created.
423
+ # Corresponds to the JSON property `createTime`
424
+ # @return [String]
425
+ attr_accessor :create_time
426
+
427
+ # Optional. Description of the AspectType.
428
+ # Corresponds to the JSON property `description`
429
+ # @return [String]
430
+ attr_accessor :description
431
+
432
+ # Optional. User friendly display name.
433
+ # Corresponds to the JSON property `displayName`
434
+ # @return [String]
435
+ attr_accessor :display_name
436
+
437
+ # This checksum is computed by the server based on the value of other fields,
438
+ # and may be sent on update and delete requests to ensure the client has an up-
439
+ # to-date value before proceeding.
440
+ # Corresponds to the JSON property `etag`
441
+ # @return [String]
442
+ attr_accessor :etag
443
+
444
+ # Optional. User-defined labels for the AspectType.
445
+ # Corresponds to the JSON property `labels`
446
+ # @return [Hash<String,String>]
447
+ attr_accessor :labels
448
+
449
+ # MetadataTemplate definition for AspectType
450
+ # Corresponds to the JSON property `metadataTemplate`
451
+ # @return [Google::Apis::DataplexV1::GoogleCloudDataplexV1AspectTypeMetadataTemplate]
452
+ attr_accessor :metadata_template
453
+
454
+ # Output only. The relative resource name of the AspectType, of the form:
455
+ # projects/`project_number`/locations/`location_id`/aspectTypes/`aspect_type_id`.
456
+ # Corresponds to the JSON property `name`
457
+ # @return [String]
458
+ attr_accessor :name
459
+
460
+ # Output only. Denotes the transfer status of the Aspect Type. It is unspecified
461
+ # for Aspect Types created from Dataplex API.
462
+ # Corresponds to the JSON property `transferStatus`
463
+ # @return [String]
464
+ attr_accessor :transfer_status
465
+
466
+ # Output only. System generated globally unique ID for the AspectType. This ID
467
+ # will be different if the AspectType is deleted and re-created with the same
468
+ # name.
469
+ # Corresponds to the JSON property `uid`
470
+ # @return [String]
471
+ attr_accessor :uid
472
+
473
+ # Output only. The time when the AspectType was last updated.
474
+ # Corresponds to the JSON property `updateTime`
475
+ # @return [String]
476
+ attr_accessor :update_time
477
+
478
+ def initialize(**args)
479
+ update!(**args)
480
+ end
481
+
482
+ # Update properties of this object
483
+ def update!(**args)
484
+ @authorization = args[:authorization] if args.key?(:authorization)
485
+ @create_time = args[:create_time] if args.key?(:create_time)
486
+ @description = args[:description] if args.key?(:description)
487
+ @display_name = args[:display_name] if args.key?(:display_name)
488
+ @etag = args[:etag] if args.key?(:etag)
489
+ @labels = args[:labels] if args.key?(:labels)
490
+ @metadata_template = args[:metadata_template] if args.key?(:metadata_template)
491
+ @name = args[:name] if args.key?(:name)
492
+ @transfer_status = args[:transfer_status] if args.key?(:transfer_status)
493
+ @uid = args[:uid] if args.key?(:uid)
494
+ @update_time = args[:update_time] if args.key?(:update_time)
495
+ end
496
+ end
497
+
498
+ # Autorization for an Aspect Type.
499
+ class GoogleCloudDataplexV1AspectTypeAuthorization
500
+ include Google::Apis::Core::Hashable
501
+
502
+ # Immutable. The IAM permission grantable on the Entry Group to allow access to
503
+ # instantiate Aspects of Dataplex owned Aspect Types, only settable for Dataplex
504
+ # owned Types.
505
+ # Corresponds to the JSON property `alternateUsePermission`
506
+ # @return [String]
507
+ attr_accessor :alternate_use_permission
508
+
509
+ def initialize(**args)
510
+ update!(**args)
511
+ end
512
+
513
+ # Update properties of this object
514
+ def update!(**args)
515
+ @alternate_use_permission = args[:alternate_use_permission] if args.key?(:alternate_use_permission)
516
+ end
517
+ end
518
+
519
+ # MetadataTemplate definition for AspectType
520
+ class GoogleCloudDataplexV1AspectTypeMetadataTemplate
521
+ include Google::Apis::Core::Hashable
522
+
523
+ # Definition of the annotations of a field
524
+ # Corresponds to the JSON property `annotations`
525
+ # @return [Google::Apis::DataplexV1::GoogleCloudDataplexV1AspectTypeMetadataTemplateAnnotations]
526
+ attr_accessor :annotations
527
+
528
+ # MetadataTemplate definition for AspectType
529
+ # Corresponds to the JSON property `arrayItems`
530
+ # @return [Google::Apis::DataplexV1::GoogleCloudDataplexV1AspectTypeMetadataTemplate]
531
+ attr_accessor :array_items
532
+
533
+ # Definition of the constraints of a field
534
+ # Corresponds to the JSON property `constraints`
535
+ # @return [Google::Apis::DataplexV1::GoogleCloudDataplexV1AspectTypeMetadataTemplateConstraints]
536
+ attr_accessor :constraints
537
+
538
+ # Optional. The list of values for an enum type. Needs to be defined if the type
539
+ # is enum.
540
+ # Corresponds to the JSON property `enumValues`
541
+ # @return [Array<Google::Apis::DataplexV1::GoogleCloudDataplexV1AspectTypeMetadataTemplateEnumValue>]
542
+ attr_accessor :enum_values
543
+
544
+ # Optional. Index is used to encode Template messages. The value of index can
545
+ # range between 1 and 2,147,483,647. Index must be unique within all fields in a
546
+ # Template. (Nested Templates can reuse indexes). Once a Template is defined,
547
+ # the index cannot be changed, because it identifies the field in the actual
548
+ # storage format. Index is a mandatory field, but it is optional for top level
549
+ # fields, and map/array "values" definitions.
550
+ # Corresponds to the JSON property `index`
551
+ # @return [Fixnum]
552
+ attr_accessor :index
553
+
554
+ # MetadataTemplate definition for AspectType
555
+ # Corresponds to the JSON property `mapItems`
556
+ # @return [Google::Apis::DataplexV1::GoogleCloudDataplexV1AspectTypeMetadataTemplate]
557
+ attr_accessor :map_items
558
+
559
+ # Required. The name of the field.
560
+ # Corresponds to the JSON property `name`
561
+ # @return [String]
562
+ attr_accessor :name
563
+
564
+ # Optional. Field definition, needs to be specified if the type is record.
565
+ # Defines the nested fields.
566
+ # Corresponds to the JSON property `recordFields`
567
+ # @return [Array<Google::Apis::DataplexV1::GoogleCloudDataplexV1AspectTypeMetadataTemplate>]
568
+ attr_accessor :record_fields
569
+
570
+ # Required. The datatype of this field. The following values are supported:
571
+ # Primitive types (string, integer, boolean, double, datetime); datetime must be
572
+ # of the format RFC3339 UTC "Zulu" (Examples: "2014-10-02T15:01:23Z" and "2014-
573
+ # 10-02T15:01:23.045123456Z"). Complex types (enum, array, map, record).
574
+ # Corresponds to the JSON property `type`
575
+ # @return [String]
576
+ attr_accessor :type
577
+
578
+ # Optional. Id can be used if this definition of the field needs to be reused
579
+ # later. Id needs to be unique across the entire template. Id can only be
580
+ # specified if the field type is record.
581
+ # Corresponds to the JSON property `typeId`
582
+ # @return [String]
583
+ attr_accessor :type_id
584
+
585
+ # Optional. A reference to another field definition (instead of an inline
586
+ # definition). The value must be equal to the value of an id field defined
587
+ # elsewhere in the MetadataTemplate. Only fields with type as record can refer
588
+ # to other fields.
589
+ # Corresponds to the JSON property `typeRef`
590
+ # @return [String]
591
+ attr_accessor :type_ref
592
+
593
+ def initialize(**args)
594
+ update!(**args)
595
+ end
596
+
597
+ # Update properties of this object
598
+ def update!(**args)
599
+ @annotations = args[:annotations] if args.key?(:annotations)
600
+ @array_items = args[:array_items] if args.key?(:array_items)
601
+ @constraints = args[:constraints] if args.key?(:constraints)
602
+ @enum_values = args[:enum_values] if args.key?(:enum_values)
603
+ @index = args[:index] if args.key?(:index)
604
+ @map_items = args[:map_items] if args.key?(:map_items)
605
+ @name = args[:name] if args.key?(:name)
606
+ @record_fields = args[:record_fields] if args.key?(:record_fields)
607
+ @type = args[:type] if args.key?(:type)
608
+ @type_id = args[:type_id] if args.key?(:type_id)
609
+ @type_ref = args[:type_ref] if args.key?(:type_ref)
610
+ end
611
+ end
612
+
613
+ # Definition of the annotations of a field
614
+ class GoogleCloudDataplexV1AspectTypeMetadataTemplateAnnotations
615
+ include Google::Apis::Core::Hashable
616
+
617
+ # Optional. Marks a field as deprecated, a deprecation message can be included.
618
+ # Corresponds to the JSON property `deprecated`
619
+ # @return [String]
620
+ attr_accessor :deprecated
621
+
622
+ # Optional. Specify a description for a field
623
+ # Corresponds to the JSON property `description`
624
+ # @return [String]
625
+ attr_accessor :description
626
+
627
+ # Optional. Specify a displayname for a field.
628
+ # Corresponds to the JSON property `displayName`
629
+ # @return [String]
630
+ attr_accessor :display_name
631
+
632
+ # Optional. Specify a display order for a field. Display order can be used to
633
+ # reorder where a field is rendered
634
+ # Corresponds to the JSON property `displayOrder`
635
+ # @return [Fixnum]
636
+ attr_accessor :display_order
637
+
638
+ # Optional. String Type annotations can be used to specify special meaning to
639
+ # string fields. The following values are supported: richText: The field must be
640
+ # interpreted as a rich text field. url: A fully qualified url link. resource: A
641
+ # service qualified resource reference.
642
+ # Corresponds to the JSON property `stringType`
643
+ # @return [String]
644
+ attr_accessor :string_type
645
+
646
+ # Optional. Suggested hints for string fields. These can be used to suggest
647
+ # values to users, through an UI for example.
648
+ # Corresponds to the JSON property `stringValues`
649
+ # @return [Array<String>]
650
+ attr_accessor :string_values
651
+
652
+ def initialize(**args)
653
+ update!(**args)
654
+ end
655
+
656
+ # Update properties of this object
657
+ def update!(**args)
658
+ @deprecated = args[:deprecated] if args.key?(:deprecated)
659
+ @description = args[:description] if args.key?(:description)
660
+ @display_name = args[:display_name] if args.key?(:display_name)
661
+ @display_order = args[:display_order] if args.key?(:display_order)
662
+ @string_type = args[:string_type] if args.key?(:string_type)
663
+ @string_values = args[:string_values] if args.key?(:string_values)
664
+ end
665
+ end
666
+
667
+ # Definition of the constraints of a field
668
+ class GoogleCloudDataplexV1AspectTypeMetadataTemplateConstraints
669
+ include Google::Apis::Core::Hashable
670
+
671
+ # Optional. Marks this as an optional/required field.
672
+ # Corresponds to the JSON property `required`
673
+ # @return [Boolean]
674
+ attr_accessor :required
675
+ alias_method :required?, :required
676
+
677
+ def initialize(**args)
678
+ update!(**args)
679
+ end
680
+
681
+ # Update properties of this object
682
+ def update!(**args)
683
+ @required = args[:required] if args.key?(:required)
684
+ end
685
+ end
686
+
687
+ # Definition of Enumvalue (to be used by enum fields)
688
+ class GoogleCloudDataplexV1AspectTypeMetadataTemplateEnumValue
689
+ include Google::Apis::Core::Hashable
690
+
691
+ # Optional. Optional deprecation message to be set if an enum value needs to be
692
+ # deprecated.
693
+ # Corresponds to the JSON property `deprecated`
694
+ # @return [String]
695
+ attr_accessor :deprecated
696
+
697
+ # Required. Index for the enum. Cannot be modified.
698
+ # Corresponds to the JSON property `index`
699
+ # @return [Fixnum]
700
+ attr_accessor :index
701
+
702
+ # Required. Name of the enumvalue. This is the actual value that the aspect will
703
+ # contain.
704
+ # Corresponds to the JSON property `name`
705
+ # @return [String]
706
+ attr_accessor :name
707
+
708
+ def initialize(**args)
709
+ update!(**args)
710
+ end
711
+
712
+ # Update properties of this object
713
+ def update!(**args)
714
+ @deprecated = args[:deprecated] if args.key?(:deprecated)
715
+ @index = args[:index] if args.key?(:index)
716
+ @name = args[:name] if args.key?(:name)
717
+ end
718
+ end
719
+
336
720
  # An asset represents a cloud resource that is being managed within a lake as a
337
721
  # member of a zone.
338
722
  class GoogleCloudDataplexV1Asset
@@ -3519,51 +3903,425 @@ module Google
3519
3903
  end
3520
3904
  end
3521
3905
 
3522
- # Environment represents a user-visible compute infrastructure for analytics
3523
- # within a lake.
3524
- class GoogleCloudDataplexV1Environment
3906
+ # An entry is a representation of a data asset which can be described by various
3907
+ # metadata.
3908
+ class GoogleCloudDataplexV1Entry
3525
3909
  include Google::Apis::Core::Hashable
3526
3910
 
3527
- # Output only. Environment creation time.
3911
+ # Optional. The Aspects attached to the Entry. The key is either the resource
3912
+ # name of the aspect type (if the aspect is attached directly to the entry) or "
3913
+ # aspectType@path" if the aspect is attached to an entry's path.
3914
+ # Corresponds to the JSON property `aspects`
3915
+ # @return [Hash<String,Google::Apis::DataplexV1::GoogleCloudDataplexV1Aspect>]
3916
+ attr_accessor :aspects
3917
+
3918
+ # Output only. The time when the Entry was created.
3528
3919
  # Corresponds to the JSON property `createTime`
3529
3920
  # @return [String]
3530
3921
  attr_accessor :create_time
3531
3922
 
3532
- # Optional. Description of the environment.
3533
- # Corresponds to the JSON property `description`
3534
- # @return [String]
3535
- attr_accessor :description
3923
+ # EntrySource contains source system related information for the entry.
3924
+ # Corresponds to the JSON property `entrySource`
3925
+ # @return [Google::Apis::DataplexV1::GoogleCloudDataplexV1EntrySource]
3926
+ attr_accessor :entry_source
3536
3927
 
3537
- # Optional. User friendly display name.
3538
- # Corresponds to the JSON property `displayName`
3928
+ # Required. Immutable. The resource name of the EntryType used to create this
3929
+ # Entry.
3930
+ # Corresponds to the JSON property `entryType`
3539
3931
  # @return [String]
3540
- attr_accessor :display_name
3541
-
3542
- # URI Endpoints to access sessions associated with the Environment.
3543
- # Corresponds to the JSON property `endpoints`
3544
- # @return [Google::Apis::DataplexV1::GoogleCloudDataplexV1EnvironmentEndpoints]
3545
- attr_accessor :endpoints
3932
+ attr_accessor :entry_type
3546
3933
 
3547
- # Configuration for the underlying infrastructure used to run workloads.
3548
- # Corresponds to the JSON property `infrastructureSpec`
3549
- # @return [Google::Apis::DataplexV1::GoogleCloudDataplexV1EnvironmentInfrastructureSpec]
3550
- attr_accessor :infrastructure_spec
3551
-
3552
- # Optional. User defined labels for the environment.
3553
- # Corresponds to the JSON property `labels`
3554
- # @return [Hash<String,String>]
3555
- attr_accessor :labels
3934
+ # Optional. A name for the entry that can reference it in an external system.
3935
+ # The maximum size of the field is 4000 characters.
3936
+ # Corresponds to the JSON property `fullyQualifiedName`
3937
+ # @return [String]
3938
+ attr_accessor :fully_qualified_name
3556
3939
 
3557
- # Output only. The relative resource name of the environment, of the form:
3558
- # projects/`project_id`/locations/`location_id`/lakes/`lake_id`/environment/`
3559
- # environment_id`
3940
+ # Identifier. The relative resource name of the Entry, of the form: projects/`
3941
+ # project`/locations/`location`/entryGroups/`entry_group`/entries/`entry`.
3560
3942
  # Corresponds to the JSON property `name`
3561
3943
  # @return [String]
3562
3944
  attr_accessor :name
3563
3945
 
3564
- # Configuration for sessions created for this environment.
3565
- # Corresponds to the JSON property `sessionSpec`
3566
- # @return [Google::Apis::DataplexV1::GoogleCloudDataplexV1EnvironmentSessionSpec]
3946
+ # Optional. Immutable. The resource name of the parent entry.
3947
+ # Corresponds to the JSON property `parentEntry`
3948
+ # @return [String]
3949
+ attr_accessor :parent_entry
3950
+
3951
+ # Output only. The time when the Entry was last updated.
3952
+ # Corresponds to the JSON property `updateTime`
3953
+ # @return [String]
3954
+ attr_accessor :update_time
3955
+
3956
+ def initialize(**args)
3957
+ update!(**args)
3958
+ end
3959
+
3960
+ # Update properties of this object
3961
+ def update!(**args)
3962
+ @aspects = args[:aspects] if args.key?(:aspects)
3963
+ @create_time = args[:create_time] if args.key?(:create_time)
3964
+ @entry_source = args[:entry_source] if args.key?(:entry_source)
3965
+ @entry_type = args[:entry_type] if args.key?(:entry_type)
3966
+ @fully_qualified_name = args[:fully_qualified_name] if args.key?(:fully_qualified_name)
3967
+ @name = args[:name] if args.key?(:name)
3968
+ @parent_entry = args[:parent_entry] if args.key?(:parent_entry)
3969
+ @update_time = args[:update_time] if args.key?(:update_time)
3970
+ end
3971
+ end
3972
+
3973
+ # An Entry Group represents a logical grouping of one or more Entries.
3974
+ class GoogleCloudDataplexV1EntryGroup
3975
+ include Google::Apis::Core::Hashable
3976
+
3977
+ # Output only. The time when the EntryGroup was created.
3978
+ # Corresponds to the JSON property `createTime`
3979
+ # @return [String]
3980
+ attr_accessor :create_time
3981
+
3982
+ # Optional. Description of the EntryGroup.
3983
+ # Corresponds to the JSON property `description`
3984
+ # @return [String]
3985
+ attr_accessor :description
3986
+
3987
+ # Optional. User friendly display name.
3988
+ # Corresponds to the JSON property `displayName`
3989
+ # @return [String]
3990
+ attr_accessor :display_name
3991
+
3992
+ # This checksum is computed by the server based on the value of other fields,
3993
+ # and may be sent on update and delete requests to ensure the client has an up-
3994
+ # to-date value before proceeding.
3995
+ # Corresponds to the JSON property `etag`
3996
+ # @return [String]
3997
+ attr_accessor :etag
3998
+
3999
+ # Optional. User-defined labels for the EntryGroup.
4000
+ # Corresponds to the JSON property `labels`
4001
+ # @return [Hash<String,String>]
4002
+ attr_accessor :labels
4003
+
4004
+ # Output only. The relative resource name of the EntryGroup, of the form:
4005
+ # projects/`project_number`/locations/`location_id`/entryGroups/`entry_group_id`.
4006
+ # Corresponds to the JSON property `name`
4007
+ # @return [String]
4008
+ attr_accessor :name
4009
+
4010
+ # Output only. Denotes the transfer status of the Entry Group. It is unspecified
4011
+ # for Entry Group created from Dataplex API.
4012
+ # Corresponds to the JSON property `transferStatus`
4013
+ # @return [String]
4014
+ attr_accessor :transfer_status
4015
+
4016
+ # Output only. System generated globally unique ID for the EntryGroup. This ID
4017
+ # will be different if the EntryGroup is deleted and re-created with the same
4018
+ # name.
4019
+ # Corresponds to the JSON property `uid`
4020
+ # @return [String]
4021
+ attr_accessor :uid
4022
+
4023
+ # Output only. The time when the EntryGroup was last updated.
4024
+ # Corresponds to the JSON property `updateTime`
4025
+ # @return [String]
4026
+ attr_accessor :update_time
4027
+
4028
+ def initialize(**args)
4029
+ update!(**args)
4030
+ end
4031
+
4032
+ # Update properties of this object
4033
+ def update!(**args)
4034
+ @create_time = args[:create_time] if args.key?(:create_time)
4035
+ @description = args[:description] if args.key?(:description)
4036
+ @display_name = args[:display_name] if args.key?(:display_name)
4037
+ @etag = args[:etag] if args.key?(:etag)
4038
+ @labels = args[:labels] if args.key?(:labels)
4039
+ @name = args[:name] if args.key?(:name)
4040
+ @transfer_status = args[:transfer_status] if args.key?(:transfer_status)
4041
+ @uid = args[:uid] if args.key?(:uid)
4042
+ @update_time = args[:update_time] if args.key?(:update_time)
4043
+ end
4044
+ end
4045
+
4046
+ # EntrySource contains source system related information for the entry.
4047
+ class GoogleCloudDataplexV1EntrySource
4048
+ include Google::Apis::Core::Hashable
4049
+
4050
+ # Immutable. The ancestors of the Entry in the source system.
4051
+ # Corresponds to the JSON property `ancestors`
4052
+ # @return [Array<Google::Apis::DataplexV1::GoogleCloudDataplexV1EntrySourceAncestor>]
4053
+ attr_accessor :ancestors
4054
+
4055
+ # The create time of the resource in the source system.
4056
+ # Corresponds to the JSON property `createTime`
4057
+ # @return [String]
4058
+ attr_accessor :create_time
4059
+
4060
+ # Description of the Entry. The maximum size of the field is 2000 characters.
4061
+ # Corresponds to the JSON property `description`
4062
+ # @return [String]
4063
+ attr_accessor :description
4064
+
4065
+ # User friendly display name. The maximum size of the field is 500 characters.
4066
+ # Corresponds to the JSON property `displayName`
4067
+ # @return [String]
4068
+ attr_accessor :display_name
4069
+
4070
+ # User-defined labels. The maximum size of keys and values is 128 characters
4071
+ # each.
4072
+ # Corresponds to the JSON property `labels`
4073
+ # @return [Hash<String,String>]
4074
+ attr_accessor :labels
4075
+
4076
+ # The platform containing the source system. The maximum size of the field is 64
4077
+ # characters.
4078
+ # Corresponds to the JSON property `platform`
4079
+ # @return [String]
4080
+ attr_accessor :platform
4081
+
4082
+ # The name of the resource in the source system. The maximum size of the field
4083
+ # is 4000 characters.
4084
+ # Corresponds to the JSON property `resource`
4085
+ # @return [String]
4086
+ attr_accessor :resource
4087
+
4088
+ # The name of the source system. The maximum size of the field is 64 characters.
4089
+ # Corresponds to the JSON property `system`
4090
+ # @return [String]
4091
+ attr_accessor :system
4092
+
4093
+ # The update time of the resource in the source system.
4094
+ # Corresponds to the JSON property `updateTime`
4095
+ # @return [String]
4096
+ attr_accessor :update_time
4097
+
4098
+ def initialize(**args)
4099
+ update!(**args)
4100
+ end
4101
+
4102
+ # Update properties of this object
4103
+ def update!(**args)
4104
+ @ancestors = args[:ancestors] if args.key?(:ancestors)
4105
+ @create_time = args[:create_time] if args.key?(:create_time)
4106
+ @description = args[:description] if args.key?(:description)
4107
+ @display_name = args[:display_name] if args.key?(:display_name)
4108
+ @labels = args[:labels] if args.key?(:labels)
4109
+ @platform = args[:platform] if args.key?(:platform)
4110
+ @resource = args[:resource] if args.key?(:resource)
4111
+ @system = args[:system] if args.key?(:system)
4112
+ @update_time = args[:update_time] if args.key?(:update_time)
4113
+ end
4114
+ end
4115
+
4116
+ # Ancestor contains information about individual items in the hierarchy of an
4117
+ # Entry.
4118
+ class GoogleCloudDataplexV1EntrySourceAncestor
4119
+ include Google::Apis::Core::Hashable
4120
+
4121
+ # Optional. The name of the ancestor resource.
4122
+ # Corresponds to the JSON property `name`
4123
+ # @return [String]
4124
+ attr_accessor :name
4125
+
4126
+ # Optional. The type of the ancestor resource.
4127
+ # Corresponds to the JSON property `type`
4128
+ # @return [String]
4129
+ attr_accessor :type
4130
+
4131
+ def initialize(**args)
4132
+ update!(**args)
4133
+ end
4134
+
4135
+ # Update properties of this object
4136
+ def update!(**args)
4137
+ @name = args[:name] if args.key?(:name)
4138
+ @type = args[:type] if args.key?(:type)
4139
+ end
4140
+ end
4141
+
4142
+ # Entry Type is a template for creating Entries.
4143
+ class GoogleCloudDataplexV1EntryType
4144
+ include Google::Apis::Core::Hashable
4145
+
4146
+ # Authorization for an Entry Type.
4147
+ # Corresponds to the JSON property `authorization`
4148
+ # @return [Google::Apis::DataplexV1::GoogleCloudDataplexV1EntryTypeAuthorization]
4149
+ attr_accessor :authorization
4150
+
4151
+ # Output only. The time when the EntryType was created.
4152
+ # Corresponds to the JSON property `createTime`
4153
+ # @return [String]
4154
+ attr_accessor :create_time
4155
+
4156
+ # Optional. Description of the EntryType.
4157
+ # Corresponds to the JSON property `description`
4158
+ # @return [String]
4159
+ attr_accessor :description
4160
+
4161
+ # Optional. User friendly display name.
4162
+ # Corresponds to the JSON property `displayName`
4163
+ # @return [String]
4164
+ attr_accessor :display_name
4165
+
4166
+ # Optional. This checksum is computed by the server based on the value of other
4167
+ # fields, and may be sent on update and delete requests to ensure the client has
4168
+ # an up-to-date value before proceeding.
4169
+ # Corresponds to the JSON property `etag`
4170
+ # @return [String]
4171
+ attr_accessor :etag
4172
+
4173
+ # Optional. User-defined labels for the EntryType.
4174
+ # Corresponds to the JSON property `labels`
4175
+ # @return [Hash<String,String>]
4176
+ attr_accessor :labels
4177
+
4178
+ # Output only. The relative resource name of the EntryType, of the form:
4179
+ # projects/`project_number`/locations/`location_id`/entryTypes/`entry_type_id`.
4180
+ # Corresponds to the JSON property `name`
4181
+ # @return [String]
4182
+ attr_accessor :name
4183
+
4184
+ # Optional. The platform that Entries of this type belongs to.
4185
+ # Corresponds to the JSON property `platform`
4186
+ # @return [String]
4187
+ attr_accessor :platform
4188
+
4189
+ # AspectInfo for the entry type.
4190
+ # Corresponds to the JSON property `requiredAspects`
4191
+ # @return [Array<Google::Apis::DataplexV1::GoogleCloudDataplexV1EntryTypeAspectInfo>]
4192
+ attr_accessor :required_aspects
4193
+
4194
+ # Optional. The system that Entries of this type belongs to. Examples include
4195
+ # CloudSQL, MariaDB etc
4196
+ # Corresponds to the JSON property `system`
4197
+ # @return [String]
4198
+ attr_accessor :system
4199
+
4200
+ # Optional. Indicates the class this Entry Type belongs to, for example, TABLE,
4201
+ # DATABASE, MODEL.
4202
+ # Corresponds to the JSON property `typeAliases`
4203
+ # @return [Array<String>]
4204
+ attr_accessor :type_aliases
4205
+
4206
+ # Output only. System generated globally unique ID for the EntryType. This ID
4207
+ # will be different if the EntryType is deleted and re-created with the same
4208
+ # name.
4209
+ # Corresponds to the JSON property `uid`
4210
+ # @return [String]
4211
+ attr_accessor :uid
4212
+
4213
+ # Output only. The time when the EntryType was last updated.
4214
+ # Corresponds to the JSON property `updateTime`
4215
+ # @return [String]
4216
+ attr_accessor :update_time
4217
+
4218
+ def initialize(**args)
4219
+ update!(**args)
4220
+ end
4221
+
4222
+ # Update properties of this object
4223
+ def update!(**args)
4224
+ @authorization = args[:authorization] if args.key?(:authorization)
4225
+ @create_time = args[:create_time] if args.key?(:create_time)
4226
+ @description = args[:description] if args.key?(:description)
4227
+ @display_name = args[:display_name] if args.key?(:display_name)
4228
+ @etag = args[:etag] if args.key?(:etag)
4229
+ @labels = args[:labels] if args.key?(:labels)
4230
+ @name = args[:name] if args.key?(:name)
4231
+ @platform = args[:platform] if args.key?(:platform)
4232
+ @required_aspects = args[:required_aspects] if args.key?(:required_aspects)
4233
+ @system = args[:system] if args.key?(:system)
4234
+ @type_aliases = args[:type_aliases] if args.key?(:type_aliases)
4235
+ @uid = args[:uid] if args.key?(:uid)
4236
+ @update_time = args[:update_time] if args.key?(:update_time)
4237
+ end
4238
+ end
4239
+
4240
+ #
4241
+ class GoogleCloudDataplexV1EntryTypeAspectInfo
4242
+ include Google::Apis::Core::Hashable
4243
+
4244
+ # Required aspect type for the entry type.
4245
+ # Corresponds to the JSON property `type`
4246
+ # @return [String]
4247
+ attr_accessor :type
4248
+
4249
+ def initialize(**args)
4250
+ update!(**args)
4251
+ end
4252
+
4253
+ # Update properties of this object
4254
+ def update!(**args)
4255
+ @type = args[:type] if args.key?(:type)
4256
+ end
4257
+ end
4258
+
4259
+ # Authorization for an Entry Type.
4260
+ class GoogleCloudDataplexV1EntryTypeAuthorization
4261
+ include Google::Apis::Core::Hashable
4262
+
4263
+ # Immutable. The IAM permission grantable on the Entry Group to allow access to
4264
+ # instantiate Entries of Dataplex owned Entry Types, only settable for Dataplex
4265
+ # owned Types.
4266
+ # Corresponds to the JSON property `alternateUsePermission`
4267
+ # @return [String]
4268
+ attr_accessor :alternate_use_permission
4269
+
4270
+ def initialize(**args)
4271
+ update!(**args)
4272
+ end
4273
+
4274
+ # Update properties of this object
4275
+ def update!(**args)
4276
+ @alternate_use_permission = args[:alternate_use_permission] if args.key?(:alternate_use_permission)
4277
+ end
4278
+ end
4279
+
4280
+ # Environment represents a user-visible compute infrastructure for analytics
4281
+ # within a lake.
4282
+ class GoogleCloudDataplexV1Environment
4283
+ include Google::Apis::Core::Hashable
4284
+
4285
+ # Output only. Environment creation time.
4286
+ # Corresponds to the JSON property `createTime`
4287
+ # @return [String]
4288
+ attr_accessor :create_time
4289
+
4290
+ # Optional. Description of the environment.
4291
+ # Corresponds to the JSON property `description`
4292
+ # @return [String]
4293
+ attr_accessor :description
4294
+
4295
+ # Optional. User friendly display name.
4296
+ # Corresponds to the JSON property `displayName`
4297
+ # @return [String]
4298
+ attr_accessor :display_name
4299
+
4300
+ # URI Endpoints to access sessions associated with the Environment.
4301
+ # Corresponds to the JSON property `endpoints`
4302
+ # @return [Google::Apis::DataplexV1::GoogleCloudDataplexV1EnvironmentEndpoints]
4303
+ attr_accessor :endpoints
4304
+
4305
+ # Configuration for the underlying infrastructure used to run workloads.
4306
+ # Corresponds to the JSON property `infrastructureSpec`
4307
+ # @return [Google::Apis::DataplexV1::GoogleCloudDataplexV1EnvironmentInfrastructureSpec]
4308
+ attr_accessor :infrastructure_spec
4309
+
4310
+ # Optional. User defined labels for the environment.
4311
+ # Corresponds to the JSON property `labels`
4312
+ # @return [Hash<String,String>]
4313
+ attr_accessor :labels
4314
+
4315
+ # Output only. The relative resource name of the environment, of the form:
4316
+ # projects/`project_id`/locations/`location_id`/lakes/`lake_id`/environment/`
4317
+ # environment_id`
4318
+ # Corresponds to the JSON property `name`
4319
+ # @return [String]
4320
+ attr_accessor :name
4321
+
4322
+ # Configuration for sessions created for this environment.
4323
+ # Corresponds to the JSON property `sessionSpec`
4324
+ # @return [Google::Apis::DataplexV1::GoogleCloudDataplexV1EnvironmentSessionSpec]
3567
4325
  attr_accessor :session_spec
3568
4326
 
3569
4327
  # Status of sessions created for this environment.
@@ -3786,6 +4544,38 @@ module Google
3786
4544
  end
3787
4545
  end
3788
4546
 
4547
+ # Generate recommended DataQualityRules request.
4548
+ class GoogleCloudDataplexV1GenerateDataQualityRulesRequest
4549
+ include Google::Apis::Core::Hashable
4550
+
4551
+ def initialize(**args)
4552
+ update!(**args)
4553
+ end
4554
+
4555
+ # Update properties of this object
4556
+ def update!(**args)
4557
+ end
4558
+ end
4559
+
4560
+ # Generate recommended DataQualityRules response.
4561
+ class GoogleCloudDataplexV1GenerateDataQualityRulesResponse
4562
+ include Google::Apis::Core::Hashable
4563
+
4564
+ # Generated recommended `@link DataQualityRule`s.
4565
+ # Corresponds to the JSON property `rule`
4566
+ # @return [Array<Google::Apis::DataplexV1::GoogleCloudDataplexV1DataQualityRule>]
4567
+ attr_accessor :rule
4568
+
4569
+ def initialize(**args)
4570
+ update!(**args)
4571
+ end
4572
+
4573
+ # Update properties of this object
4574
+ def update!(**args)
4575
+ @rule = args[:rule] if args.key?(:rule)
4576
+ end
4577
+ end
4578
+
3789
4579
  # Payload associated with Governance related log events.
3790
4580
  class GoogleCloudDataplexV1GovernanceEvent
3791
4581
  include Google::Apis::Core::Hashable
@@ -4185,6 +4975,38 @@ module Google
4185
4975
  end
4186
4976
  end
4187
4977
 
4978
+ # List AspectTypes response
4979
+ class GoogleCloudDataplexV1ListAspectTypesResponse
4980
+ include Google::Apis::Core::Hashable
4981
+
4982
+ # ListAspectTypes under the given parent location.
4983
+ # Corresponds to the JSON property `aspectTypes`
4984
+ # @return [Array<Google::Apis::DataplexV1::GoogleCloudDataplexV1AspectType>]
4985
+ attr_accessor :aspect_types
4986
+
4987
+ # Token to retrieve the next page of results, or empty if there are no more
4988
+ # results in the list.
4989
+ # Corresponds to the JSON property `nextPageToken`
4990
+ # @return [String]
4991
+ attr_accessor :next_page_token
4992
+
4993
+ # Locations that could not be reached.
4994
+ # Corresponds to the JSON property `unreachableLocations`
4995
+ # @return [Array<String>]
4996
+ attr_accessor :unreachable_locations
4997
+
4998
+ def initialize(**args)
4999
+ update!(**args)
5000
+ end
5001
+
5002
+ # Update properties of this object
5003
+ def update!(**args)
5004
+ @aspect_types = args[:aspect_types] if args.key?(:aspect_types)
5005
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
5006
+ @unreachable_locations = args[:unreachable_locations] if args.key?(:unreachable_locations)
5007
+ end
5008
+ end
5009
+
4188
5010
  # List assets response.
4189
5011
  class GoogleCloudDataplexV1ListAssetsResponse
4190
5012
  include Google::Apis::Core::Hashable
@@ -4417,6 +5239,95 @@ module Google
4417
5239
  end
4418
5240
  end
4419
5241
 
5242
+ #
5243
+ class GoogleCloudDataplexV1ListEntriesResponse
5244
+ include Google::Apis::Core::Hashable
5245
+
5246
+ # The list of entries.
5247
+ # Corresponds to the JSON property `entries`
5248
+ # @return [Array<Google::Apis::DataplexV1::GoogleCloudDataplexV1Entry>]
5249
+ attr_accessor :entries
5250
+
5251
+ # Pagination token.
5252
+ # Corresponds to the JSON property `nextPageToken`
5253
+ # @return [String]
5254
+ attr_accessor :next_page_token
5255
+
5256
+ def initialize(**args)
5257
+ update!(**args)
5258
+ end
5259
+
5260
+ # Update properties of this object
5261
+ def update!(**args)
5262
+ @entries = args[:entries] if args.key?(:entries)
5263
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
5264
+ end
5265
+ end
5266
+
5267
+ # List ListEntryGroups response.
5268
+ class GoogleCloudDataplexV1ListEntryGroupsResponse
5269
+ include Google::Apis::Core::Hashable
5270
+
5271
+ # ListEntryGroups under the given parent location.
5272
+ # Corresponds to the JSON property `entryGroups`
5273
+ # @return [Array<Google::Apis::DataplexV1::GoogleCloudDataplexV1EntryGroup>]
5274
+ attr_accessor :entry_groups
5275
+
5276
+ # Token to retrieve the next page of results, or empty if there are no more
5277
+ # results in the list.
5278
+ # Corresponds to the JSON property `nextPageToken`
5279
+ # @return [String]
5280
+ attr_accessor :next_page_token
5281
+
5282
+ # Locations that could not be reached.
5283
+ # Corresponds to the JSON property `unreachableLocations`
5284
+ # @return [Array<String>]
5285
+ attr_accessor :unreachable_locations
5286
+
5287
+ def initialize(**args)
5288
+ update!(**args)
5289
+ end
5290
+
5291
+ # Update properties of this object
5292
+ def update!(**args)
5293
+ @entry_groups = args[:entry_groups] if args.key?(:entry_groups)
5294
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
5295
+ @unreachable_locations = args[:unreachable_locations] if args.key?(:unreachable_locations)
5296
+ end
5297
+ end
5298
+
5299
+ # List EntryTypes response
5300
+ class GoogleCloudDataplexV1ListEntryTypesResponse
5301
+ include Google::Apis::Core::Hashable
5302
+
5303
+ # ListEntryTypes under the given parent location.
5304
+ # Corresponds to the JSON property `entryTypes`
5305
+ # @return [Array<Google::Apis::DataplexV1::GoogleCloudDataplexV1EntryType>]
5306
+ attr_accessor :entry_types
5307
+
5308
+ # Token to retrieve the next page of results, or empty if there are no more
5309
+ # results in the list.
5310
+ # Corresponds to the JSON property `nextPageToken`
5311
+ # @return [String]
5312
+ attr_accessor :next_page_token
5313
+
5314
+ # Locations that could not be reached.
5315
+ # Corresponds to the JSON property `unreachableLocations`
5316
+ # @return [Array<String>]
5317
+ attr_accessor :unreachable_locations
5318
+
5319
+ def initialize(**args)
5320
+ update!(**args)
5321
+ end
5322
+
5323
+ # Update properties of this object
5324
+ def update!(**args)
5325
+ @entry_types = args[:entry_types] if args.key?(:entry_types)
5326
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
5327
+ @unreachable_locations = args[:unreachable_locations] if args.key?(:unreachable_locations)
5328
+ end
5329
+ end
5330
+
4420
5331
  # List environments response.
4421
5332
  class GoogleCloudDataplexV1ListEnvironmentsResponse
4422
5333
  include Google::Apis::Core::Hashable
@@ -5009,6 +5920,139 @@ module Google
5009
5920
  end
5010
5921
  end
5011
5922
 
5923
+ #
5924
+ class GoogleCloudDataplexV1SearchEntriesResponse
5925
+ include Google::Apis::Core::Hashable
5926
+
5927
+ # Pagination token.
5928
+ # Corresponds to the JSON property `nextPageToken`
5929
+ # @return [String]
5930
+ attr_accessor :next_page_token
5931
+
5932
+ # The results matching the search query.
5933
+ # Corresponds to the JSON property `results`
5934
+ # @return [Array<Google::Apis::DataplexV1::GoogleCloudDataplexV1SearchEntriesResult>]
5935
+ attr_accessor :results
5936
+
5937
+ # The estimated total number of matching entries. Not guaranteed to be accurate.
5938
+ # Corresponds to the JSON property `totalSize`
5939
+ # @return [Fixnum]
5940
+ attr_accessor :total_size
5941
+
5942
+ # Unreachable locations. Search results don't include data from those locations.
5943
+ # Corresponds to the JSON property `unreachable`
5944
+ # @return [Array<String>]
5945
+ attr_accessor :unreachable
5946
+
5947
+ def initialize(**args)
5948
+ update!(**args)
5949
+ end
5950
+
5951
+ # Update properties of this object
5952
+ def update!(**args)
5953
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
5954
+ @results = args[:results] if args.key?(:results)
5955
+ @total_size = args[:total_size] if args.key?(:total_size)
5956
+ @unreachable = args[:unreachable] if args.key?(:unreachable)
5957
+ end
5958
+ end
5959
+
5960
+ # A single result of a SearchEntries request.
5961
+ class GoogleCloudDataplexV1SearchEntriesResult
5962
+ include Google::Apis::Core::Hashable
5963
+
5964
+ # An entry is a representation of a data asset which can be described by various
5965
+ # metadata.
5966
+ # Corresponds to the JSON property `dataplexEntry`
5967
+ # @return [Google::Apis::DataplexV1::GoogleCloudDataplexV1Entry]
5968
+ attr_accessor :dataplex_entry
5969
+
5970
+ # Entry description.
5971
+ # Corresponds to the JSON property `description`
5972
+ # @return [String]
5973
+ attr_accessor :description
5974
+
5975
+ # Display name.
5976
+ # Corresponds to the JSON property `displayName`
5977
+ # @return [String]
5978
+ attr_accessor :display_name
5979
+
5980
+ # Resource name of the entry.
5981
+ # Corresponds to the JSON property `entry`
5982
+ # @return [String]
5983
+ attr_accessor :entry
5984
+
5985
+ # The entry type.
5986
+ # Corresponds to the JSON property `entryType`
5987
+ # @return [String]
5988
+ attr_accessor :entry_type
5989
+
5990
+ # Fully qualified name.
5991
+ # Corresponds to the JSON property `fullyQualifiedName`
5992
+ # @return [String]
5993
+ attr_accessor :fully_qualified_name
5994
+
5995
+ # Linked resource name.
5996
+ # Corresponds to the JSON property `linkedResource`
5997
+ # @return [String]
5998
+ attr_accessor :linked_resource
5999
+
6000
+ # The last modification timestamp.
6001
+ # Corresponds to the JSON property `modifyTime`
6002
+ # @return [String]
6003
+ attr_accessor :modify_time
6004
+
6005
+ # Relative resource name.
6006
+ # Corresponds to the JSON property `relativeResource`
6007
+ # @return [String]
6008
+ attr_accessor :relative_resource
6009
+
6010
+ # Snippets for the entry, contains HTML-style highlighting for matched tokens,
6011
+ # will be used in UI.
6012
+ # Corresponds to the JSON property `snippets`
6013
+ # @return [Google::Apis::DataplexV1::GoogleCloudDataplexV1SearchEntriesResultSnippets]
6014
+ attr_accessor :snippets
6015
+
6016
+ def initialize(**args)
6017
+ update!(**args)
6018
+ end
6019
+
6020
+ # Update properties of this object
6021
+ def update!(**args)
6022
+ @dataplex_entry = args[:dataplex_entry] if args.key?(:dataplex_entry)
6023
+ @description = args[:description] if args.key?(:description)
6024
+ @display_name = args[:display_name] if args.key?(:display_name)
6025
+ @entry = args[:entry] if args.key?(:entry)
6026
+ @entry_type = args[:entry_type] if args.key?(:entry_type)
6027
+ @fully_qualified_name = args[:fully_qualified_name] if args.key?(:fully_qualified_name)
6028
+ @linked_resource = args[:linked_resource] if args.key?(:linked_resource)
6029
+ @modify_time = args[:modify_time] if args.key?(:modify_time)
6030
+ @relative_resource = args[:relative_resource] if args.key?(:relative_resource)
6031
+ @snippets = args[:snippets] if args.key?(:snippets)
6032
+ end
6033
+ end
6034
+
6035
+ # Snippets for the entry, contains HTML-style highlighting for matched tokens,
6036
+ # will be used in UI.
6037
+ class GoogleCloudDataplexV1SearchEntriesResultSnippets
6038
+ include Google::Apis::Core::Hashable
6039
+
6040
+ # An entry is a representation of a data asset which can be described by various
6041
+ # metadata.
6042
+ # Corresponds to the JSON property `dataplexEntry`
6043
+ # @return [Google::Apis::DataplexV1::GoogleCloudDataplexV1Entry]
6044
+ attr_accessor :dataplex_entry
6045
+
6046
+ def initialize(**args)
6047
+ update!(**args)
6048
+ end
6049
+
6050
+ # Update properties of this object
6051
+ def update!(**args)
6052
+ @dataplex_entry = args[:dataplex_entry] if args.key?(:dataplex_entry)
6053
+ end
6054
+ end
6055
+
5012
6056
  # Represents an active analyze session running for a user.
5013
6057
  class GoogleCloudDataplexV1Session
5014
6058
  include Google::Apis::Core::Hashable