Class: Google::Apis::DataplexV1::GoogleCloudDataplexV1DataProduct

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

Overview

A data product is a curated collection of data assets, packaged to address specific use cases. It's a way to manage and share data in a more organized, product-like manner.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ GoogleCloudDataplexV1DataProduct

Returns a new instance of GoogleCloudDataplexV1DataProduct.



2714
2715
2716
# File 'lib/google/apis/dataplex_v1/classes.rb', line 2714

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

Instance Attribute Details

#access_approval_configGoogle::Apis::DataplexV1::GoogleCloudDataplexV1DataProductAccessApprovalConfig

Configuration for access approval for the data product. Corresponds to the JSON property accessApprovalConfig



2637
2638
2639
# File 'lib/google/apis/dataplex_v1/classes.rb', line 2637

def access_approval_config
  @access_approval_config
end

#access_groupsHash<String,Google::Apis::DataplexV1::GoogleCloudDataplexV1DataProductAccessGroup>

Optional. Data product access groups by access group id as key. If data product is used only for packaging data assets, then access groups may be empty. However, if a data product is used for sharing data assets, then at least one access group must be specified.Example: "analyst": "id": " analyst", "displayName": "Analyst", "description": "Access group for analysts", "principal": "googleGroup": "analysts@example.com" Corresponds to the JSON property accessGroups



2647
2648
2649
# File 'lib/google/apis/dataplex_v1/classes.rb', line 2647

def access_groups
  @access_groups
end

#asset_countFixnum

Output only. Number of data assets associated with this data product. Corresponds to the JSON property assetCount

Returns:

  • (Fixnum)


2652
2653
2654
# File 'lib/google/apis/dataplex_v1/classes.rb', line 2652

def asset_count
  @asset_count
end

#create_timeString

Output only. The time at which the data product was created. Corresponds to the JSON property createTime

Returns:

  • (String)


2657
2658
2659
# File 'lib/google/apis/dataplex_v1/classes.rb', line 2657

def create_time
  @create_time
end

#descriptionString

Optional. Description of the data product. Corresponds to the JSON property description

Returns:

  • (String)


2662
2663
2664
# File 'lib/google/apis/dataplex_v1/classes.rb', line 2662

def description
  @description
end

#display_nameString

Required. User-friendly display name of the data product. Corresponds to the JSON property displayName

Returns:

  • (String)


2667
2668
2669
# File 'lib/google/apis/dataplex_v1/classes.rb', line 2667

def display_name
  @display_name
end

#etagString

Optional. This checksum is computed by the server based on the value of other fields, and may be sent on update and delete requests to ensure the client has an up-to-date value before proceeding. Corresponds to the JSON property etag

Returns:

  • (String)


2674
2675
2676
# File 'lib/google/apis/dataplex_v1/classes.rb', line 2674

def etag
  @etag
end

#iconString

Optional. Base64 encoded image representing the data product. Max Size: 3.0MiB Expected image dimensions are 512x512 pixels, however the API only performs validation on size of the encoded data. Note: For byte fields, the content of the fields are base64-encoded (which increases the size of the data by 33-36%) when using JSON on the wire. Corresponds to the JSON property icon NOTE: Values are automatically base64 encoded/decoded in the client library.

Returns:

  • (String)


2684
2685
2686
# File 'lib/google/apis/dataplex_v1/classes.rb', line 2684

def icon
  @icon
end

#labelsHash<String,String>

Optional. User-defined labels for the data product.Example: "environment": " production", "billing": "marketing-department" Corresponds to the JSON property labels

Returns:

  • (Hash<String,String>)


2690
2691
2692
# File 'lib/google/apis/dataplex_v1/classes.rb', line 2690

def labels
  @labels
end

#nameString

Identifier. Resource name of the data product. Format: projects/ project_id_or_number/locations/location_id/dataProducts/data_product_id. Corresponds to the JSON property name

Returns:

  • (String)


2696
2697
2698
# File 'lib/google/apis/dataplex_v1/classes.rb', line 2696

def name
  @name
end

#owner_emailsArray<String>

Required. Emails of the data product owners. Corresponds to the JSON property ownerEmails

Returns:

  • (Array<String>)


2701
2702
2703
# File 'lib/google/apis/dataplex_v1/classes.rb', line 2701

def owner_emails
  @owner_emails
end

#uidString

Output only. System generated unique ID for the data product. This ID will be different if the data product is deleted and re-created with the same name. Corresponds to the JSON property uid

Returns:

  • (String)


2707
2708
2709
# File 'lib/google/apis/dataplex_v1/classes.rb', line 2707

def uid
  @uid
end

#update_timeString

Output only. The time at which the data product was last updated. Corresponds to the JSON property updateTime

Returns:

  • (String)


2712
2713
2714
# File 'lib/google/apis/dataplex_v1/classes.rb', line 2712

def update_time
  @update_time
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



2719
2720
2721
2722
2723
2724
2725
2726
2727
2728
2729
2730
2731
2732
2733
# File 'lib/google/apis/dataplex_v1/classes.rb', line 2719

def update!(**args)
  @access_approval_config = args[:access_approval_config] if args.key?(:access_approval_config)
  @access_groups = args[:access_groups] if args.key?(:access_groups)
  @asset_count = args[:asset_count] if args.key?(:asset_count)
  @create_time = args[:create_time] if args.key?(:create_time)
  @description = args[:description] if args.key?(:description)
  @display_name = args[:display_name] if args.key?(:display_name)
  @etag = args[:etag] if args.key?(:etag)
  @icon = args[:icon] if args.key?(:icon)
  @labels = args[:labels] if args.key?(:labels)
  @name = args[:name] if args.key?(:name)
  @owner_emails = args[:owner_emails] if args.key?(:owner_emails)
  @uid = args[:uid] if args.key?(:uid)
  @update_time = args[:update_time] if args.key?(:update_time)
end