Class: Google::Apis::DatacatalogV1::GoogleCloudDatacatalogV1Entry

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

Overview

Entry metadata. A Data Catalog entry represents another resource in Google Cloud Platform (such as a BigQuery dataset or a Pub/Sub topic) or outside of it. You can use the linked_resource field in the entry resource to refer to the original resource ID of the source system. An entry resource contains resource details, for example, its schema. Additionally, you can attach flexible metadata to an entry in the form of a Tag.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ GoogleCloudDatacatalogV1Entry

Returns a new instance of GoogleCloudDatacatalogV1Entry.



559
560
561
# File 'lib/google/apis/datacatalog_v1/classes.rb', line 559

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

Instance Attribute Details

#bigquery_date_sharded_specGoogle::Apis::DatacatalogV1::GoogleCloudDatacatalogV1BigQueryDateShardedSpec

Specification for a group of BigQuery tables with the [prefix]YYYYMMDD name pattern. For more information, see Introduction to partitioned tables. Corresponds to the JSON property bigqueryDateShardedSpec



429
430
431
# File 'lib/google/apis/datacatalog_v1/classes.rb', line 429

def bigquery_date_sharded_spec
  @bigquery_date_sharded_spec
end

#bigquery_table_specGoogle::Apis::DatacatalogV1::GoogleCloudDatacatalogV1BigQueryTableSpec

Describes a BigQuery table. Corresponds to the JSON property bigqueryTableSpec



434
435
436
# File 'lib/google/apis/datacatalog_v1/classes.rb', line 434

def bigquery_table_spec
  @bigquery_table_spec
end

#data_sourceGoogle::Apis::DatacatalogV1::GoogleCloudDatacatalogV1DataSource

Physical location of an entry. Corresponds to the JSON property dataSource



439
440
441
# File 'lib/google/apis/datacatalog_v1/classes.rb', line 439

def data_source
  @data_source
end

#database_table_specGoogle::Apis::DatacatalogV1::GoogleCloudDatacatalogV1DatabaseTableSpec

Specification that applies to a table resource. Valid only for entries with the TABLE type. Corresponds to the JSON property databaseTableSpec



445
446
447
# File 'lib/google/apis/datacatalog_v1/classes.rb', line 445

def database_table_spec
  @database_table_spec
end

#descriptionString

Entry description that can consist of several sentences or paragraphs that describe entry contents. The description must not contain Unicode non- characters as well as C0 and C1 control codes except tabs (HT), new lines (LF), carriage returns (CR), and page breaks (FF). The maximum size is 2000 bytes when encoded in UTF-8. Default value is an empty string. Corresponds to the JSON property description

Returns:

  • (String)


454
455
456
# File 'lib/google/apis/datacatalog_v1/classes.rb', line 454

def description
  @description
end

#display_nameString

Display name of an entry. The name must contain only Unicode letters, numbers ( 0-9), underscores (_), dashes (-), spaces ( ), and can't start or end with spaces. The maximum size is 200 bytes when encoded in UTF-8. Default value is an empty string. Corresponds to the JSON property displayName

Returns:

  • (String)


462
463
464
# File 'lib/google/apis/datacatalog_v1/classes.rb', line 462

def display_name
  @display_name
end

#fully_qualified_nameString

Fully qualified name (FQN) of the resource. Set automatically for entries representing resources from synced systems. Settable only during creation and read-only afterwards. Can be used for search and lookup of the entries. FQNs take two forms: * For non-regionalized resources: SYSTEM`:`PROJECT`.` PATH_TO_RESOURCE_SEPARATED_WITH_DOTS * For regionalized resources: SYSTEM`: `PROJECT`.`LOCATION_ID`.`PATH_TO_RESOURCE_SEPARATED_WITH_DOTS Example for a DPMS table: dataproc_metastore:PROJECT_ID.LOCATION_ID.INSTANCE_ID. DATABASE_ID.TABLE_ID` Corresponds to the JSON propertyfullyQualifiedName`

Returns:

  • (String)


474
475
476
# File 'lib/google/apis/datacatalog_v1/classes.rb', line 474

def fully_qualified_name
  @fully_qualified_name
end

#gcs_fileset_specGoogle::Apis::DatacatalogV1::GoogleCloudDatacatalogV1GcsFilesetSpec

Describes a Cloud Storage fileset entry. Corresponds to the JSON property gcsFilesetSpec



479
480
481
# File 'lib/google/apis/datacatalog_v1/classes.rb', line 479

def gcs_fileset_spec
  @gcs_fileset_spec
end

#integrated_systemString

Output only. Indicates the entry's source system that Data Catalog integrates with, such as BigQuery, Pub/Sub, or Dataproc Metastore. Corresponds to the JSON property integratedSystem

Returns:

  • (String)


485
486
487
# File 'lib/google/apis/datacatalog_v1/classes.rb', line 485

def integrated_system
  @integrated_system
end

#linked_resourceString

The resource this metadata entry refers to. For Google Cloud Platform resources, linked_resource is the Full Resource Name. For example, the linked_resource for a table resource from BigQuery is: //bigquery.googleapis. com/projects/PROJECT_ID/datasets/DATASET_ID/tables/TABLE_ID`Output only when the entry is one of the types in theEntryTypeenum. For entries with a user_specified_type`, this field is optional and defaults to an empty string. The resource string must contain only letters (a-z, A-Z), numbers (0-9), underscores (_), periods (.), colons (:), slashes (/), dashes (-), and hashes (

). The maximum size is 200 bytes when encoded in UTF-8.

Corresponds to the JSON property linkedResource

Returns:

  • (String)


499
500
501
# File 'lib/google/apis/datacatalog_v1/classes.rb', line 499

def linked_resource
  @linked_resource
end

#nameString

Output only. The resource name of an entry in URL format. Note: The entry itself and its child resources might not be stored in the location specified in its name. Corresponds to the JSON property name

Returns:

  • (String)


506
507
508
# File 'lib/google/apis/datacatalog_v1/classes.rb', line 506

def name
  @name
end

#routine_specGoogle::Apis::DatacatalogV1::GoogleCloudDatacatalogV1RoutineSpec

Specification that applies to a routine. Valid only for entries with the ROUTINE type. Corresponds to the JSON property routineSpec



512
513
514
# File 'lib/google/apis/datacatalog_v1/classes.rb', line 512

def routine_spec
  @routine_spec
end

#schemaGoogle::Apis::DatacatalogV1::GoogleCloudDatacatalogV1Schema

Represents a schema, for example, a BigQuery, GoogleSQL, or Avro schema. Corresponds to the JSON property schema



517
518
519
# File 'lib/google/apis/datacatalog_v1/classes.rb', line 517

def schema
  @schema
end

#source_system_timestampsGoogle::Apis::DatacatalogV1::GoogleCloudDatacatalogV1SystemTimestamps

Timestamps associated with this resource in a particular system. Corresponds to the JSON property sourceSystemTimestamps



522
523
524
# File 'lib/google/apis/datacatalog_v1/classes.rb', line 522

def source_system_timestamps
  @source_system_timestamps
end

#typeString

The type of the entry. Only used for entries with types listed in the EntryType enum. Currently, only FILESET enum value is allowed. All other entries created in Data Catalog must use the user_specified_type. Corresponds to the JSON property type

Returns:

  • (String)


529
530
531
# File 'lib/google/apis/datacatalog_v1/classes.rb', line 529

def type
  @type
end

#usage_signalGoogle::Apis::DatacatalogV1::GoogleCloudDatacatalogV1UsageSignal

The set of all usage signals that Data Catalog stores. Note: Usually, these signals are updated daily. In rare cases, an update may fail but will be performed again on the next day. Corresponds to the JSON property usageSignal



536
537
538
# File 'lib/google/apis/datacatalog_v1/classes.rb', line 536

def usage_signal
  @usage_signal
end

#user_specified_systemString

Indicates the entry's source system that Data Catalog doesn't automatically integrate with. The user_specified_system string has the following limitations: * Is case insensitive. * Must begin with a letter or underscore. * Can only contain letters, numbers, and underscores. * Must be at least 1 character and at most 64 characters long. Corresponds to the JSON property userSpecifiedSystem

Returns:

  • (String)


545
546
547
# File 'lib/google/apis/datacatalog_v1/classes.rb', line 545

def user_specified_system
  @user_specified_system
end

#user_specified_typeString

Custom entry type that doesn't match any of the values allowed for input and listed in the EntryType enum. When creating an entry, first check the type values in the enum. If there are no appropriate types for the new entry, provide a custom value, for example, my_special_type. The user_specified_type string has the following limitations: * Is case insensitive. * Must begin with a letter or underscore. * Can only contain letters, numbers, and underscores. * Must be at least 1 character and at most 64 characters long. Corresponds to the JSON property userSpecifiedType

Returns:

  • (String)


557
558
559
# File 'lib/google/apis/datacatalog_v1/classes.rb', line 557

def user_specified_type
  @user_specified_type
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
# File 'lib/google/apis/datacatalog_v1/classes.rb', line 564

def update!(**args)
  @bigquery_date_sharded_spec = args[:bigquery_date_sharded_spec] if args.key?(:bigquery_date_sharded_spec)
  @bigquery_table_spec = args[:bigquery_table_spec] if args.key?(:bigquery_table_spec)
  @data_source = args[:data_source] if args.key?(:data_source)
  @database_table_spec = args[:database_table_spec] if args.key?(:database_table_spec)
  @description = args[:description] if args.key?(:description)
  @display_name = args[:display_name] if args.key?(:display_name)
  @fully_qualified_name = args[:fully_qualified_name] if args.key?(:fully_qualified_name)
  @gcs_fileset_spec = args[:gcs_fileset_spec] if args.key?(:gcs_fileset_spec)
  @integrated_system = args[:integrated_system] if args.key?(:integrated_system)
  @linked_resource = args[:linked_resource] if args.key?(:linked_resource)
  @name = args[:name] if args.key?(:name)
  @routine_spec = args[:routine_spec] if args.key?(:routine_spec)
  @schema = args[:schema] if args.key?(:schema)
  @source_system_timestamps = args[:source_system_timestamps] if args.key?(:source_system_timestamps)
  @type = args[:type] if args.key?(:type)
  @usage_signal = args[:usage_signal] if args.key?(:usage_signal)
  @user_specified_system = args[:user_specified_system] if args.key?(:user_specified_system)
  @user_specified_type = args[:user_specified_type] if args.key?(:user_specified_type)
end