Class: Google::Apis::NetworkservicesV1::WasmPlugin

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

Overview

WasmPlugin is a resource representing a service executing a customer- provided Wasm module.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ WasmPlugin

Returns a new instance of WasmPlugin.



5175
5176
5177
# File 'lib/google/apis/networkservices_v1/classes.rb', line 5175

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

Instance Attribute Details

#create_timeString

Output only. The timestamp when the resource was created. Corresponds to the JSON property createTime

Returns:

  • (String)


5116
5117
5118
# File 'lib/google/apis/networkservices_v1/classes.rb', line 5116

def create_time
  @create_time
end

#descriptionString

Optional. A human-readable description of the resource. Corresponds to the JSON property description

Returns:

  • (String)


5121
5122
5123
# File 'lib/google/apis/networkservices_v1/classes.rb', line 5121

def description
  @description
end

#labelsHash<String,String>

Optional. Set of labels associated with the WasmPlugin resource. The format must comply with the following requirements. Corresponds to the JSON property labels

Returns:

  • (Hash<String,String>)


5128
5129
5130
# File 'lib/google/apis/networkservices_v1/classes.rb', line 5128

def labels
  @labels
end

#log_configGoogle::Apis::NetworkservicesV1::WasmPluginLogConfig

Specifies the logging options for the activity performed by this plugin. If logging is enabled, plugin logs are exported to Cloud Logging. Corresponds to the JSON property logConfig



5134
5135
5136
# File 'lib/google/apis/networkservices_v1/classes.rb', line 5134

def log_config
  @log_config
end

#main_version_idString

Optional. The ID of the WasmPluginVersion resource that is the currently serving one. The version referred to must be a child of this WasmPlugin resource. Corresponds to the JSON property mainVersionId

Returns:

  • (String)


5141
5142
5143
# File 'lib/google/apis/networkservices_v1/classes.rb', line 5141

def main_version_id
  @main_version_id
end

#nameString

Identifier. Name of the WasmPlugin resource in the following format: projects/project/locations/location/wasmPlugins/wasm_plugin`. Corresponds to the JSON propertyname`

Returns:

  • (String)


5147
5148
5149
# File 'lib/google/apis/networkservices_v1/classes.rb', line 5147

def name
  @name
end

#update_timeString

Output only. The timestamp when the resource was updated. Corresponds to the JSON property updateTime

Returns:

  • (String)


5152
5153
5154
# File 'lib/google/apis/networkservices_v1/classes.rb', line 5152

def update_time
  @update_time
end

#used_byArray<Google::Apis::NetworkservicesV1::WasmPluginUsedBy>

Output only. List of all extensions that use this WasmPlugin resource. Corresponds to the JSON property usedBy



5158
5159
5160
# File 'lib/google/apis/networkservices_v1/classes.rb', line 5158

def used_by
  @used_by
end

#versionsHash<String,Google::Apis::NetworkservicesV1::WasmPluginVersionDetails>

Optional. All versions of this WasmPlugin resource in the key-value format. The key is the resource ID, and the value is the VersionDetails object. Lets you create or update a WasmPlugin resource and its versions in a single request. When the main_version_id field is not empty, it must point to one of the VersionDetails objects in the map. If provided in a PATCH request, the new versions replace the previous set. Any version omitted from the versions field is removed. Because the WasmPluginVersion resource is immutable, if a WasmPluginVersion resource with the same name already exists and differs, the request fails. Note: In a GET request, this field is populated only if the field GetWasmPluginRequest.view is set to WASM_PLUGIN_VIEW_FULL. Corresponds to the JSON property versions



5173
5174
5175
# File 'lib/google/apis/networkservices_v1/classes.rb', line 5173

def versions
  @versions
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



5180
5181
5182
5183
5184
5185
5186
5187
5188
5189
5190
# File 'lib/google/apis/networkservices_v1/classes.rb', line 5180

def update!(**args)
  @create_time = args[:create_time] if args.key?(:create_time)
  @description = args[:description] if args.key?(:description)
  @labels = args[:labels] if args.key?(:labels)
  @log_config = args[:log_config] if args.key?(:log_config)
  @main_version_id = args[:main_version_id] if args.key?(:main_version_id)
  @name = args[:name] if args.key?(:name)
  @update_time = args[:update_time] if args.key?(:update_time)
  @used_by = args[:used_by] if args.key?(:used_by)
  @versions = args[:versions] if args.key?(:versions)
end