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.



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

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



2832
2833
2834
# File 'lib/google/apis/dataplex_v1/classes.rb', line 2832

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



2842
2843
2844
# File 'lib/google/apis/dataplex_v1/classes.rb', line 2842

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)


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

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)


2852
2853
2854
# File 'lib/google/apis/dataplex_v1/classes.rb', line 2852

def create_time
  @create_time
end

#descriptionString

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

Returns:

  • (String)


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

def description
  @description
end

#display_nameString

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

Returns:

  • (String)


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

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)


2869
2870
2871
# File 'lib/google/apis/dataplex_v1/classes.rb', line 2869

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)


2879
2880
2881
# File 'lib/google/apis/dataplex_v1/classes.rb', line 2879

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


2885
2886
2887
# File 'lib/google/apis/dataplex_v1/classes.rb', line 2885

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)


2891
2892
2893
# File 'lib/google/apis/dataplex_v1/classes.rb', line 2891

def name
  @name
end

#owner_emailsArray<String>

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

Returns:

  • (Array<String>)


2896
2897
2898
# File 'lib/google/apis/dataplex_v1/classes.rb', line 2896

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)


2902
2903
2904
# File 'lib/google/apis/dataplex_v1/classes.rb', line 2902

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)


2907
2908
2909
# File 'lib/google/apis/dataplex_v1/classes.rb', line 2907

def update_time
  @update_time
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



2914
2915
2916
2917
2918
2919
2920
2921
2922
2923
2924
2925
2926
2927
2928
# File 'lib/google/apis/dataplex_v1/classes.rb', line 2914

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