Class: Google::Apis::CloudassetV1::Feed

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

Overview

An asset feed used to export asset updates to a destinations. An asset feed filter controls what updates are exported. The asset feed must be created within a project, organization, or folder. Supported destinations are: Pub/Sub topics.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ Feed

Returns a new instance of Feed.



1269
1270
1271
# File 'lib/google/apis/cloudasset_v1/classes.rb', line 1269

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

Instance Attribute Details

#asset_namesArray<String>

A list of the full names of the assets to receive updates. You must specify either or both of asset_names and asset_types. Only asset updates matching specified asset_names or asset_types are exported to the feed. Example: // compute.googleapis.com/projects/my_project_123/zones/zone1/instances/instance1 . For a list of the full names for supported asset types, see Resource name format. Corresponds to the JSON property assetNames

Returns:

  • (Array<String>)


1203
1204
1205
# File 'lib/google/apis/cloudasset_v1/classes.rb', line 1203

def asset_names
  @asset_names
end

#asset_typesArray<String>

A list of types of the assets to receive updates. You must specify either or both of asset_names and asset_types. Only asset updates matching specified asset_names or asset_types are exported to the feed. Example: "compute. googleapis.com/Disk" For a list of all supported asset types, see Supported asset types. Corresponds to the JSON property assetTypes

Returns:

  • (Array<String>)


1212
1213
1214
# File 'lib/google/apis/cloudasset_v1/classes.rb', line 1212

def asset_types
  @asset_types
end

#conditionGoogle::Apis::CloudassetV1::Expr

Represents a textual expression in the Common Expression Language (CEL) syntax. CEL is a C-like expression language. The syntax and semantics of CEL are documented at https://github.com/google/cel-spec. Example (Comparison): title: "Summary size limit" description: "Determines if a summary is less than 100 chars" expression: "document.summary.size() < 100" Example (Equality): title: " Requestor is owner" description: "Determines if requestor is the document owner" expression: "document.owner == request.auth.claims.email" Example ( Logic): title: "Public documents" description: "Determine whether the document should be publicly visible" expression: "document.type != 'private' && document.type != 'internal'" Example (Data Manipulation): title: "Notification string" description: "Create a notification string with a timestamp." expression: "'New message received at ' + string(document.create_time)" The exact variables and functions that may be referenced within an expression are determined by the service that evaluates it. See the service documentation for additional information. Corresponds to the JSON property condition



1231
1232
1233
# File 'lib/google/apis/cloudasset_v1/classes.rb', line 1231

def condition
  @condition
end

#content_typeString

Asset content type. If not specified, no content but the asset name and type will be returned. Corresponds to the JSON property contentType

Returns:

  • (String)


1237
1238
1239
# File 'lib/google/apis/cloudasset_v1/classes.rb', line 1237

def content_type
  @content_type
end

#feed_output_configGoogle::Apis::CloudassetV1::FeedOutputConfig

Output configuration for asset feed destination. Corresponds to the JSON property feedOutputConfig



1242
1243
1244
# File 'lib/google/apis/cloudasset_v1/classes.rb', line 1242

def feed_output_config
  @feed_output_config
end

#nameString

Required. The format will be projects/project_number/feeds/client- assigned_feed_identifier or folders/folder_number/feeds/client- assigned_feed_identifier or organizations/organization_number/feeds/client- assigned_feed_identifier The client-assigned feed identifier must be unique within the parent project/folder/organization. Corresponds to the JSON property name

Returns:

  • (String)


1251
1252
1253
# File 'lib/google/apis/cloudasset_v1/classes.rb', line 1251

def name
  @name
end

#relationship_typesArray<String>

A list of relationship types to output, for example: INSTANCE_TO_INSTANCEGROUP. This field should only be specified if content_type=RELATIONSHIP. * If specified: it outputs specified relationship updates on the [asset_names] or the [asset_types]. It returns an error if any of the [relationship_types] doesn't belong to the supported relationship types of the [asset_names] or [asset_types], or any of the [asset_names] or the [ asset_types] doesn't belong to the source types of the [relationship_types]. * Otherwise: it outputs the supported relationships of the types of [asset_names] and [asset_types] or returns an error if any of the [asset_names] or the [ asset_types] has no replationship support. See Introduction to Cloud Asset Inventory for all supported asset types and relationship types. Corresponds to the JSON property relationshipTypes

Returns:

  • (Array<String>)


1267
1268
1269
# File 'lib/google/apis/cloudasset_v1/classes.rb', line 1267

def relationship_types
  @relationship_types
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1274
1275
1276
1277
1278
1279
1280
1281
1282
# File 'lib/google/apis/cloudasset_v1/classes.rb', line 1274

def update!(**args)
  @asset_names = args[:asset_names] if args.key?(:asset_names)
  @asset_types = args[:asset_types] if args.key?(:asset_types)
  @condition = args[:condition] if args.key?(:condition)
  @content_type = args[:content_type] if args.key?(:content_type)
  @feed_output_config = args[:feed_output_config] if args.key?(:feed_output_config)
  @name = args[:name] if args.key?(:name)
  @relationship_types = args[:relationship_types] if args.key?(:relationship_types)
end