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.



1319
1320
1321
# File 'lib/google/apis/cloudasset_v1/classes.rb', line 1319

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


1253
1254
1255
# File 'lib/google/apis/cloudasset_v1/classes.rb', line 1253

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


1262
1263
1264
# File 'lib/google/apis/cloudasset_v1/classes.rb', line 1262

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



1281
1282
1283
# File 'lib/google/apis/cloudasset_v1/classes.rb', line 1281

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)


1287
1288
1289
# File 'lib/google/apis/cloudasset_v1/classes.rb', line 1287

def content_type
  @content_type
end

#feed_output_configGoogle::Apis::CloudassetV1::FeedOutputConfig

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



1292
1293
1294
# File 'lib/google/apis/cloudasset_v1/classes.rb', line 1292

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)


1301
1302
1303
# File 'lib/google/apis/cloudasset_v1/classes.rb', line 1301

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


1317
1318
1319
# File 'lib/google/apis/cloudasset_v1/classes.rb', line 1317

def relationship_types
  @relationship_types
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1324
1325
1326
1327
1328
1329
1330
1331
1332
# File 'lib/google/apis/cloudasset_v1/classes.rb', line 1324

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