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.



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

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


1222
1223
1224
# File 'lib/google/apis/cloudasset_v1/classes.rb', line 1222

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


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

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



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

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)


1256
1257
1258
# File 'lib/google/apis/cloudasset_v1/classes.rb', line 1256

def content_type
  @content_type
end

#feed_output_configGoogle::Apis::CloudassetV1::FeedOutputConfig

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



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

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)


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

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


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

def relationship_types
  @relationship_types
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1293
1294
1295
1296
1297
1298
1299
1300
1301
# File 'lib/google/apis/cloudasset_v1/classes.rb', line 1293

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