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.



3922
3923
3924
# File 'lib/google/apis/networkservices_v1/classes.rb', line 3922

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)


3864
3865
3866
# File 'lib/google/apis/networkservices_v1/classes.rb', line 3864

def create_time
  @create_time
end

#descriptionString

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

Returns:

  • (String)


3869
3870
3871
# File 'lib/google/apis/networkservices_v1/classes.rb', line 3869

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


3876
3877
3878
# File 'lib/google/apis/networkservices_v1/classes.rb', line 3876

def labels
  @labels
end

#log_configGoogle::Apis::NetworkservicesV1::WasmPluginLogConfig

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



3882
3883
3884
# File 'lib/google/apis/networkservices_v1/classes.rb', line 3882

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)


3889
3890
3891
# File 'lib/google/apis/networkservices_v1/classes.rb', line 3889

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)


3895
3896
3897
# File 'lib/google/apis/networkservices_v1/classes.rb', line 3895

def name
  @name
end

#update_timeString

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

Returns:

  • (String)


3900
3901
3902
# File 'lib/google/apis/networkservices_v1/classes.rb', line 3900

def update_time
  @update_time
end

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

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



3906
3907
3908
# File 'lib/google/apis/networkservices_v1/classes.rb', line 3906

def used_by
  @used_by
end

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

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



3920
3921
3922
# File 'lib/google/apis/networkservices_v1/classes.rb', line 3920

def versions
  @versions
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



3927
3928
3929
3930
3931
3932
3933
3934
3935
3936
3937
# File 'lib/google/apis/networkservices_v1/classes.rb', line 3927

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