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.



2923
2924
2925
# File 'lib/google/apis/dataplex_v1/classes.rb', line 2923

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



2846
2847
2848
# File 'lib/google/apis/dataplex_v1/classes.rb', line 2846

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



2856
2857
2858
# File 'lib/google/apis/dataplex_v1/classes.rb', line 2856

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)


2861
2862
2863
# File 'lib/google/apis/dataplex_v1/classes.rb', line 2861

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)


2866
2867
2868
# File 'lib/google/apis/dataplex_v1/classes.rb', line 2866

def create_time
  @create_time
end

#descriptionString

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

Returns:

  • (String)


2871
2872
2873
# File 'lib/google/apis/dataplex_v1/classes.rb', line 2871

def description
  @description
end

#display_nameString

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

Returns:

  • (String)


2876
2877
2878
# File 'lib/google/apis/dataplex_v1/classes.rb', line 2876

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)


2883
2884
2885
# File 'lib/google/apis/dataplex_v1/classes.rb', line 2883

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)


2893
2894
2895
# File 'lib/google/apis/dataplex_v1/classes.rb', line 2893

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>)


2899
2900
2901
# File 'lib/google/apis/dataplex_v1/classes.rb', line 2899

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)


2905
2906
2907
# File 'lib/google/apis/dataplex_v1/classes.rb', line 2905

def name
  @name
end

#owner_emailsArray<String>

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

Returns:

  • (Array<String>)


2910
2911
2912
# File 'lib/google/apis/dataplex_v1/classes.rb', line 2910

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)


2916
2917
2918
# File 'lib/google/apis/dataplex_v1/classes.rb', line 2916

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)


2921
2922
2923
# File 'lib/google/apis/dataplex_v1/classes.rb', line 2921

def update_time
  @update_time
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



2928
2929
2930
2931
2932
2933
2934
2935
2936
2937
2938
2939
2940
2941
2942
# File 'lib/google/apis/dataplex_v1/classes.rb', line 2928

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