Class List Method List File List

# Class: Com::Vmware::Content::Library::ItemModel

Inherits:
  VAPI::Bindings::VapiStruct
  - Object
  - VAPI::Bindings::VapiStruct
  - Com::Vmware::Content::Library::ItemModel
  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::ItemModel`` class represents a library item that has been stored in a library.

     A  ``Com::Vmware::Content::Library::ItemModel``  represents a single logical unit to be managed within a   :class:`Com::Vmware::Content::LibraryModel`  . Items contain the actual content of a library, and their placement within a library determines policies that affect that content such as publishing.

     A library item can have a specified type, indicated with the   :attr:`Com::Vmware::Content::Library::ItemModel.type`    field . This property is associated with a Content Library Service plugin that supports specific types and provides additional services. The types available in a specific Content Library Service can be queried using the   :class:`Com::Vmware::Content::Type`    class . Items of an unknown or unspecified type are treated generically. Because subscribed library catalogs are synchronized as is, subscribing to a remote Content Library Service effectively gives you a library with the functionality of the remote service's type adapter plugins, even if they are not installed locally.

     Items can be managed using the   :class:`Com::Vmware::Content::Library::Item`    class  and, for items in subscribed libraries, the   :class:`Com::Vmware::Content::Library::SubscribedItem`    class .

## Instance Attribute Summary (collapse)

- - (Boolean) cached

  The status that indicates whether the library item is on disk or not.

- - (String) content_version

  The version of the file content list of this library item.

- - (DateTime) creation_time

  The date and time when this library item was created.

- - (String) description

  A human-readable description for this library item.

- - (String) id

  A unique identifier for this library item.

- - (DateTime) last_modified_time

  The date and time when the metadata for this library item was last changed.

- - (DateTime) last_sync_time

  The date and time when this library item was last synchronized.

- - (String) library_id

  The identifier of the :class:`Com::Vmware::Content::LibraryModel` to which this item belongs.

- - (String) metadata_version

  A version number for the metadata of this library item.

- - (String) name

  A human-readable name for this library item.

- - (Fixnum) size

  The library item size, in bytes.

- - (String) source_id

  The identifier of the :class:`Com::Vmware::Content::Library::ItemModel` to which this item is synchronized to if the item belongs to a subscribed library.

- - (String) type

  An optional type identifier which indicates the type adapter plugin to use.

- - (String) version

  A version number that is updated on metadata changes.

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

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

  Constructs a new instance.

## Constructor Details

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

    614
    615
    616
    # File '/build/mts/release/bora-4571906/build/sdk/aggregated-bindings/ruby/com/vmware/content/library.rb', line 614

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

## Instance Attribute Details

### - (`Boolean`) cached

The status that indicates whether the library item is on disk or not. The library item is cached when all its files are on disk. This field is not used 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:

- (`Boolean`)

    565
    566
    567
    568
    569
    570
    571
    572
    573
    574
    575
    576
    577
    578
    579
    580
    581
    582
    583
    584
    585
    586
    587
    588
    589
    590
    591
    592
    593
    594
    595
    596
    597
    598
    599
    600
    601
    602
    603
    604
    605
    606
    607
    608
    609
    610
    611
    612
    613
    614
    615
    616
    617
    # File '/build/mts/release/bora-4571906/build/sdk/aggregated-bindings/ruby/com/vmware/content/library.rb', line 565

    class ItemModel < 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.item_model',
                    {
                        'id' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::IdType.new),
                        'library_id' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::IdType.new),
                        'content_version' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'creation_time' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::DateTimeType.instance),
                        'description' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'last_modified_time' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::DateTimeType.instance),
                        'last_sync_time' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::DateTimeType.instance),
                        'metadata_version' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'name' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'cached' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::BooleanType.instance),
                        'size' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::IntegerType.instance),
                        'type' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'version' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'source_id' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::IdType.new),
                    },
                    ItemModel,
                    true,
                    ["id"])
            end
        end

        attr_accessor :id,
                      :library_id,
                      :content_version,
                      :creation_time,
                      :description,
                      :last_modified_time,
                      :last_sync_time,
                      :metadata_version,
                      :name,
                      :cached,
                      :size,
                      :type,
                      :version,
                      :source_id

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

The version of the file content list of this library item. This field is not used 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:

- (`String`)

    565
    566
    567
    568
    569
    570
    571
    572
    573
    574
    575
    576
    577
    578
    579
    580
    581
    582
    583
    584
    585
    586
    587
    588
    589
    590
    591
    592
    593
    594
    595
    596
    597
    598
    599
    600
    601
    602
    603
    604
    605
    606
    607
    608
    609
    610
    611
    612
    613
    614
    615
    616
    617
    # File '/build/mts/release/bora-4571906/build/sdk/aggregated-bindings/ruby/com/vmware/content/library.rb', line 565

    class ItemModel < 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.item_model',
                    {
                        'id' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::IdType.new),
                        'library_id' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::IdType.new),
                        'content_version' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'creation_time' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::DateTimeType.instance),
                        'description' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'last_modified_time' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::DateTimeType.instance),
                        'last_sync_time' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::DateTimeType.instance),
                        'metadata_version' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'name' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'cached' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::BooleanType.instance),
                        'size' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::IntegerType.instance),
                        'type' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'version' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'source_id' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::IdType.new),
                    },
                    ItemModel,
                    true,
                    ["id"])
            end
        end

        attr_accessor :id,
                      :library_id,
                      :content_version,
                      :creation_time,
                      :description,
                      :last_modified_time,
                      :last_sync_time,
                      :metadata_version,
                      :name,
                      :cached,
                      :size,
                      :type,
                      :version,
                      :source_id

        # 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

### - (`DateTime`) creation_time

The date and time when this library item was created. This field is not used 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:

- (`DateTime`)

    565
    566
    567
    568
    569
    570
    571
    572
    573
    574
    575
    576
    577
    578
    579
    580
    581
    582
    583
    584
    585
    586
    587
    588
    589
    590
    591
    592
    593
    594
    595
    596
    597
    598
    599
    600
    601
    602
    603
    604
    605
    606
    607
    608
    609
    610
    611
    612
    613
    614
    615
    616
    617
    # File '/build/mts/release/bora-4571906/build/sdk/aggregated-bindings/ruby/com/vmware/content/library.rb', line 565

    class ItemModel < 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.item_model',
                    {
                        'id' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::IdType.new),
                        'library_id' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::IdType.new),
                        'content_version' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'creation_time' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::DateTimeType.instance),
                        'description' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'last_modified_time' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::DateTimeType.instance),
                        'last_sync_time' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::DateTimeType.instance),
                        'metadata_version' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'name' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'cached' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::BooleanType.instance),
                        'size' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::IntegerType.instance),
                        'type' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'version' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'source_id' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::IdType.new),
                    },
                    ItemModel,
                    true,
                    ["id"])
            end
        end

        attr_accessor :id,
                      :library_id,
                      :content_version,
                      :creation_time,
                      :description,
                      :last_modified_time,
                      :last_sync_time,
                      :metadata_version,
                      :name,
                      :cached,
                      :size,
                      :type,
                      :version,
                      :source_id

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

A human-readable description for this library item. This field is optional for the ``create`` method . Leaving it nil during creation will result in an empty string value. It will always be present in the result of a ``get`` or ``list`` method . It is optional for the ``update`` method . Leaving it nil during update indicates that the description remains unchanged.

Returns:

- (`String`)

    565
    566
    567
    568
    569
    570
    571
    572
    573
    574
    575
    576
    577
    578
    579
    580
    581
    582
    583
    584
    585
    586
    587
    588
    589
    590
    591
    592
    593
    594
    595
    596
    597
    598
    599
    600
    601
    602
    603
    604
    605
    606
    607
    608
    609
    610
    611
    612
    613
    614
    615
    616
    617
    # File '/build/mts/release/bora-4571906/build/sdk/aggregated-bindings/ruby/com/vmware/content/library.rb', line 565

    class ItemModel < 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.item_model',
                    {
                        'id' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::IdType.new),
                        'library_id' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::IdType.new),
                        'content_version' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'creation_time' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::DateTimeType.instance),
                        'description' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'last_modified_time' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::DateTimeType.instance),
                        'last_sync_time' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::DateTimeType.instance),
                        'metadata_version' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'name' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'cached' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::BooleanType.instance),
                        'size' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::IntegerType.instance),
                        'type' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'version' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'source_id' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::IdType.new),
                    },
                    ItemModel,
                    true,
                    ["id"])
            end
        end

        attr_accessor :id,
                      :library_id,
                      :content_version,
                      :creation_time,
                      :description,
                      :last_modified_time,
                      :last_sync_time,
                      :metadata_version,
                      :name,
                      :cached,
                      :size,
                      :type,
                      :version,
                      :source_id

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

A unique identifier for this library item. This field is not used for the ``create`` method . It will not be present in the result of the ``get`` or ``list`` methods . It is not used for the ``update`` method .

Returns:

- (`String`)

    565
    566
    567
    568
    569
    570
    571
    572
    573
    574
    575
    576
    577
    578
    579
    580
    581
    582
    583
    584
    585
    586
    587
    588
    589
    590
    591
    592
    593
    594
    595
    596
    597
    598
    599
    600
    601
    602
    603
    604
    605
    606
    607
    608
    609
    610
    611
    612
    613
    614
    615
    616
    617
    # File '/build/mts/release/bora-4571906/build/sdk/aggregated-bindings/ruby/com/vmware/content/library.rb', line 565

    class ItemModel < 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.item_model',
                    {
                        'id' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::IdType.new),
                        'library_id' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::IdType.new),
                        'content_version' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'creation_time' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::DateTimeType.instance),
                        'description' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'last_modified_time' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::DateTimeType.instance),
                        'last_sync_time' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::DateTimeType.instance),
                        'metadata_version' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'name' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'cached' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::BooleanType.instance),
                        'size' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::IntegerType.instance),
                        'type' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'version' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'source_id' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::IdType.new),
                    },
                    ItemModel,
                    true,
                    ["id"])
            end
        end

        attr_accessor :id,
                      :library_id,
                      :content_version,
                      :creation_time,
                      :description,
                      :last_modified_time,
                      :last_sync_time,
                      :metadata_version,
                      :name,
                      :cached,
                      :size,
                      :type,
                      :version,
                      :source_id

        # 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

### - (`DateTime`) last_modified_time

The date and time when the metadata for this library item was last changed.

     This  field  is affected by changes to the properties or file content of this item. It is not modified by changes to the tags of the item, or by changes to the library which owns this item.

This field is not used 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:

- (`DateTime`)

    565
    566
    567
    568
    569
    570
    571
    572
    573
    574
    575
    576
    577
    578
    579
    580
    581
    582
    583
    584
    585
    586
    587
    588
    589
    590
    591
    592
    593
    594
    595
    596
    597
    598
    599
    600
    601
    602
    603
    604
    605
    606
    607
    608
    609
    610
    611
    612
    613
    614
    615
    616
    617
    # File '/build/mts/release/bora-4571906/build/sdk/aggregated-bindings/ruby/com/vmware/content/library.rb', line 565

    class ItemModel < 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.item_model',
                    {
                        'id' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::IdType.new),
                        'library_id' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::IdType.new),
                        'content_version' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'creation_time' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::DateTimeType.instance),
                        'description' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'last_modified_time' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::DateTimeType.instance),
                        'last_sync_time' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::DateTimeType.instance),
                        'metadata_version' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'name' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'cached' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::BooleanType.instance),
                        'size' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::IntegerType.instance),
                        'type' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'version' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'source_id' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::IdType.new),
                    },
                    ItemModel,
                    true,
                    ["id"])
            end
        end

        attr_accessor :id,
                      :library_id,
                      :content_version,
                      :creation_time,
                      :description,
                      :last_modified_time,
                      :last_sync_time,
                      :metadata_version,
                      :name,
                      :cached,
                      :size,
                      :type,
                      :version,
                      :source_id

        # 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

### - (`DateTime`) last_sync_time

The date and time when this library item was last synchronized.

     This  field  is updated every time a synchronization is triggered on the library item, including when a synchronization is triggered on the library to which this item belongs. The value is  nil  for a library item that belongs to a local library.

This field is not used for the ``create`` method . It is optional in the result of the ``get`` or ``list`` methods . It is not used for the ``update`` method .

Returns:

- (`DateTime`)

    565
    566
    567
    568
    569
    570
    571
    572
    573
    574
    575
    576
    577
    578
    579
    580
    581
    582
    583
    584
    585
    586
    587
    588
    589
    590
    591
    592
    593
    594
    595
    596
    597
    598
    599
    600
    601
    602
    603
    604
    605
    606
    607
    608
    609
    610
    611
    612
    613
    614
    615
    616
    617
    # File '/build/mts/release/bora-4571906/build/sdk/aggregated-bindings/ruby/com/vmware/content/library.rb', line 565

    class ItemModel < 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.item_model',
                    {
                        'id' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::IdType.new),
                        'library_id' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::IdType.new),
                        'content_version' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'creation_time' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::DateTimeType.instance),
                        'description' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'last_modified_time' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::DateTimeType.instance),
                        'last_sync_time' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::DateTimeType.instance),
                        'metadata_version' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'name' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'cached' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::BooleanType.instance),
                        'size' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::IntegerType.instance),
                        'type' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'version' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'source_id' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::IdType.new),
                    },
                    ItemModel,
                    true,
                    ["id"])
            end
        end

        attr_accessor :id,
                      :library_id,
                      :content_version,
                      :creation_time,
                      :description,
                      :last_modified_time,
                      :last_sync_time,
                      :metadata_version,
                      :name,
                      :cached,
                      :size,
                      :type,
                      :version,
                      :source_id

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

The identifier of the :class:`Com::Vmware::Content::LibraryModel` to which this item belongs. 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:

- (`String`)

    565
    566
    567
    568
    569
    570
    571
    572
    573
    574
    575
    576
    577
    578
    579
    580
    581
    582
    583
    584
    585
    586
    587
    588
    589
    590
    591
    592
    593
    594
    595
    596
    597
    598
    599
    600
    601
    602
    603
    604
    605
    606
    607
    608
    609
    610
    611
    612
    613
    614
    615
    616
    617
    # File '/build/mts/release/bora-4571906/build/sdk/aggregated-bindings/ruby/com/vmware/content/library.rb', line 565

    class ItemModel < 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.item_model',
                    {
                        'id' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::IdType.new),
                        'library_id' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::IdType.new),
                        'content_version' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'creation_time' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::DateTimeType.instance),
                        'description' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'last_modified_time' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::DateTimeType.instance),
                        'last_sync_time' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::DateTimeType.instance),
                        'metadata_version' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'name' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'cached' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::BooleanType.instance),
                        'size' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::IntegerType.instance),
                        'type' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'version' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'source_id' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::IdType.new),
                    },
                    ItemModel,
                    true,
                    ["id"])
            end
        end

        attr_accessor :id,
                      :library_id,
                      :content_version,
                      :creation_time,
                      :description,
                      :last_modified_time,
                      :last_sync_time,
                      :metadata_version,
                      :name,
                      :cached,
                      :size,
                      :type,
                      :version,
                      :source_id

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

A version number for the metadata of this library item.

     This value is incremented with each change to the metadata of this item. Changes to name, description, and so on will increment this value. The value is not incremented by changes to the content or tags of the item or the library which owns it.

This field is not used 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:

- (`String`)

    565
    566
    567
    568
    569
    570
    571
    572
    573
    574
    575
    576
    577
    578
    579
    580
    581
    582
    583
    584
    585
    586
    587
    588
    589
    590
    591
    592
    593
    594
    595
    596
    597
    598
    599
    600
    601
    602
    603
    604
    605
    606
    607
    608
    609
    610
    611
    612
    613
    614
    615
    616
    617
    # File '/build/mts/release/bora-4571906/build/sdk/aggregated-bindings/ruby/com/vmware/content/library.rb', line 565

    class ItemModel < 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.item_model',
                    {
                        'id' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::IdType.new),
                        'library_id' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::IdType.new),
                        'content_version' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'creation_time' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::DateTimeType.instance),
                        'description' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'last_modified_time' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::DateTimeType.instance),
                        'last_sync_time' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::DateTimeType.instance),
                        'metadata_version' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'name' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'cached' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::BooleanType.instance),
                        'size' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::IntegerType.instance),
                        'type' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'version' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'source_id' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::IdType.new),
                    },
                    ItemModel,
                    true,
                    ["id"])
            end
        end

        attr_accessor :id,
                      :library_id,
                      :content_version,
                      :creation_time,
                      :description,
                      :last_modified_time,
                      :last_sync_time,
                      :metadata_version,
                      :name,
                      :cached,
                      :size,
                      :type,
                      :version,
                      :source_id

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

A human-readable name for this library item.

     The name may not be  nil  or an empty string. The name does not have to be unique, even within the same library.

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 optional for the ``update`` method .

Returns:

- (`String`)

    565
    566
    567
    568
    569
    570
    571
    572
    573
    574
    575
    576
    577
    578
    579
    580
    581
    582
    583
    584
    585
    586
    587
    588
    589
    590
    591
    592
    593
    594
    595
    596
    597
    598
    599
    600
    601
    602
    603
    604
    605
    606
    607
    608
    609
    610
    611
    612
    613
    614
    615
    616
    617
    # File '/build/mts/release/bora-4571906/build/sdk/aggregated-bindings/ruby/com/vmware/content/library.rb', line 565

    class ItemModel < 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.item_model',
                    {
                        'id' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::IdType.new),
                        'library_id' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::IdType.new),
                        'content_version' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'creation_time' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::DateTimeType.instance),
                        'description' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'last_modified_time' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::DateTimeType.instance),
                        'last_sync_time' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::DateTimeType.instance),
                        'metadata_version' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'name' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'cached' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::BooleanType.instance),
                        'size' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::IntegerType.instance),
                        'type' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'version' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'source_id' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::IdType.new),
                    },
                    ItemModel,
                    true,
                    ["id"])
            end
        end

        attr_accessor :id,
                      :library_id,
                      :content_version,
                      :creation_time,
                      :description,
                      :last_modified_time,
                      :last_sync_time,
                      :metadata_version,
                      :name,
                      :cached,
                      :size,
                      :type,
                      :version,
                      :source_id

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

The library item size, in bytes. The size is the sum of the size used on the storage backing for all the files in the item. When the library item is not cached, the size is 0. This field is not used for the ``create`` method . It is optional in the result of the ``get`` or ``list`` methods . It is not used for the ``update`` method .

Returns:

- (`Fixnum`)

    565
    566
    567
    568
    569
    570
    571
    572
    573
    574
    575
    576
    577
    578
    579
    580
    581
    582
    583
    584
    585
    586
    587
    588
    589
    590
    591
    592
    593
    594
    595
    596
    597
    598
    599
    600
    601
    602
    603
    604
    605
    606
    607
    608
    609
    610
    611
    612
    613
    614
    615
    616
    617
    # File '/build/mts/release/bora-4571906/build/sdk/aggregated-bindings/ruby/com/vmware/content/library.rb', line 565

    class ItemModel < 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.item_model',
                    {
                        'id' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::IdType.new),
                        'library_id' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::IdType.new),
                        'content_version' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'creation_time' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::DateTimeType.instance),
                        'description' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'last_modified_time' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::DateTimeType.instance),
                        'last_sync_time' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::DateTimeType.instance),
                        'metadata_version' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'name' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'cached' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::BooleanType.instance),
                        'size' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::IntegerType.instance),
                        'type' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'version' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'source_id' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::IdType.new),
                    },
                    ItemModel,
                    true,
                    ["id"])
            end
        end

        attr_accessor :id,
                      :library_id,
                      :content_version,
                      :creation_time,
                      :description,
                      :last_modified_time,
                      :last_sync_time,
                      :metadata_version,
                      :name,
                      :cached,
                      :size,
                      :type,
                      :version,
                      :source_id

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

The identifier of the :class:`Com::Vmware::Content::Library::ItemModel` to which this item is synchronized to if the item belongs to a subscribed library. The value is nil for a library item that belongs to a local library. This field is not used for the ``create`` method . It is optional in the result of the ``get`` or ``list`` methods . It is not used for the ``update`` method .

Returns:

- (`String`)

    565
    566
    567
    568
    569
    570
    571
    572
    573
    574
    575
    576
    577
    578
    579
    580
    581
    582
    583
    584
    585
    586
    587
    588
    589
    590
    591
    592
    593
    594
    595
    596
    597
    598
    599
    600
    601
    602
    603
    604
    605
    606
    607
    608
    609
    610
    611
    612
    613
    614
    615
    616
    617
    # File '/build/mts/release/bora-4571906/build/sdk/aggregated-bindings/ruby/com/vmware/content/library.rb', line 565

    class ItemModel < 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.item_model',
                    {
                        'id' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::IdType.new),
                        'library_id' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::IdType.new),
                        'content_version' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'creation_time' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::DateTimeType.instance),
                        'description' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'last_modified_time' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::DateTimeType.instance),
                        'last_sync_time' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::DateTimeType.instance),
                        'metadata_version' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'name' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'cached' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::BooleanType.instance),
                        'size' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::IntegerType.instance),
                        'type' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'version' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'source_id' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::IdType.new),
                    },
                    ItemModel,
                    true,
                    ["id"])
            end
        end

        attr_accessor :id,
                      :library_id,
                      :content_version,
                      :creation_time,
                      :description,
                      :last_modified_time,
                      :last_sync_time,
                      :metadata_version,
                      :name,
                      :cached,
                      :size,
                      :type,
                      :version,
                      :source_id

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

An optional type identifier which indicates the type adapter plugin to use.

     This  field  may be set to a non-empty string value that corresponds to an identifier supported by a type adapter plugin present in the Content Library Service. A type adapter plugin, if present for the specified type, can provide additional information and services around the item content. A type adapter can guide the upload process by creating file entries that are in need of being uploaded to complete an item.

     The types and plugins supported by the Content Library Service can be queried using the   :class:`Com::Vmware::Content::Type`    class .

This field is optional for the ``create`` and ``update`` methods . During creation, if the type is left unspecified, or if the type is specified but does not have a corresponding type support plugin, then the type of the library item is considered to be generic and all data is treated as generic files. During update, if the type is not specified, then it is not updated.

Returns:

- (`String`)

    565
    566
    567
    568
    569
    570
    571
    572
    573
    574
    575
    576
    577
    578
    579
    580
    581
    582
    583
    584
    585
    586
    587
    588
    589
    590
    591
    592
    593
    594
    595
    596
    597
    598
    599
    600
    601
    602
    603
    604
    605
    606
    607
    608
    609
    610
    611
    612
    613
    614
    615
    616
    617
    # File '/build/mts/release/bora-4571906/build/sdk/aggregated-bindings/ruby/com/vmware/content/library.rb', line 565

    class ItemModel < 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.item_model',
                    {
                        'id' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::IdType.new),
                        'library_id' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::IdType.new),
                        'content_version' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'creation_time' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::DateTimeType.instance),
                        'description' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'last_modified_time' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::DateTimeType.instance),
                        'last_sync_time' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::DateTimeType.instance),
                        'metadata_version' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'name' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'cached' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::BooleanType.instance),
                        'size' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::IntegerType.instance),
                        'type' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'version' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'source_id' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::IdType.new),
                    },
                    ItemModel,
                    true,
                    ["id"])
            end
        end

        attr_accessor :id,
                      :library_id,
                      :content_version,
                      :creation_time,
                      :description,
                      :last_modified_time,
                      :last_sync_time,
                      :metadata_version,
                      :name,
                      :cached,
                      :size,
                      :type,
                      :version,
                      :source_id

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

A version number that is updated on metadata changes. This value is used to validate update requests to provide optimistic concurrency of changes.

     This value represents a number that is incremented every time library item properties, such as name or description, are changed. It is not incremented by changes to the file content of the library item, including adding or removing files. It is also not affected by tagging the library item.

This field is not used for the ``create`` method . It will always be present in the result of a ``get`` or ``list`` method . It is optional for the ``update`` method . Leaving it nil during update indicates that you do not need to detect concurrent updates.

Returns:

- (`String`)

    565
    566
    567
    568
    569
    570
    571
    572
    573
    574
    575
    576
    577
    578
    579
    580
    581
    582
    583
    584
    585
    586
    587
    588
    589
    590
    591
    592
    593
    594
    595
    596
    597
    598
    599
    600
    601
    602
    603
    604
    605
    606
    607
    608
    609
    610
    611
    612
    613
    614
    615
    616
    617
    # File '/build/mts/release/bora-4571906/build/sdk/aggregated-bindings/ruby/com/vmware/content/library.rb', line 565

    class ItemModel < 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.item_model',
                    {
                        'id' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::IdType.new),
                        'library_id' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::IdType.new),
                        'content_version' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'creation_time' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::DateTimeType.instance),
                        'description' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'last_modified_time' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::DateTimeType.instance),
                        'last_sync_time' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::DateTimeType.instance),
                        'metadata_version' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'name' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'cached' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::BooleanType.instance),
                        'size' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::IntegerType.instance),
                        'type' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'version' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                        'source_id' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::IdType.new),
                    },
                    ItemModel,
                    true,
                    ["id"])
            end
        end

        attr_accessor :id,
                      :library_id,
                      :content_version,
                      :creation_time,
                      :description,
                      :last_modified_time,
                      :last_sync_time,
                      :metadata_version,
                      :name,
                      :cached,
                      :size,
                      :type,
                      :version,
                      :source_id

        # 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

    571
    572
    573
    574
    575
    576
    577
    578
    579
    580
    581
    582
    583
    584
    585
    586
    587
    588
    589
    590
    591
    592
    593
    # File '/build/mts/release/bora-4571906/build/sdk/aggregated-bindings/ruby/com/vmware/content/library.rb', line 571

    def binding_type
        @binding_type ||= VAPI::Bindings::StructType.new(
            'com.vmware.content.library.item_model',
            {
                'id' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::IdType.new),
                'library_id' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::IdType.new),
                'content_version' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                'creation_time' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::DateTimeType.instance),
                'description' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                'last_modified_time' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::DateTimeType.instance),
                'last_sync_time' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::DateTimeType.instance),
                'metadata_version' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                'name' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                'cached' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::BooleanType.instance),
                'size' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::IntegerType.instance),
                'type' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                'version' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::StringType.instance),
                'source_id' => VAPI::Bindings::OptionalType.new(VAPI::Bindings::IdType.new),
            },
            ItemModel,
            true,
            ["id"])
    end