Class List Method List File List

# Class: Com::Vmware::Vcenter::Vm::Hardware::Ethernet::CreateSpec

Inherits:
  VAPI::Bindings::VapiStruct
  - Object
  - VAPI::Bindings::VapiStruct
  - Com::Vmware::Vcenter::Vm::Hardware::Ethernet::CreateSpec
  show all
Defined in:
  /build/mts/release/bora-4571906/build/sdk/aggregated-bindings/ruby/com/vmware/vcenter/vm/hardware.rb

## Overview

The ``Com::Vmware::Vcenter::Vm::Hardware::Ethernet::CreateSpec`` class provides a specification for the configuration of a newly-created virtual Ethernet adapter.

## Instance Attribute Summary (collapse)

- - (Object) allow_guest_control

  Returns the value of attribute allow_guest_control.

- - (Com::Vmware::Vcenter::Vm::Hardware::Ethernet::BackingSpec?) backing

  Physical resource backing for the virtual Ethernet adapter.

- - (String) mac_address

  MAC address.

- - (Com::Vmware::Vcenter::Vm::Hardware::Ethernet::MacAddressType?) mac_type

  MAC address type.

- - (Fixnum?) pci_slot_number

  Address of the virtual Ethernet adapter on the PCI bus.

- - (Object) start_connected

  Returns the value of attribute start_connected.

- - (Com::Vmware::Vcenter::Vm::Hardware::Ethernet::EmulationType?) type

  Ethernet adapter emulation type.

- - (Boolean?) upt_compatibility_enabled

  Flag indicating whether Universal Pass-Through (UPT) compatibility is enabled on this virtual Ethernet adapter.

- - (Boolean?) wake_on_lan_enabled

  Flag indicating whether wake-on-LAN is enabled on this virtual Ethernet adapter.

## Class Method Summary (collapse)

- + (VAPI::Bindings::StructType) binding_type

  Holds (gets or creates) the binding type metadata for this structure type.

## Instance Method Summary (collapse)

- - (CreateSpec) initialize(ruby_values = nil, struct_value = nil) constructor

  Constructs a new instance.

## Constructor Details

### - (`CreateSpec`) initialize(ruby_values = nil, struct_value = nil)

Constructs a new instance.

Parameters:

- ruby_values (`Hash`) (defaults to: `nil`) —

  a map of initial property values (optional)

- struct_value (`VAPI::Data::StructValue`) (defaults to: `nil`) —

  a raw StructValue from the wire (optional)

    2986
    2987
    2988
    # File '/build/mts/release/bora-4571906/build/sdk/aggregated-bindings/ruby/com/vmware/vcenter/vm/hardware.rb', line 2986

    def initialize(ruby_values=nil, struct_value=nil)
        super(self.class.binding_type, ruby_values, struct_value)
    end

## Instance Attribute Details

### - (`Object`) allow_guest_control

Returns the value of attribute allow_guest_control

    2973
    2974
    2975
    # File '/build/mts/release/bora-4571906/build/sdk/aggregated-bindings/ruby/com/vmware/vcenter/vm/hardware.rb', line 2973

    def allow_guest_control
      @allow_guest_control
    end

### - (`Com::Vmware::Vcenter::Vm::Hardware::Ethernet::BackingSpec`?) backing

Physical resource backing for the virtual Ethernet adapter. If nil , the system may try to find an appropriate backing. If one is not found, the request will fail.

Returns:

- (`Com::Vmware::Vcenter::Vm::Hardware::Ethernet::BackingSpec`, `nil`)

    2947
    2948
    2949
    2950
    2951
    2952
    2953
    2954
    2955
    2956
    2957
    2958
    2959
    2960
    2961
    2962
    2963
    2964
    2965
    2966
    2967
    2968
    2969
    2970
    2971
    2972
    2973
    2974
    2975
    2976
    2977
    2978
    2979
    2980
    2981
    2982
    2983
    2984
    2985
    2986
    2987
    2988
    2989
    # File '/build/mts/release/bora-4571906/build/sdk/aggregated-bindings/ruby/com/vmware/vcenter/vm/hardware.rb', line 2947

    class CreateSpec < VAPI::Bindings::VapiStruct

        class << self
            # Holds (gets or creates) the binding type metadata for this structure type.
            # @scope class
            # @return [VAPI::Bindings::StructType] the binding type
            def binding_type
                @binding_type ||= VAPI::Bindings::StructType.new(
                    'com.vmware.vcenter.vm.hardware.ethernet.create_spec',
                    {
                        'type' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::ReferenceType.new('Com::Vmware::Vcenter::Vm::Hardware::Ethernet::EmulationType')),
                        'upt_compatibility_enabled' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::BooleanType.instance),
                        'mac_type' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::ReferenceType.new('Com::Vmware::Vcenter::Vm::Hardware::Ethernet::MacAddressType')),
                        'mac_address' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'pci_slot_number' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::IntegerType.instance),
                        'wake_on_lan_enabled' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::BooleanType.instance),
                        'backing' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::ReferenceType.new('Com::Vmware::Vcenter::Vm::Hardware::Ethernet::BackingSpec')),
                        'start_connected' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::BooleanType.instance),
                        'allow_guest_control' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::BooleanType.instance),
                    },
                    CreateSpec,
                    false,
                    nil)
            end
        end

        attr_accessor :type,
                      :upt_compatibility_enabled,
                      :mac_type,
                      :mac_address,
                      :pci_slot_number,
                      :wake_on_lan_enabled,
                      :backing,
                      :start_connected,
                      :allow_guest_control

        # Constructs a new instance.
        # @param ruby_values [Hash] a map of initial property values (optional)
        # @param struct_value [VAPI::Data::StructValue] a raw StructValue from the wire (optional)
        def initialize(ruby_values=nil, struct_value=nil)
            super(self.class.binding_type, ruby_values, struct_value)
        end
    end

### - (`String`) mac_address

MAC address. Workaround for PR1459647

Returns:

- (`String`)

    2947
    2948
    2949
    2950
    2951
    2952
    2953
    2954
    2955
    2956
    2957
    2958
    2959
    2960
    2961
    2962
    2963
    2964
    2965
    2966
    2967
    2968
    2969
    2970
    2971
    2972
    2973
    2974
    2975
    2976
    2977
    2978
    2979
    2980
    2981
    2982
    2983
    2984
    2985
    2986
    2987
    2988
    2989
    # File '/build/mts/release/bora-4571906/build/sdk/aggregated-bindings/ruby/com/vmware/vcenter/vm/hardware.rb', line 2947

    class CreateSpec < VAPI::Bindings::VapiStruct

        class << self
            # Holds (gets or creates) the binding type metadata for this structure type.
            # @scope class
            # @return [VAPI::Bindings::StructType] the binding type
            def binding_type
                @binding_type ||= VAPI::Bindings::StructType.new(
                    'com.vmware.vcenter.vm.hardware.ethernet.create_spec',
                    {
                        'type' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::ReferenceType.new('Com::Vmware::Vcenter::Vm::Hardware::Ethernet::EmulationType')),
                        'upt_compatibility_enabled' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::BooleanType.instance),
                        'mac_type' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::ReferenceType.new('Com::Vmware::Vcenter::Vm::Hardware::Ethernet::MacAddressType')),
                        'mac_address' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'pci_slot_number' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::IntegerType.instance),
                        'wake_on_lan_enabled' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::BooleanType.instance),
                        'backing' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::ReferenceType.new('Com::Vmware::Vcenter::Vm::Hardware::Ethernet::BackingSpec')),
                        'start_connected' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::BooleanType.instance),
                        'allow_guest_control' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::BooleanType.instance),
                    },
                    CreateSpec,
                    false,
                    nil)
            end
        end

        attr_accessor :type,
                      :upt_compatibility_enabled,
                      :mac_type,
                      :mac_address,
                      :pci_slot_number,
                      :wake_on_lan_enabled,
                      :backing,
                      :start_connected,
                      :allow_guest_control

        # Constructs a new instance.
        # @param ruby_values [Hash] a map of initial property values (optional)
        # @param struct_value [VAPI::Data::StructValue] a raw StructValue from the wire (optional)
        def initialize(ruby_values=nil, struct_value=nil)
            super(self.class.binding_type, ruby_values, struct_value)
        end
    end

### - (`Com::Vmware::Vcenter::Vm::Hardware::Ethernet::MacAddressType`?) mac_type

MAC address type. If nil , defaults to :attr:`Com::Vmware::Vcenter::Vm::Hardware::Ethernet::MacAddressType.GENERATED` .

Returns:

- (`Com::Vmware::Vcenter::Vm::Hardware::Ethernet::MacAddressType`, `nil`)

    2947
    2948
    2949
    2950
    2951
    2952
    2953
    2954
    2955
    2956
    2957
    2958
    2959
    2960
    2961
    2962
    2963
    2964
    2965
    2966
    2967
    2968
    2969
    2970
    2971
    2972
    2973
    2974
    2975
    2976
    2977
    2978
    2979
    2980
    2981
    2982
    2983
    2984
    2985
    2986
    2987
    2988
    2989
    # File '/build/mts/release/bora-4571906/build/sdk/aggregated-bindings/ruby/com/vmware/vcenter/vm/hardware.rb', line 2947

    class CreateSpec < VAPI::Bindings::VapiStruct

        class << self
            # Holds (gets or creates) the binding type metadata for this structure type.
            # @scope class
            # @return [VAPI::Bindings::StructType] the binding type
            def binding_type
                @binding_type ||= VAPI::Bindings::StructType.new(
                    'com.vmware.vcenter.vm.hardware.ethernet.create_spec',
                    {
                        'type' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::ReferenceType.new('Com::Vmware::Vcenter::Vm::Hardware::Ethernet::EmulationType')),
                        'upt_compatibility_enabled' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::BooleanType.instance),
                        'mac_type' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::ReferenceType.new('Com::Vmware::Vcenter::Vm::Hardware::Ethernet::MacAddressType')),
                        'mac_address' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'pci_slot_number' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::IntegerType.instance),
                        'wake_on_lan_enabled' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::BooleanType.instance),
                        'backing' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::ReferenceType.new('Com::Vmware::Vcenter::Vm::Hardware::Ethernet::BackingSpec')),
                        'start_connected' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::BooleanType.instance),
                        'allow_guest_control' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::BooleanType.instance),
                    },
                    CreateSpec,
                    false,
                    nil)
            end
        end

        attr_accessor :type,
                      :upt_compatibility_enabled,
                      :mac_type,
                      :mac_address,
                      :pci_slot_number,
                      :wake_on_lan_enabled,
                      :backing,
                      :start_connected,
                      :allow_guest_control

        # Constructs a new instance.
        # @param ruby_values [Hash] a map of initial property values (optional)
        # @param struct_value [VAPI::Data::StructValue] a raw StructValue from the wire (optional)
        def initialize(ruby_values=nil, struct_value=nil)
            super(self.class.binding_type, ruby_values, struct_value)
        end
    end

### - (`Fixnum`?) pci_slot_number

Address of the virtual Ethernet adapter on the PCI bus. If the PCI address is invalid, the server will change when it the VM is started or as the device is hot added. If nil , the server will choose an available address when the virtual machine is powered on.

Returns:

- (`Fixnum`, `nil`)

    2947
    2948
    2949
    2950
    2951
    2952
    2953
    2954
    2955
    2956
    2957
    2958
    2959
    2960
    2961
    2962
    2963
    2964
    2965
    2966
    2967
    2968
    2969
    2970
    2971
    2972
    2973
    2974
    2975
    2976
    2977
    2978
    2979
    2980
    2981
    2982
    2983
    2984
    2985
    2986
    2987
    2988
    2989
    # File '/build/mts/release/bora-4571906/build/sdk/aggregated-bindings/ruby/com/vmware/vcenter/vm/hardware.rb', line 2947

    class CreateSpec < VAPI::Bindings::VapiStruct

        class << self
            # Holds (gets or creates) the binding type metadata for this structure type.
            # @scope class
            # @return [VAPI::Bindings::StructType] the binding type
            def binding_type
                @binding_type ||= VAPI::Bindings::StructType.new(
                    'com.vmware.vcenter.vm.hardware.ethernet.create_spec',
                    {
                        'type' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::ReferenceType.new('Com::Vmware::Vcenter::Vm::Hardware::Ethernet::EmulationType')),
                        'upt_compatibility_enabled' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::BooleanType.instance),
                        'mac_type' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::ReferenceType.new('Com::Vmware::Vcenter::Vm::Hardware::Ethernet::MacAddressType')),
                        'mac_address' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'pci_slot_number' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::IntegerType.instance),
                        'wake_on_lan_enabled' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::BooleanType.instance),
                        'backing' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::ReferenceType.new('Com::Vmware::Vcenter::Vm::Hardware::Ethernet::BackingSpec')),
                        'start_connected' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::BooleanType.instance),
                        'allow_guest_control' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::BooleanType.instance),
                    },
                    CreateSpec,
                    false,
                    nil)
            end
        end

        attr_accessor :type,
                      :upt_compatibility_enabled,
                      :mac_type,
                      :mac_address,
                      :pci_slot_number,
                      :wake_on_lan_enabled,
                      :backing,
                      :start_connected,
                      :allow_guest_control

        # Constructs a new instance.
        # @param ruby_values [Hash] a map of initial property values (optional)
        # @param struct_value [VAPI::Data::StructValue] a raw StructValue from the wire (optional)
        def initialize(ruby_values=nil, struct_value=nil)
            super(self.class.binding_type, ruby_values, struct_value)
        end
    end

### - (`Object`) start_connected

Returns the value of attribute start_connected

    2973
    2974
    2975
    # File '/build/mts/release/bora-4571906/build/sdk/aggregated-bindings/ruby/com/vmware/vcenter/vm/hardware.rb', line 2973

    def start_connected
      @start_connected
    end

### - (`Com::Vmware::Vcenter::Vm::Hardware::Ethernet::EmulationType`?) type

Ethernet adapter emulation type. If nil , defaults to a guest-specific type.

Returns:

- (`Com::Vmware::Vcenter::Vm::Hardware::Ethernet::EmulationType`, `nil`)

    2947
    2948
    2949
    2950
    2951
    2952
    2953
    2954
    2955
    2956
    2957
    2958
    2959
    2960
    2961
    2962
    2963
    2964
    2965
    2966
    2967
    2968
    2969
    2970
    2971
    2972
    2973
    2974
    2975
    2976
    2977
    2978
    2979
    2980
    2981
    2982
    2983
    2984
    2985
    2986
    2987
    2988
    2989
    # File '/build/mts/release/bora-4571906/build/sdk/aggregated-bindings/ruby/com/vmware/vcenter/vm/hardware.rb', line 2947

    class CreateSpec < VAPI::Bindings::VapiStruct

        class << self
            # Holds (gets or creates) the binding type metadata for this structure type.
            # @scope class
            # @return [VAPI::Bindings::StructType] the binding type
            def binding_type
                @binding_type ||= VAPI::Bindings::StructType.new(
                    'com.vmware.vcenter.vm.hardware.ethernet.create_spec',
                    {
                        'type' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::ReferenceType.new('Com::Vmware::Vcenter::Vm::Hardware::Ethernet::EmulationType')),
                        'upt_compatibility_enabled' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::BooleanType.instance),
                        'mac_type' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::ReferenceType.new('Com::Vmware::Vcenter::Vm::Hardware::Ethernet::MacAddressType')),
                        'mac_address' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'pci_slot_number' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::IntegerType.instance),
                        'wake_on_lan_enabled' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::BooleanType.instance),
                        'backing' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::ReferenceType.new('Com::Vmware::Vcenter::Vm::Hardware::Ethernet::BackingSpec')),
                        'start_connected' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::BooleanType.instance),
                        'allow_guest_control' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::BooleanType.instance),
                    },
                    CreateSpec,
                    false,
                    nil)
            end
        end

        attr_accessor :type,
                      :upt_compatibility_enabled,
                      :mac_type,
                      :mac_address,
                      :pci_slot_number,
                      :wake_on_lan_enabled,
                      :backing,
                      :start_connected,
                      :allow_guest_control

        # Constructs a new instance.
        # @param ruby_values [Hash] a map of initial property values (optional)
        # @param struct_value [VAPI::Data::StructValue] a raw StructValue from the wire (optional)
        def initialize(ruby_values=nil, struct_value=nil)
            super(self.class.binding_type, ruby_values, struct_value)
        end
    end

### - (`Boolean`?) upt_compatibility_enabled

Flag indicating whether Universal Pass-Through (UPT) compatibility is enabled on this virtual Ethernet adapter. If nil , defaults to false.

Returns:

- (`Boolean`, `nil`)

    2947
    2948
    2949
    2950
    2951
    2952
    2953
    2954
    2955
    2956
    2957
    2958
    2959
    2960
    2961
    2962
    2963
    2964
    2965
    2966
    2967
    2968
    2969
    2970
    2971
    2972
    2973
    2974
    2975
    2976
    2977
    2978
    2979
    2980
    2981
    2982
    2983
    2984
    2985
    2986
    2987
    2988
    2989
    # File '/build/mts/release/bora-4571906/build/sdk/aggregated-bindings/ruby/com/vmware/vcenter/vm/hardware.rb', line 2947

    class CreateSpec < VAPI::Bindings::VapiStruct

        class << self
            # Holds (gets or creates) the binding type metadata for this structure type.
            # @scope class
            # @return [VAPI::Bindings::StructType] the binding type
            def binding_type
                @binding_type ||= VAPI::Bindings::StructType.new(
                    'com.vmware.vcenter.vm.hardware.ethernet.create_spec',
                    {
                        'type' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::ReferenceType.new('Com::Vmware::Vcenter::Vm::Hardware::Ethernet::EmulationType')),
                        'upt_compatibility_enabled' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::BooleanType.instance),
                        'mac_type' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::ReferenceType.new('Com::Vmware::Vcenter::Vm::Hardware::Ethernet::MacAddressType')),
                        'mac_address' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'pci_slot_number' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::IntegerType.instance),
                        'wake_on_lan_enabled' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::BooleanType.instance),
                        'backing' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::ReferenceType.new('Com::Vmware::Vcenter::Vm::Hardware::Ethernet::BackingSpec')),
                        'start_connected' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::BooleanType.instance),
                        'allow_guest_control' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::BooleanType.instance),
                    },
                    CreateSpec,
                    false,
                    nil)
            end
        end

        attr_accessor :type,
                      :upt_compatibility_enabled,
                      :mac_type,
                      :mac_address,
                      :pci_slot_number,
                      :wake_on_lan_enabled,
                      :backing,
                      :start_connected,
                      :allow_guest_control

        # Constructs a new instance.
        # @param ruby_values [Hash] a map of initial property values (optional)
        # @param struct_value [VAPI::Data::StructValue] a raw StructValue from the wire (optional)
        def initialize(ruby_values=nil, struct_value=nil)
            super(self.class.binding_type, ruby_values, struct_value)
        end
    end

### - (`Boolean`?) wake_on_lan_enabled

Flag indicating whether wake-on-LAN is enabled on this virtual Ethernet adapter. Defaults to false if nil .

Returns:

- (`Boolean`, `nil`)

    2947
    2948
    2949
    2950
    2951
    2952
    2953
    2954
    2955
    2956
    2957
    2958
    2959
    2960
    2961
    2962
    2963
    2964
    2965
    2966
    2967
    2968
    2969
    2970
    2971
    2972
    2973
    2974
    2975
    2976
    2977
    2978
    2979
    2980
    2981
    2982
    2983
    2984
    2985
    2986
    2987
    2988
    2989
    # File '/build/mts/release/bora-4571906/build/sdk/aggregated-bindings/ruby/com/vmware/vcenter/vm/hardware.rb', line 2947

    class CreateSpec < VAPI::Bindings::VapiStruct

        class << self
            # Holds (gets or creates) the binding type metadata for this structure type.
            # @scope class
            # @return [VAPI::Bindings::StructType] the binding type
            def binding_type
                @binding_type ||= VAPI::Bindings::StructType.new(
                    'com.vmware.vcenter.vm.hardware.ethernet.create_spec',
                    {
                        'type' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::ReferenceType.new('Com::Vmware::Vcenter::Vm::Hardware::Ethernet::EmulationType')),
                        'upt_compatibility_enabled' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::BooleanType.instance),
                        'mac_type' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::ReferenceType.new('Com::Vmware::Vcenter::Vm::Hardware::Ethernet::MacAddressType')),
                        'mac_address' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'pci_slot_number' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::IntegerType.instance),
                        'wake_on_lan_enabled' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::BooleanType.instance),
                        'backing' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::ReferenceType.new('Com::Vmware::Vcenter::Vm::Hardware::Ethernet::BackingSpec')),
                        'start_connected' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::BooleanType.instance),
                        'allow_guest_control' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::BooleanType.instance),
                    },
                    CreateSpec,
                    false,
                    nil)
            end
        end

        attr_accessor :type,
                      :upt_compatibility_enabled,
                      :mac_type,
                      :mac_address,
                      :pci_slot_number,
                      :wake_on_lan_enabled,
                      :backing,
                      :start_connected,
                      :allow_guest_control

        # Constructs a new instance.
        # @param ruby_values [Hash] a map of initial property values (optional)
        # @param struct_value [VAPI::Data::StructValue] a raw StructValue from the wire (optional)
        def initialize(ruby_values=nil, struct_value=nil)
            super(self.class.binding_type, ruby_values, struct_value)
        end
    end

## Class Method Details

### + (`VAPI::Bindings::StructType`) binding_type

Holds (gets or creates) the binding type metadata for this structure type.

Returns:

- (`VAPI::Bindings::StructType`) —

  the binding type

    2953
    2954
    2955
    2956
    2957
    2958
    2959
    2960
    2961
    2962
    2963
    2964
    2965
    2966
    2967
    2968
    2969
    2970
    # File '/build/mts/release/bora-4571906/build/sdk/aggregated-bindings/ruby/com/vmware/vcenter/vm/hardware.rb', line 2953

    def binding_type
        @binding_type ||= VAPI::Bindings::StructType.new(
            'com.vmware.vcenter.vm.hardware.ethernet.create_spec',
            {
                'type' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::ReferenceType.new('Com::Vmware::Vcenter::Vm::Hardware::Ethernet::EmulationType')),
                'upt_compatibility_enabled' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::BooleanType.instance),
                'mac_type' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::ReferenceType.new('Com::Vmware::Vcenter::Vm::Hardware::Ethernet::MacAddressType')),
                'mac_address' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                'pci_slot_number' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::IntegerType.instance),
                'wake_on_lan_enabled' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::BooleanType.instance),
                'backing' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::ReferenceType.new('Com::Vmware::Vcenter::Vm::Hardware::Ethernet::BackingSpec')),
                'start_connected' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::BooleanType.instance),
                'allow_guest_control' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::BooleanType.instance),
            },
            CreateSpec,
            false,
            nil)
    end