Class List Method List File List

# Class: Com::Vmware::Content::Library::StorageBacking

Inherits:
  VAPI::Bindings::VapiStruct
  - Object
  - VAPI::Bindings::VapiStruct
  - Com::Vmware::Content::Library::StorageBacking
  show all
Defined in:
  /build/mts/release/bora-4571906/build/sdk/aggregated-bindings/ruby/com/vmware/content/library.rb

## Overview

The ``Com::Vmware::Content::Library::StorageBacking`` class defines a storage location where content in a library will be stored. The storage location can either be a Datastore or Other type.

## Defined Under Namespace

Classes: Type

## Instance Attribute Summary (collapse)

- - (String) datastore_id

  Identifier of the datastore used to store the content in the library.

- - (URI) storage_uri

  URI identifying the location used to store the content in the library.

- - (Com::Vmware::Content::Library::StorageBacking::Type) type

  Type ( ``DATASTORE``, ``OTHER`` ) of :class:`Com::Vmware::Content::Library::StorageBacking` .

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

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

  Constructs a new instance.

## Constructor Details

### - (`StorageBacking`) 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)

    856
    857
    858
    # File '/build/mts/release/bora-4571906/build/sdk/aggregated-bindings/ruby/com/vmware/content/library.rb', line 856

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

## Instance Attribute Details

### - (`String`) datastore_id

Identifier of the datastore used to store the content in the library. This field is optional and it is only relevant when the value of ``type`` is :attr:`Com::Vmware::Content::Library::StorageBacking::Type.DATASTORE` .

Returns:

- (`String`)

    829
    830
    831
    832
    833
    834
    835
    836
    837
    838
    839
    840
    841
    842
    843
    844
    845
    846
    847
    848
    849
    850
    851
    852
    853
    854
    855
    856
    857
    858
    859
    860
    861
    862
    863
    864
    865
    866
    867
    868
    869
    870
    871
    872
    873
    874
    875
    876
    877
    878
    879
    880
    881
    882
    883
    884
    885
    886
    887
    888
    889
    890
    891
    892
    893
    894
    895
    896
    897
    898
    899
    900
    901
    902
    903
    904
    905
    906
    907
    908
    909
    910
    911
    912
    913
    914
    915
    916
    917
    918
    919
    920
    921
    922
    923
    924
    925
    926
    927
    928
    929
    930
    931
    932
    933
    934
    935
    936
    937
    938
    939
    940
    941
    942
    943
    944
    945
    946
    # File '/build/mts/release/bora-4571906/build/sdk/aggregated-bindings/ruby/com/vmware/content/library.rb', line 829

    class StorageBacking < 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.content.library.storage_backing',
                    {
                        'type' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::ReferenceType.new('Com::Vmware::Content::Library::StorageBacking::Type')),
                        'datastore_id' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::IdType.new),
                        'storage_uri' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::URIType.instance),
                    },
                    StorageBacking,
                    false,
                    nil)
            end
        end

        attr_accessor :type,
                      :datastore_id,
                      :storage_uri

        # 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

        # The  ``Com::Vmware::Content::Library::StorageBacking::Type``   enumerated type  specifies the type of the   :class:`Com::Vmware::Content::Library::StorageBacking`  .
        # @!attribute [rw] datastore
        #     @return [Com::Vmware::Content::Library::StorageBacking::Type]
        #     The content of the library will be stored on a datastore.
        #
        #      These are vCenter Server managed datastores, and are logical containers that hide specifics of each storage device. Depending on the type of storage you use, datastores can be backed by the following file system formats:
        #
        #       *  Virtual Machine File System (VMFS)
        #        *  Network File System (NFS)
        #
        #
        # @!attribute [rw] other
        #     @return [Com::Vmware::Content::Library::StorageBacking::Type]
        #     The content of the library will be stored on a remote file system.
        #
        #      Supports the following remote file systems:
        #
        #       *  NFS (on vCenter Server Appliance)
        #        *  SMB (on vCenter Server Appliance and vCenter Server for Windows)
        #
        #
        class Type < VAPI::Bindings::VapiEnum

            class << self
                # Holds (gets or creates) the binding type metadata for this enumeration type.
                # @scope class
                # @return [VAPI::Bindings::EnumType] the binding type
                def binding_type
                    @binding_type ||= VAPI::Bindings::EnumType.new(
                        'com.vmware.content.library.storage_backing.type',
                        Type)
                end

                # Converts from a string value (perhaps off the wire) to an instance
                # of this enum type.
                # @param value [String] the actual value of the enum instance
                # @return [Type] the instance found for the value, otherwise
                #         an unknown instance will be built for the value
                def from_string(value)
                    begin
                        const_get(value)
                    rescue NameError
                        Type.new('UNKNOWN', value)
                    end
                end
            end

            private

            # Constructs a new instance.
            # @param value [String] the actual value of the enum instance
            # @param unknown [String] the unknown value when value is 'UKNOWN'
            def initialize(value, unknown=nil)
                super(self.class.binding_type, value, unknown)
            end

            public

            # @!attribute [rw] datastore
            #     @return [Com::Vmware::Content::Library::StorageBacking::Type]
            #     The content of the library will be stored on a datastore.
            #
            #      These are vCenter Server managed datastores, and are logical containers that hide specifics of each storage device. Depending on the type of storage you use, datastores can be backed by the following file system formats:
            #
            #       *  Virtual Machine File System (VMFS)
            #        *  Network File System (NFS)
            #
            #
            DATASTORE = Type.new('DATASTORE')

            # @!attribute [rw] other
            #     @return [Com::Vmware::Content::Library::StorageBacking::Type]
            #     The content of the library will be stored on a remote file system.
            #
            #      Supports the following remote file systems:
            #
            #       *  NFS (on vCenter Server Appliance)
            #        *  SMB (on vCenter Server Appliance and vCenter Server for Windows)
            #
            #
            OTHER = Type.new('OTHER')

        end

    end

### - (`URI`) storage_uri

URI identifying the location used to store the content in the library.

     The following URI formats are supported:

     vSphere 6.5

      * nfs://server/path?version=4 (for vCenter Server Appliance only) - Specifies an NFS Version 4 server.
       * nfs://server/path (for vCenter Server Appliance only) - Specifies an NFS Version 3 server. The nfs://server:/path format is also supported.
       * smb://server/path - Specifies an SMB server or Windows share.

     vSphere 6.0 Update 1

      * nfs://server:/path (for vCenter Server Appliance only)
       * file://unc-server/path (for vCenter Server for Windows only)
       * file:///mount/point (for vCenter Server Appliance only) - Local file URIs are supported only when the path is a local mount point for an NFS file system. Use of file URIs is strongly discouraged. Instead, use an NFS URI to specify the remote file system.

     vSphere 6.0

      * nfs://server:/path (for vCenter Server Appliance only)
       * file://unc-server/path (for vCenter Server for Windows only)
       * file:///path - Local file URIs are supported but strongly discouraged because it may interfere with the performance of vCenter Server.

This field is optional and it is only relevant when the value of ``type`` is :attr:`Com::Vmware::Content::Library::StorageBacking::Type.OTHER` .

Returns:

- (`URI`)

    829
    830
    831
    832
    833
    834
    835
    836
    837
    838
    839
    840
    841
    842
    843
    844
    845
    846
    847
    848
    849
    850
    851
    852
    853
    854
    855
    856
    857
    858
    859
    860
    861
    862
    863
    864
    865
    866
    867
    868
    869
    870
    871
    872
    873
    874
    875
    876
    877
    878
    879
    880
    881
    882
    883
    884
    885
    886
    887
    888
    889
    890
    891
    892
    893
    894
    895
    896
    897
    898
    899
    900
    901
    902
    903
    904
    905
    906
    907
    908
    909
    910
    911
    912
    913
    914
    915
    916
    917
    918
    919
    920
    921
    922
    923
    924
    925
    926
    927
    928
    929
    930
    931
    932
    933
    934
    935
    936
    937
    938
    939
    940
    941
    942
    943
    944
    945
    946
    # File '/build/mts/release/bora-4571906/build/sdk/aggregated-bindings/ruby/com/vmware/content/library.rb', line 829

    class StorageBacking < 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.content.library.storage_backing',
                    {
                        'type' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::ReferenceType.new('Com::Vmware::Content::Library::StorageBacking::Type')),
                        'datastore_id' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::IdType.new),
                        'storage_uri' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::URIType.instance),
                    },
                    StorageBacking,
                    false,
                    nil)
            end
        end

        attr_accessor :type,
                      :datastore_id,
                      :storage_uri

        # 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

        # The  ``Com::Vmware::Content::Library::StorageBacking::Type``   enumerated type  specifies the type of the   :class:`Com::Vmware::Content::Library::StorageBacking`  .
        # @!attribute [rw] datastore
        #     @return [Com::Vmware::Content::Library::StorageBacking::Type]
        #     The content of the library will be stored on a datastore.
        #
        #      These are vCenter Server managed datastores, and are logical containers that hide specifics of each storage device. Depending on the type of storage you use, datastores can be backed by the following file system formats:
        #
        #       *  Virtual Machine File System (VMFS)
        #        *  Network File System (NFS)
        #
        #
        # @!attribute [rw] other
        #     @return [Com::Vmware::Content::Library::StorageBacking::Type]
        #     The content of the library will be stored on a remote file system.
        #
        #      Supports the following remote file systems:
        #
        #       *  NFS (on vCenter Server Appliance)
        #        *  SMB (on vCenter Server Appliance and vCenter Server for Windows)
        #
        #
        class Type < VAPI::Bindings::VapiEnum

            class << self
                # Holds (gets or creates) the binding type metadata for this enumeration type.
                # @scope class
                # @return [VAPI::Bindings::EnumType] the binding type
                def binding_type
                    @binding_type ||= VAPI::Bindings::EnumType.new(
                        'com.vmware.content.library.storage_backing.type',
                        Type)
                end

                # Converts from a string value (perhaps off the wire) to an instance
                # of this enum type.
                # @param value [String] the actual value of the enum instance
                # @return [Type] the instance found for the value, otherwise
                #         an unknown instance will be built for the value
                def from_string(value)
                    begin
                        const_get(value)
                    rescue NameError
                        Type.new('UNKNOWN', value)
                    end
                end
            end

            private

            # Constructs a new instance.
            # @param value [String] the actual value of the enum instance
            # @param unknown [String] the unknown value when value is 'UKNOWN'
            def initialize(value, unknown=nil)
                super(self.class.binding_type, value, unknown)
            end

            public

            # @!attribute [rw] datastore
            #     @return [Com::Vmware::Content::Library::StorageBacking::Type]
            #     The content of the library will be stored on a datastore.
            #
            #      These are vCenter Server managed datastores, and are logical containers that hide specifics of each storage device. Depending on the type of storage you use, datastores can be backed by the following file system formats:
            #
            #       *  Virtual Machine File System (VMFS)
            #        *  Network File System (NFS)
            #
            #
            DATASTORE = Type.new('DATASTORE')

            # @!attribute [rw] other
            #     @return [Com::Vmware::Content::Library::StorageBacking::Type]
            #     The content of the library will be stored on a remote file system.
            #
            #      Supports the following remote file systems:
            #
            #       *  NFS (on vCenter Server Appliance)
            #        *  SMB (on vCenter Server Appliance and vCenter Server for Windows)
            #
            #
            OTHER = Type.new('OTHER')

        end

    end

### - (`Com::Vmware::Content::Library::StorageBacking::Type`) type

Type ( ``DATASTORE``, ``OTHER`` ) of :class:`Com::Vmware::Content::Library::StorageBacking` . This field must be provided for the ``create`` method . It will always be present in the result of the ``get`` or ``list`` methods . It is not used for the ``update`` method .

Returns:

- (`Com::Vmware::Content::Library::StorageBacking::Type`)

    829
    830
    831
    832
    833
    834
    835
    836
    837
    838
    839
    840
    841
    842
    843
    844
    845
    846
    847
    848
    849
    850
    851
    852
    853
    854
    855
    856
    857
    858
    859
    860
    861
    862
    863
    864
    865
    866
    867
    868
    869
    870
    871
    872
    873
    874
    875
    876
    877
    878
    879
    880
    881
    882
    883
    884
    885
    886
    887
    888
    889
    890
    891
    892
    893
    894
    895
    896
    897
    898
    899
    900
    901
    902
    903
    904
    905
    906
    907
    908
    909
    910
    911
    912
    913
    914
    915
    916
    917
    918
    919
    920
    921
    922
    923
    924
    925
    926
    927
    928
    929
    930
    931
    932
    933
    934
    935
    936
    937
    938
    939
    940
    941
    942
    943
    944
    945
    946
    # File '/build/mts/release/bora-4571906/build/sdk/aggregated-bindings/ruby/com/vmware/content/library.rb', line 829

    class StorageBacking < 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.content.library.storage_backing',
                    {
                        'type' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::ReferenceType.new('Com::Vmware::Content::Library::StorageBacking::Type')),
                        'datastore_id' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::IdType.new),
                        'storage_uri' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::URIType.instance),
                    },
                    StorageBacking,
                    false,
                    nil)
            end
        end

        attr_accessor :type,
                      :datastore_id,
                      :storage_uri

        # 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

        # The  ``Com::Vmware::Content::Library::StorageBacking::Type``   enumerated type  specifies the type of the   :class:`Com::Vmware::Content::Library::StorageBacking`  .
        # @!attribute [rw] datastore
        #     @return [Com::Vmware::Content::Library::StorageBacking::Type]
        #     The content of the library will be stored on a datastore.
        #
        #      These are vCenter Server managed datastores, and are logical containers that hide specifics of each storage device. Depending on the type of storage you use, datastores can be backed by the following file system formats:
        #
        #       *  Virtual Machine File System (VMFS)
        #        *  Network File System (NFS)
        #
        #
        # @!attribute [rw] other
        #     @return [Com::Vmware::Content::Library::StorageBacking::Type]
        #     The content of the library will be stored on a remote file system.
        #
        #      Supports the following remote file systems:
        #
        #       *  NFS (on vCenter Server Appliance)
        #        *  SMB (on vCenter Server Appliance and vCenter Server for Windows)
        #
        #
        class Type < VAPI::Bindings::VapiEnum

            class << self
                # Holds (gets or creates) the binding type metadata for this enumeration type.
                # @scope class
                # @return [VAPI::Bindings::EnumType] the binding type
                def binding_type
                    @binding_type ||= VAPI::Bindings::EnumType.new(
                        'com.vmware.content.library.storage_backing.type',
                        Type)
                end

                # Converts from a string value (perhaps off the wire) to an instance
                # of this enum type.
                # @param value [String] the actual value of the enum instance
                # @return [Type] the instance found for the value, otherwise
                #         an unknown instance will be built for the value
                def from_string(value)
                    begin
                        const_get(value)
                    rescue NameError
                        Type.new('UNKNOWN', value)
                    end
                end
            end

            private

            # Constructs a new instance.
            # @param value [String] the actual value of the enum instance
            # @param unknown [String] the unknown value when value is 'UKNOWN'
            def initialize(value, unknown=nil)
                super(self.class.binding_type, value, unknown)
            end

            public

            # @!attribute [rw] datastore
            #     @return [Com::Vmware::Content::Library::StorageBacking::Type]
            #     The content of the library will be stored on a datastore.
            #
            #      These are vCenter Server managed datastores, and are logical containers that hide specifics of each storage device. Depending on the type of storage you use, datastores can be backed by the following file system formats:
            #
            #       *  Virtual Machine File System (VMFS)
            #        *  Network File System (NFS)
            #
            #
            DATASTORE = Type.new('DATASTORE')

            # @!attribute [rw] other
            #     @return [Com::Vmware::Content::Library::StorageBacking::Type]
            #     The content of the library will be stored on a remote file system.
            #
            #      Supports the following remote file systems:
            #
            #       *  NFS (on vCenter Server Appliance)
            #        *  SMB (on vCenter Server Appliance and vCenter Server for Windows)
            #
            #
            OTHER = Type.new('OTHER')

        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

    835
    836
    837
    838
    839
    840
    841
    842
    843
    844
    845
    846
    # File '/build/mts/release/bora-4571906/build/sdk/aggregated-bindings/ruby/com/vmware/content/library.rb', line 835

    def binding_type
        @binding_type ||= VAPI::Bindings::StructType.new(
            'com.vmware.content.library.storage_backing',
            {
                'type' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::ReferenceType.new('Com::Vmware::Content::Library::StorageBacking::Type')),
                'datastore_id' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::IdType.new),
                'storage_uri' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::URIType.instance),
            },
            StorageBacking,
            false,
            nil)
    end